pub struct RawTextItem {
pub text: String,
pub bbox: Option<Rect>,
pub level: Option<u8>,
pub list: Option<bool>,
pub table: Option<TableData>,
pub chart: bool,
pub image: Option<RawImage>,
pub meta: BTreeMap<String, MetaValue>,
}Expand description
解析产出的原始文本项:text + 可选 bbox。
Fields§
§text: String§bbox: Option<Rect>§level: Option<u8>标题层级(1–6):Some 表示这一项是标题(ODF text:outline-level 等),
None 表示普通段落。插件 assemble 据此产出 BlockKind::Heading。
list: Option<bool>列表项标记:Some(ordered) 表示这一项是列表(docx w:numPr 编号段落),
ordered 来自 numbering 定义(bullet / none 为无序)。插件 assemble
据此产出 BlockKind::List。标题优先于列表(两个字段都有值时按标题处理)。
table: Option<TableData>表格项:Some(rows) 表示这一项是表格(对齐 Python item kind table)。
text 同时保留展开文本(行内 , 连接、行间 \n),页文本层用它;
插件 assemble 据此产出 BlockKind::Table。表格优先于标题/列表。
chart: bool图表项(pptx c:chart 的图表内文本):assemble 产出 BlockKind::Chart。
优先级:表格 > 图表 > 标题 > 列表 > 段落。
image: Option<RawImage>图片项(对齐 Python item kind image):Some 时这一项只产
BlockKind::Image(content = ocr_text 或空串),text 恒为空、不进页文本。
之所以把图片塞进 item 列表而不是只放 RawPage.images:Docx/Pptx 的图片块
在文档里是有位置的(Python 把 ("image", im) 追加在同段落 item 之后),
只保留 images 会让块顺序无法还原。
meta: BTreeMap<String, MetaValue>块级元信息(xlsx merges / truncated 等):assemble 原样搬到 Block.meta,
与 Python 在 page.meta 上挂的同类信息对齐。