raw derive PDF: Gliederung mit Seite und Zeile im Kopf, Hinterlegungen, Durchstreichungen und abweichende Textfarben als Auszeichnung im Text, Bildseiten als CHECK (#225); 10.1.0-beta.1
Files changed: - CHANGES.md - VERSION - docs/reference/commands/raw-material-and-uploads.md - raw/CONTRACT.md - tools/CONTRACT.md - tools/README.md - tools/chemenu/commands/raw/derive.py - tools/chemenu/filters/__init__.py - tools/chemenu/filters/pdf.py - tools/chemenu/filters/pdf_layout.py - tools/chemenu/tests/binary_formats.py - tools/chemenu/tests/test_raw_derive_binary.py - tools/requirements.txt Co-Authored-By: Claude Code <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01SnAJ7Z3CpVD3PRbN73QtU2
This commit is contained in:
1 parent
f2f251ff90
commit
a829560bf2
13 files changed
+860
-22
No files matched your search
@@ -358,17 +358,26 @@ def _derive_next(target: Path) -> str:
|
||||
"reads the format, its version.",
|
||||
"Formats: web pages (`.html`), Word (`.docx`), PowerPoint (`.pptx`), Excel (`.xlsx`, "
|
||||
"`.xlsm`), e-mail (`.eml`) and ZIP archives (`.zip`), read with the standard library "
|
||||
"only; PDF (`.pdf`, `pypdf`) and Outlook messages (`.msg`, `olefile`), each read by a "
|
||||
"package in `tools/requirements.txt` that is imported only when such a file is derived. "
|
||||
"A missing package refuses that format alone, with the preflight hint; `wikitool "
|
||||
"doctor` shows one `import-filter-<name>` line per package-backed format. A PDF gets "
|
||||
"`<!-- page N -->` markers and a WARN when it yields almost no text (a scan; there is "
|
||||
"no OCR); an encrypted PDF is refused. A `.msg` is a container like an `.eml`; an "
|
||||
"only; PDF (`.pdf`, `pypdf` and `pdfminer.six`) and Outlook messages (`.msg`, `olefile`), each "
|
||||
"read by packages in `tools/requirements.txt` that are imported only when such a file is "
|
||||
"derived. A missing package refuses that format alone, with the preflight hint; "
|
||||
"`wikitool doctor` shows one `import-filter-<name>` line per package-backed format. A "
|
||||
"PDF gets `<!-- page N -->` markers and a WARN when it yields almost no text (a scan; "
|
||||
"there is no OCR); an encrypted PDF is refused. A `.msg` is a container like an `.eml`; an "
|
||||
"embedded message inside it is named, not read. The text of a mail (`.eml` and `.msg` "
|
||||
"alike) is its plain text, unless that is under 10% of the length of the HTML text - a "
|
||||
"\"plain text version not available\" placeholder - in which case it is the HTML text "
|
||||
"and a WARN names both lengths. The other version of the text in a "
|
||||
"`multipart/alternative` is not an attachment.",
|
||||
"A PDF also gets, where the document has them: an `outline` header field (one entry per "
|
||||
"outline item: title, level, page and the line of `derived.md` where that page's "
|
||||
"marker is), and markings in the text that follow the visible form only - `<mark "
|
||||
"data-farbe=\"<name>\">…</mark>` for text over a coloured background, `*…*` for text in a "
|
||||
"colour other than the running text that is not under a link, `~~…~~` for strike-through. "
|
||||
"A `markings` header field is the legend (form, colour, places, pages); removing the "
|
||||
"markings gives the text the PDF has without them. A CHECK names the pages with images, "
|
||||
"which the text does not contain. A PDF without outline, markings and images is derived "
|
||||
"as before.",
|
||||
"A workbook (`.xlsx`, `.xlsm`) gets its cells as files: beside its `.md` a folder "
|
||||
"`<md stem>.sheets/` (`derived.sheets/` for a single file) holds one `NN-<sheet>.tsv` "
|
||||
"per sheet - tab-separated per RFC 4180, UTF-8, row 1 of the file is row 1 of the sheet "
|
||||
|
||||
Reference in new issue
Block a user