pdftract/crates/pdftract-core/src
jedarden a237397a34 feat(pdftract-4j0ub): implement Glyph struct and emit_glyph function
- Add Glyph struct with 10 fields per plan spec (Phase 3.2)
- Implement emit_glyph() that composes Glyph from GraphicsState + font metrics
- Add new_raw_glyph_list() helper with 4096 capacity pre-allocation
- Use Box<Color> to optimize struct size to 64 bytes
- Add comprehensive tests for all acceptance criteria
- Re-export Glyph, emit_glyph, new_raw_glyph_list from lib.rs

Closes: pdftract-4j0ub
2026-05-26 17:55:12 -04:00
..
annotation feat(pdftract-4hle): implement 7.6.4 links + annotations JSON output 2026-05-25 07:44:12 -04:00
attachment feat(pdftract-3j2u): implement 50 MB size limit + base64 encoding for attachments 2026-05-25 11:42:28 -04:00
cache feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
fingerprint feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
font feat(pdftract-2iur): implement nearest-neighbor scanner with Hamming distance and frequency tie-break 2026-05-24 06:57:27 -04:00
forms feat(pdftract-5qca): implement form_fields JSON output + schema integration 2026-05-24 14:36:03 -04:00
glyph feat(pdftract-4j0ub): implement Glyph struct and emit_glyph function 2026-05-26 17:55:12 -04:00
layout fix(pdftract-tuky): fix color clamping test and verify Phase 3.1 coordinator 2026-05-26 16:36:01 -04:00
ocr/preprocessing feat(pdftract-3h9xo): implement threads JSON output + schema integration 2026-05-25 13:40:15 -04:00
output fix(pdftract-31bum): implement smarter backpressure for OutOfOrderBuffer 2026-05-26 17:15:06 -04:00
parser fix(bf-3gmkz): implement XrefResolver::resolve by using resolve_with_source 2026-05-26 01:31:57 -04:00
profiles feat(pdftract-64p5): implement classify CLI subcommand and --auto flag 2026-05-24 15:16:56 -04:00
receipts feat(pdftract-4yspv): implement OCR receipt fallback 2026-05-25 19:53:42 -04:00
render feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
schema test(pdftract-4c8qu): add page_label tests and fix JSON schema 2026-05-25 14:43:31 -04:00
signature feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
table feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
threads feat(pdftract-3h9xo): implement threads JSON output + schema integration 2026-05-25 13:40:15 -04:00
atomic_file_writer.rs feat(pdftract-68wfa): implement AtomicFileWriter for atomic file writes 2026-05-24 13:02:37 -04:00
audit.rs fix: resolve compilation errors across codebase 2026-05-25 08:38:04 -04:00
classify.rs feat(pdftract-4t0jk): implement page_type_string mapping table 2026-05-25 01:19:58 -04:00
confidence.rs fix: resolve compilation errors across codebase 2026-05-25 08:38:04 -04:00
content_stream.rs feat(pdftract-1kdzu): implement TJ operator with kerning and word boundary detection 2026-05-26 16:44:05 -04:00
diagnostics.rs feat(pdftract-2u6q2): implement diagnostic infrastructure 2026-05-25 13:16:38 -04:00
document.rs fix(bf-3gmkz): implement XrefResolver::resolve by using resolve_with_source 2026-05-26 01:31:57 -04:00
dpi.rs feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
extract.rs fix(bf-3gmkz): implement XrefResolver::resolve by using resolve_with_source 2026-05-26 01:31:57 -04:00
graphics_state.rs feat(pdftract-1kdzu): implement TJ operator with kerning and word boundary detection 2026-05-26 16:44:05 -04:00
hybrid.rs feat(pdftract-5qj50): implement mojibake detection and repair via encoding_rs 2026-05-24 17:01:53 -04:00
javascript.rs feat(pdftract-2r11u): implement TH-04 JavaScript detection 2026-05-25 14:04:29 -04:00
lib.rs feat(pdftract-4j0ub): implement Glyph struct and emit_glyph function 2026-05-26 17:55:12 -04:00
markdown.rs feat(pdftract-3h9xo): implement threads JSON output + schema integration 2026-05-25 13:40:15 -04:00
ocr.rs feat(pdftract-6dki1): implement histogram stretch contrast normalization 2026-05-24 10:30:20 -04:00
options.rs feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
page_class.rs fix(pdftract-tuky): fix color clamping test and verify Phase 3.1 coordinator 2026-05-26 16:36:01 -04:00
preprocess.rs feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
render.rs feat(pdftract-axcri): record inline images as ImageXObject entries 2026-05-24 07:41:50 -04:00
semaphore.rs feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
span_flags.rs feat(pdftract-cbrbg): implement span flag detector for Phase 4.1 2026-05-24 07:28:25 -04:00
text.rs feat(pdftract-529te): implement per-page block serializer 2026-05-25 12:21:07 -04:00
url_validation.rs feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
word_boundary.rs feat(pdftract-h2s0z): implement adaptive word boundary detector 2026-05-24 06:06:56 -04:00