Repository navigation
test(qa): hold an icon laid over a card's corner in the DOCX fidelity corpus - #973
Merged
Merged
Conversation
… corpus A layer stack laying an 18pt icon over the top right corner of a card painted as a panel, with 14pt padding, joins the synthetic family of the fidelity corpus, between the document's longest paragraph and a paragraph under the card. Its baseline rows record the export as Word 16 and LibreOffice set it today. The stack is written as a band, and the band measures its space above and below to its first and last block written, through the card's padding, which the card writes again inside its cell: the card's text stands 14pt lower than the page sets it, and the paragraph under it 28pt lower. The icon is drawn from the page's edges, where the page draws it, and stays there when the text above the card is edited. A change that writes the band's space from the card's edges moves those lines nearer the page and rewrites the rows. The gate reads lines of text, so where the icon stands it does not see; the corpus class, the recipe and the CHANGELOG say so.
… the icon The recipe's passage on a band opened by a panel names the corpus document that holds the case. The gate reads lines of text, so it holds the card's lines and the paragraph under it, not where the icon stands; the passage now says so.
…rom CI The document's rows, as LibreOffice 24.2 on CI's Linux image measured them in this branch's first run (artifact docx-fidelity-40477924801), where the DOCX Fidelity job failed on this document alone, not yet in the baseline: the card's lines 13.98pt low and 14.10pt right of the page, the paragraph under it 27.98pt low. The other rows stay as recorded.
…hout "the gate" The recipe's sentence on the corpus document said what "the gate" does not see, a gate the recipe does not introduce. It now says the document holds its lines as they stand, not where the icon stands, and the paragraph's lines are reflowed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
A layer stack whose layers overlap is written as a band: its layers one after the other, with the page's space above and below the band. Where a painted section opens or closes the band, as a card under an icon laid over its corner does, that space is measured through the card's padding, which the card writes again inside its cell. Measured in Word 16 and LibreOffice, the export sets such a card and everything under it lower than the page, and leaves the icon where the page draws it, so it no longer stands on the card's corner and does not move when text above the card is edited.
The changes that anchor a drawing in its owner's paragraph and keep such a stack where the page sets it need a document built to show it, held by the fidelity gate in both editors: each such change then moves its lines nearer the page, and no change can move them further unnoticed. No document of the corpus has one. Searched over the 70 documents' layout: no layer stack or shape container lays a drawing on a painted layer holding text, and no band is opened or closed by a painted section holding text.
What changed
SyntheticDocxCorpustakesicon_over_card: a layer stack laying an 18pt icon over the top right corner of a card — a section painted as a panel with 14pt padding, holding one paragraph — between a paragraph above it and one under it, on a page 400 × 500pt, text in Lato, which the export embeds. The paragraph above is the document's longest, so the editing protocol'sdrawings-follow-text, which lengthens the longest paragraph, moves the card and checks the icon moves with it.word-windowsandlibreoffice-windowstake the document's rows alone, from the runs below; every other row stays as recorded.libreoffice-linuxtakes them from this PR's CI run (artifactdocx-fidelity-40477924801), where theDOCX Fidelityjob failed on this document alone, not yet in the baseline. A comment under each file's header says where the rows were measured.-Dgraphcompose.docxFidelity.update=true.CONTRIBUTING.md: an icon a layer stack lays over a card's corner joins the examples of a shapeSyntheticDocxCorpusholds;Measured
Lines found of the page's, then the drift of the found lines (pt; positive is low):
DocxLayerColumns.band), the card's paragraph, and the card's padding lies between it and the band's edges.edit-protocol-corpus.ps1,drawings-follow-text), lengthening the paragraph above the card, moves the card 36pt and the icon not at all, and fails.Tests
scripts/docx-visual/word-fidelity.ps1(Word 16.0.20527) → the corpus test inwordmode passes on all 71 documents against the extendedword-windows. Before the rows were added, it failed on the new document alone, as not in the baseline.-Dgraphcompose.docxFidelity=libreoffice→ the new document passes against the extendedlibreoffice-windows.invoice-obsidianandproposal-indigofail as they do on2.5-dev(named in test(qa): hold the ways a page breaks inside a panel in the DOCX fidelity corpus #965): this change exports both byte for byte as2.5-devdoes.DOCX Fidelity (LibreOffice)passes (run 40483012285).DocxLayerColumns.band), installed: the Word gate fails the document, its card's two lines and the paragraph under it each 2pt further from the page, with the 15 presets that set a band (cv-serif_headline,invoice-payments,proposal-northlineamong them).2.5-dev; the report's notes 1498 → 1499, the one added on the new document.clean verifyof the reactor as CI runs it → BUILD SUCCESS (core 823, render-pdf 339, render-docx 2311, testing 5, render-pptx 142, templates 127, qa 1846); the four knowledge checks and core javadoc (0 warnings) pass; examples 93.Named, not fixed
Lane: tests (qa) and documentation. No public API change, and no change to the export.