Skip to content

Fix CJK PDF round-trip font handling - #1

Merged
loong10k merged 16 commits into
feature/3.0.xfrom
fix/ci-cjk-font-20261031
Oct 31, 2026
Merged

loong10k merged 16 commits into
feature/3.0.xfrom
fix/ci-cjk-font-20261031

Conversation

@loong10k

@loong10k loong10k commented Oct 31, 2026 •

Copy link
Copy Markdown
Collaborator

CI installs fonts-droid-fallback and exposes /usr/share/fonts/truetype/droid/DroidSansFallbackFull.ttf as EASYPDF_CJK_FONT. HtmlPdfConverter registers that configured font and creates a document-scoped iText FontProvider from its shared font set.

Layout regression correction: remove the whole-page aligned-column merge, which incorrectly converted three-line reading columns into tables and counted font runs as rows. Keep independent columns; apply 1pt tolerance only to the estimated within-line cell-gap boundary. Restore the original auto-width table/summary fixtures; retain a wide-table case with explicit columnGapPt configuration. Add three-line column and multiple-font-run reading-order regressions.

Red evidence: CI run 41219539796 at 2ea920c failed precisely the two new column regressions and restored auto-width table case. Green evidence: CI run https://github.com/easy-4-java/easypdf/actions/runs/41219759465 at db27b05 completed successfully: full clean verify, 174 tests (122 XHTML), zero failures/errors/skips. The original Chinese/Latin round-trip test and coverage configuration remain unchanged. Existing JaCoCo missing-exec/report warnings mean coverage is not certified. Local cloud environment has no Maven/compiler; validation uses the existing JDK 21 GitHub Actions full clean verify. Draft pending independent review.

@loong10k loong10k changed the title Install CJK font for PDF round-trip CI test Fix CJK PDF round-trip font handling Oct 31, 2026
@loong10k
loong10k marked this pull request as ready for review October 31, 2026 16:46
@chatgpt-codex-connector

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ⚠️ Failed 2026-10-31T16:46:21.019530Z
We couldn’t complete this review. Comment @codex review to try again.
db27b05 Draft marked ready
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@loong10k
loong10k merged commit a267c94 into feature/3.0.x Oct 31, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant