diff --git a/docling_core/transforms/serializer/markdown.py b/docling_core/transforms/serializer/markdown.py index 6292761d..79429535 100644 --- a/docling_core/transforms/serializer/markdown.py +++ b/docling_core/transforms/serializer/markdown.py @@ -122,6 +122,7 @@ class MarkdownParams(CommonParams): ) orig_list_item_marker_mode: OrigListItemMarkerMode = OrigListItemMarkerMode.AUTO ensure_valid_list_item_marker: bool = True + disable_table_numparse: bool = False class MarkdownTextSerializer(BaseModel, BaseTextSerializer): @@ -422,15 +423,12 @@ def serialize( for row in item.data.grid ] if len(rows) > 0: - try: - table_text = tabulate(rows[1:], headers=rows[0], tablefmt="github") - except ValueError: - table_text = tabulate( - rows[1:], - headers=rows[0], - tablefmt="github", - disable_numparse=True, - ) + table_text = tabulate( + rows[1:], + headers=rows[0], + tablefmt="github", + disable_numparse=params.disable_table_numparse, + ) else: table_text = "" if table_text: diff --git a/docling_core/types/doc/document.py b/docling_core/types/doc/document.py index 626a9734..fd658b31 100644 --- a/docling_core/types/doc/document.py +++ b/docling_core/types/doc/document.py @@ -4776,6 +4776,7 @@ def export_to_markdown( # noqa: C901 allowed_meta_names: Optional[set[str]] = None, blocked_meta_names: Optional[set[str]] = None, mark_meta: bool = False, + disable_table_numparse: bool = False, ) -> str: r"""Serialize to Markdown. @@ -4867,6 +4868,7 @@ def export_to_markdown( # noqa: C901 allowed_meta_names=allowed_meta_names, blocked_meta_names=blocked_meta_names or set(), mark_annotations=mark_annotations, + disable_table_numparse=disable_table_numparse, ), ) ser_res = serializer.serialize()