合并后的文本块
| 20 | |
| 21 | @dataclass |
| 22 | class MergedBlock: |
| 23 | """合并后的文本块""" |
| 24 | text: str |
| 25 | polygon: List[Tuple[float, float]] |
| 26 | confidence: float = 1.0 |
| 27 | font_size_px: float = 12.0 |
| 28 | is_latex: bool = False |
| 29 | source: str = "layout" # "layout" or "pix2text" |
| 30 | # 字体相关(从 layout OCR 继承) |
| 31 | font_name: Optional[str] = None |
| 32 | font_style: Optional[str] = None |
| 33 | font_weight: Optional[str] = None |
| 34 | font_color: Optional[str] = None |
| 35 | is_bold: bool = False |
| 36 | is_italic: bool = False |
| 37 | spans: List[dict] = field(default_factory=list) |
| 38 | |
| 39 | |
| 40 | class FormulaProcessor: |
no outgoing calls
no test coverage detected