Skip to content

Fix .NET inline layout with engine 2.5.10 - #7

Merged
krflol merged 2 commits into
masterfrom
fix/inline-layout-2510
Oct 6, 2026
Merged

krflol merged 2 commits into
masterfrom
fix/inline-layout-2510

Conversation

@krflol

@krflol krflol commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

FullBleed.DotNet 0.1.4 can place text after a styled inline span above or over the preceding text, and can wrap tracked flex/inline-block labels despite available room. Upgrade the pinned engine to 2.5.10 and prepare NuGet 0.1.5 with the same managed API and native ABI.

The package consumer now renders 54 layout fixtures through ordinary, fixed, throughput-reflow, and compact-reflow paths. Independent PDF readers check text and physical word positions; CI compares the assembled package's output on .NET 8/9/10 across Windows x64, Linux x64, and both macOS architectures. All fixture PDFs and independent PDFium renders must match across those consumers. Native previews must match across platforms for all 46 embedded-font inline fixtures; the 8 unembedded Helvetica/Times previews use the engine's existing host font fallbacks and must match across .NET versions within each platform. Font resources are inspected to enforce that distinction, and the preview limitation is documented.

Validation:

  • Local native build, formatting, Clippy, 3 native tests, and 18 managed tests including the CLI lane pass.
  • An isolated consumer of the packed Windows package passes all 54 layout cases, 22 font-family cases, and 6 document/font fixtures.
  • The final 18-job CI run passes, including all 12 isolated consumers and both published-package negative controls. The downloaded package, source tree, native architectures, and retained evidence were audited.
  • The SHA-256-pinned public 0.1.4 package fails the 44 expected layout cases. Eight unaffected wrapping controls remain byte-identical; ten controls preserve text.
  • The older 0.1.3 font-family negative control still fails. Fixed/reflow/Unicode fixtures retain their bytes and pixels.
  • The invoice, bold text, and two untracked sizing controls have small intentional spacing changes. Their independently checked and visually reviewed PDFs/previews are pinned in a versioned baseline, which CI does not regenerate.

Affected templates can change line breaks and page layout. Claims remain limited to these retained fixtures; this is not a general CSS-parity or standards-conformance claim. All release publication remains gated by the complete CI matrix.

@krflol
krflol merged commit bd6a1d0 into master Oct 6, 2026
18 checks 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