diff --git a/docling_core/transforms/serializer/markdown.py b/docling_core/transforms/serializer/markdown.py index 0702241b..22a1d041 100644 --- a/docling_core/transforms/serializer/markdown.py +++ b/docling_core/transforms/serializer/markdown.py @@ -102,6 +102,7 @@ class MarkdownParams(CommonParams): ) orig_list_item_marker_mode: OrigListItemMarkerMode = OrigListItemMarkerMode.AUTO ensure_valid_list_item_marker: bool = True + disable_table_numparse: bool = False format_code_blocks: bool = Field( default=True, description="Whether to wrap code items in markdown code block formatting (```). ", @@ -416,15 +417,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 a2ffab45..b56c1c16 100644 --- a/docling_core/types/doc/document.py +++ b/docling_core/types/doc/document.py @@ -5032,6 +5032,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. @@ -5127,6 +5128,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()