3 hours ago
xberg

v1.0.13

[1.0.13] - 2026-08-04

Fixed

  • 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_used and 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 N and 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>Beta was extracted as AlphaBeta). Tab-stop definitions remain invisible. (#1377)
  • The Swift package builds and publishes again. The cross-compiled desktop xberg-ffi dependency 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)
3 hours ago
kreuzberg

v1.0.13

[1.0.13] - 2026-08-04

Fixed

  • 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_used and 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 N and 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>Beta was extracted as AlphaBeta). Tab-stop definitions remain invisible. (#1377)
  • The Swift package builds and publishes again. The cross-compiled desktop xberg-ffi dependency 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)
9 hours ago
takumi

takumi-html@0.1.19

Published takumi-html@0.1.19.

9 hours ago
takumi

takumi-raster@0.4.7

Published takumi-raster@0.4.7.

9 hours ago
takumi

takumi-pdf@0.1.2

Published takumi-pdf@0.1.2.

9 hours ago
takumi

takumi-svg@0.3.6

Fill side border corners in vector backends

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.

9 hours ago
takumi

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
9 hours ago
takumi

takumi-core@0.13.0

Add corner-shape

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.

13 hours ago
takumi

takumi-pdf@0.1.1

Auto-height viewport

viewport.height is now optional. Omitting it sizes the single page to the laid-out content, like a thermal receipt.

Render SVG image sources

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.

Ship the tw prop type

Importing only takumi-pdf left JSX tw props failing to typecheck; the react module augmentation now ships with the package types.

15 hours ago
takumi

takumi-pdf@0.1.0

Publish takumi-pdf, the wasm PDF package

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.