v1.0.13
- OCR-backed PDF extraction now preserves geometry-derived document structure without requiring optional ML layout detection, including pages replaced by mixed native/OCR extraction, and keeps consecutive Tesseract paragraphs in their shared hOCR text area.
- PDF table reconstruction now rejects sparse, short-wide contact blocks that were previously misclassified as tables.
- Standalone-image Tesseract OCR now defaults to sparse-text segmentation, while cropped layout regions use single-block segmentation and explicit user settings remain unchanged. Vertical language packs such as Japanese (
jpn_vert) use vertical-block segmentation. - Standalone image extraction now reports successful OCR through
metadata.ocr_usedand the OCR extraction method, including layout-aware OCR results. - Tesseract now applies its default image preprocessing only to clean, near-white document pages; shadowed receipts and photographic images keep their source pixels, avoiding quality loss from destructive DPI upscaling, background normalization, sharpening, and grayscale conversion.
- Sparse, low-confidence standalone Tesseract results now retry the previous automatic page segmentation with explicit preprocessing and use it only when word confidence is consistently strong, recovering difficult receipts and scene text without replacing reliable sparse output.
- CSV and TSV plaintext now use the canonical table renderer instead of lossy
Row Nand header-value prose. - Extracted EML and MSG attachment text is now included in the parent document while the structured attachment children remain available.
- DOCX extraction now emits a tab character for an in-run
<w:tab/>instead of dropping it, so tab-separated fields — most visibly Word table-of-contents rows — no longer weld adjacent words together (Alpha<tab>Betawas extracted asAlphaBeta). Tab-stop definitions remain invisible. (#1377) - The Swift package builds and publishes again. The cross-compiled desktop
xberg-ffidependency no longer pulls in HEIC (libheif-sys, which has no cross-compile support) or the Candle OCR backends, which had broken Swift package publishing in 1.0.12. - The NuGet runtime packages for macOS and Linux (
osx-x64,osx-arm64,linux-x64,linux-arm64) now publish at the current version instead of being stuck at an older one; previously only the Windows runtime package was updated. (#1375) - The public in-browser (WASM) demo now attributes its file-size limit to the browser sandbox and points to the CLI and API for large or multi-page documents, instead of implying the document itself is at fault. (#1376)
v1.0.13
- OCR-backed PDF extraction now preserves geometry-derived document structure without requiring optional ML layout detection, including pages replaced by mixed native/OCR extraction, and keeps consecutive Tesseract paragraphs in their shared hOCR text area.
- PDF table reconstruction now rejects sparse, short-wide contact blocks that were previously misclassified as tables.
- Standalone-image Tesseract OCR now defaults to sparse-text segmentation, while cropped layout regions use single-block segmentation and explicit user settings remain unchanged. Vertical language packs such as Japanese (
jpn_vert) use vertical-block segmentation. - Standalone image extraction now reports successful OCR through
metadata.ocr_usedand the OCR extraction method, including layout-aware OCR results. - Tesseract now applies its default image preprocessing only to clean, near-white document pages; shadowed receipts and photographic images keep their source pixels, avoiding quality loss from destructive DPI upscaling, background normalization, sharpening, and grayscale conversion.
- Sparse, low-confidence standalone Tesseract results now retry the previous automatic page segmentation with explicit preprocessing and use it only when word confidence is consistently strong, recovering difficult receipts and scene text without replacing reliable sparse output.
- CSV and TSV plaintext now use the canonical table renderer instead of lossy
Row Nand header-value prose. - Extracted EML and MSG attachment text is now included in the parent document while the structured attachment children remain available.
- DOCX extraction now emits a tab character for an in-run
<w:tab/>instead of dropping it, so tab-separated fields — most visibly Word table-of-contents rows — no longer weld adjacent words together (Alpha<tab>Betawas extracted asAlphaBeta). Tab-stop definitions remain invisible. (#1377) - The Swift package builds and publishes again. The cross-compiled desktop
xberg-ffidependency no longer pulls in HEIC (libheif-sys, which has no cross-compile support) or the Candle OCR backends, which had broken Swift package publishing in 1.0.12. - The NuGet runtime packages for macOS and Linux (
osx-x64,osx-arm64,linux-x64,linux-arm64) now publish at the current version instead of being stuck at an older one; previously only the Windows runtime package was updated. (#1375) - The public in-browser (WASM) demo now attributes its file-size limit to the browser sandbox and points to the CLI and API for large or multi-page documents, instead of implying the document itself is at fault. (#1376)
takumi-html@0.1.19
Published takumi-html@0.1.19.
takumi-raster@0.4.7
Published takumi-raster@0.4.7.
takumi-pdf@0.1.2
Published takumi-pdf@0.1.2.
takumi-svg@0.3.6
With per-side border colors and rounded corners, the SVG and PDF backends left the corner arcs unpainted: side fills used straight-edged polygons that stop short of the curve. Sides now fill with the same contour-following polygons the raster backend uses.
takumi@2.5.6
- takumi-js@2.5.6
- @takumi-rs/core@2.5.6
- @takumi-rs/image-response@2.5.6
- @takumi-rs/helpers@2.5.6
- @takumi-rs/wasm@2.5.6
- takumi@2.5.6
takumi-core@0.13.0
corner-shape and its per-corner longhands render round, squircle, bevel, scoop, notch, square, and superellipse(<number>) corners, and interpolate in animations per the spec. The shape applies wherever border-radius does: borders, backgrounds, box shadows, masks, and overflow clipping. Corner curves use Chromium's superellipse approximation, so a squircle here matches one drawn by a browser.
takumi-pdf@0.1.1
viewport.height is now optional. Omitting it sizes the single page to the laid-out content, like a thermal receipt.
SVG images passed via images came out as blank space; the backend only embedded bitmap sources. SVG sources now rasterize at twice their displayed size and embed like other images.
Importing only takumi-pdf left JSX tw props failing to typecheck; the react module augmentation now ships with the package types.
takumi-pdf@0.1.0
render(jsx) turns a node tree or JSX into a paged PDF with selectable text and embedded subset fonts, on Node, Bun, and Cloudflare Workers. Options mirror Puppeteer's page.pdf(): size ("a4", "letter", { width, height }), landscape, per-side margins, and repeating header/footer bands with Chromium-style pageNumber/totalPages class hooks and CSS counter styles, while viewport renders a fixed single page instead. Fonts, images, and stylesheets round out the options.