bokuweb 2023-12-01 01:51:52 +09:00 committed by GitHub
parent b1eaee54a5
commit dcdb177a7b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
24 changed files with 40 additions and 20 deletions

View File

@ -4,6 +4,8 @@ use std::str::FromStr;
use xml::attribute::OwnedAttribute;
use xml::reader::{EventReader, XmlEvent};
use crate::SectionType;
use super::*;
fn read_page_size(attributes: &[OwnedAttribute]) -> Result<PageSize, ReaderError> {
@ -146,6 +148,13 @@ impl ElementReader for SectionProperty {
}
}
}
XMLElement::Type => {
if let Some(val) = read_val(&attributes) {
if let Ok(val) = SectionType::from_str(&val) {
sp.section_type = Some(val);
}
}
}
XMLElement::TitlePg => sp = sp.title_pg(),
_ => {}
}

View File

@ -157,6 +157,7 @@ pub enum XMLElement {
TitlePg,
EvenAndOddHeaders,
StructuredDataTag,
Type,
Unsupported,
}
@ -389,6 +390,7 @@ impl FromStr for XMLElement {
"titlePg" => Ok(XMLElement::TitlePg),
"evenAndOddHeaders" => Ok(XMLElement::EvenAndOddHeaders),
"sdt" => Ok(XMLElement::StructuredDataTag),
"type" => Ok(XMLElement::Type),
_ => Ok(XMLElement::Unsupported),
}
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,5 +1,12 @@
export type DocGridType = "default" | "lines" | "linesAndChars" | "snapToChars";
export type SectionType =
| "nextPage"
| "nextColumn"
| "continuous"
| "evenPage"
| "oddPage";
export type DocGridJSON = {
gridType: DocGridType;
linePitch: number | null;
@ -22,4 +29,5 @@ export type SectionPropertyJSON = {
};
columns: number;
docGrid?: DocGridJSON;
sectionType?: SectionType;
};

View File

@ -36393,6 +36393,7 @@ Object {
"orient": null,
"w": 11906,
},
"sectionType": "continuous",
"space": 425,
"textDirection": "lrTb",
"titlePg": false,