Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,24 @@ follow semantic versioning; release dates are ISO 8601.

### Public API

- **A DOCX export gives a paragraph opening a row's column the gap above its first line out of the
space above the row.** Word sets a paragraph's lines one height apart, the gap between them inside
the line, so a paragraph of more than one line holds a gap too many, which comes off the space
above it, or off its cell's padding. Opening a column of a row of columns or of a stack's columns
with neither, its gaps were shared out over its lines, which stood closer than on the page:
`EditorialProposal`'s goal cells, three lines each, stood 1.46 and 0.45pt low and 0.56pt high in
Word; `OrangeOps`' degree, two lines beside its badge, 0.45pt low and 0.45pt high. The row is now
lifted out of the space above it by what the paragraph needs, its other cells start as much lower
inside — one opening with a table, as a column painted as a panel does, below a hairline paragraph
holding the lift — and a row held to a height is held as much taller. Only where the lift raises
the first line half a point or more above where sharing the gaps out sets it: a smaller rise left
`EditorialProposal`'s phases 0.3pt high, a cell's last paragraph having nothing under it to lower
it into, and their gaps stay shared out. Not on a page's first row, nor in an overlay. Five of the
corpus's 62 DOCX change. Lines moved by more than 0.05pt: Word 40 nearer the page and 5 further,
LibreOffice on Windows 44 and none further. `EditorialProposal`'s goal cells stand within 0.16pt
in Word and 0.25pt in LibreOffice, `OrangeOps`' degree within 0.27pt; `EditorialProposal`'s 90th
percentile goes from 0.41 to 0.22pt in Word and from 0.65 to 0.35pt in LibreOffice on Windows. The
report's notes are unchanged.
- **A DOCX export settles a list item's exact lines with the page, and what a cell's lines carry at
its end.** Word sets a list's item at its written line height, to the twip, and the export compared
only a paragraph's lines with the page's: `Panel`'s skills and projects, items of two lines and
Expand Down
2 changes: 1 addition & 1 deletion docs/recipes/docx-export.md

Large diffs are not rendered by default.

96 changes: 48 additions & 48 deletions qa/src/test/resources/docx-fidelity/libreoffice-windows-lines.tsv
Original file line number Diff line number Diff line change
Expand Up @@ -1212,7 +1212,7 @@ cv-serif_headline 0:1cc9a79bdaf0 0.34 0.14 mongodb
cv-serif_headline 0:7dc785098784 0.36 0.14 tools&technologies
cv-serif_headline 0:d548c5b83fa6 0.38 0.14 docker
cv-serif_headline 0:94abcb2d2773 0.42 0.14 kubernetes
cv-serif_headline 0:94abcb2d2773#1 1.17 0.11 kubernetes
cv-serif_headline 0:94abcb2d2773#1 0.37 0.11 kubernetes
cv-serif_headline 0:424e9661130e 0.46 0.14 jenkins
cv-serif_headline 0:9a881b9b9f23 0.50 0.14 git
cv-serif_headline 0:7d1507284a57 0.53 0.14 aws
Expand All @@ -1221,19 +1221,19 @@ cv-serif_headline 0:1b3b2a6f7d93 0.58 0.14 problemsolving|communication
cv-serif_headline 0:c3738991cb30 0.59 0.14 teamwork|adaptability
cv-serif_headline 0:7bce4fcdeb12 0.60 0.14 leadership|timemanagement
cv-serif_headline 0:e831beb04c00 0.51 0.08 certifications
cv-serif_headline 0:eb246465ec07 1.17 0.13 awscertified
cv-serif_headline 0:a48e133bb1b3 0.53 0.13 developer–associate
cv-serif_headline 0:eb246465ec07 0.37 0.13 awscertified
cv-serif_headline 0:a48e133bb1b3 0.38 0.13 developer–associate
cv-serif_headline 0:eb2d55035d04 0.65 0.13 (aws)
cv-serif_headline 0:39f98aca30e7 1.17 0.06 oraclecertified
cv-serif_headline 0:6b5ac810679c 0.53 0.06 professional,
cv-serif_headline 0:39f98aca30e7 0.37 0.06 oraclecertified
cv-serif_headline 0:6b5ac810679c 0.38 0.06 professional,
cv-serif_headline 0:d52585984184 0.65 0.06 javase17(oracle)
cv-serif_headline 0:72be4e94032e 1.17 0.07 dockercertified
cv-serif_headline 0:178b6e061a04 0.53 0.07 associate
cv-serif_headline 0:72be4e94032e 0.37 0.07 dockercertified
cv-serif_headline 0:178b6e061a04 0.38 0.07 associate
cv-serif_headline 0:418860eec88d 0.65 0.07 (dca)
cv-serif_headline 0:958c81247482 1.17 0.09 springprofessional
cv-serif_headline 0:b00a6c108553 0.53 0.09 certification
cv-serif_headline 0:958c81247482 0.37 0.09 springprofessional
cv-serif_headline 0:b00a6c108553 0.38 0.09 certification
cv-serif_headline 0:485507d8292d 0.65 0.09 (vmware)
cv-serif_headline 0:64a3f18ab4fa 0.53 0.11 fundamentals
cv-serif_headline 0:64a3f18ab4fa 0.38 0.11 fundamentals
cv-serif_headline 0:f4bf1c62326f 0.65 0.11 (linuxfoundation)
cv-serif_headline 0:6ee18b42fbf1 0.50 0.08 achievements
cv-serif_headline 0:e3072a9546f9 0.78 0.13 engineeroftheyear–2023
Expand Down Expand Up @@ -3402,8 +3402,8 @@ invoice-workspace 0:d60fbd8718ec -0.28 0.06 usd
invoice-workspace 0:c608665436db -0.32 0.12 reference:
invoice-workspace 0:3db3fa89ea2c -0.36 0.12 bankaddress:
invoice-workspace 0:b1645851e755 -0.36 0.06 1marketplaza,sanfrancisco
invoice-workspace 0:9b600d1211c8 0.58 0.14 pleaseincludetheinvoicenumberiny
invoice-workspace 0:415eb9e42f41 -0.68 0.14 reference.
invoice-workspace 0:9b600d1211c8 -0.32 0.14 pleaseincludetheinvoicenumberiny
invoice-workspace 0:415eb9e42f41 -0.33 0.14 reference.
invoice-workspace 0:d6577e95efba 0.01 0.13 subtotal
invoice-workspace 0:460dd5bae888 0.01 0.40 587.50
invoice-workspace 0:2ee4d3de4ddf 0.01 0.13 tax(0%)
Expand Down Expand Up @@ -3619,18 +3619,18 @@ proposal-editorial 0:59d00e0c1b99 -0.21 0.10 projectlead
proposal-editorial 0:4190fd3a8d72 -0.01 0.10 proposalvalidity
proposal-editorial 0:56a2e019b8aa -0.22 0.10 14days
proposal-editorial 0:265e93f6b9da -0.05 0.10 (until8september2026)
proposal-editorial 0:e2ea93b97611 1.35 0.05 strengthenbrand
proposal-editorial 0:7d95098b921b 0.35 0.05 credibilityandvisual
proposal-editorial 0:218e304f8b84 -0.65 0.05 consistency.
proposal-editorial 0:35597cc9803f 1.35 0.06 improvewebsite
proposal-editorial 0:83f63137756b 0.35 0.06 usabilityanddrive
proposal-editorial 0:cce9fba37d4e -0.65 0.06 meaningfulaction.
proposal-editorial 0:59aaadaf0c54 1.35 0.06 communicateyour
proposal-editorial 0:30193022f687 0.35 0.06 valueclearlyacrossall
proposal-editorial 0:04b5995c746f -0.65 0.06 touchpoints.
proposal-editorial 0:b45d848fe1b6 1.35 0.07 buildascalabledigital
proposal-editorial 0:e8228bfeba0e 0.35 0.07 foundationforfuture
proposal-editorial 0:1fa35c7a1402 -0.65 0.07 growth.
proposal-editorial 0:e2ea93b97611 0.25 0.05 strengthenbrand
proposal-editorial 0:7d95098b921b 0.25 0.05 credibilityandvisual
proposal-editorial 0:218e304f8b84 0.25 0.05 consistency.
proposal-editorial 0:35597cc9803f 0.25 0.06 improvewebsite
proposal-editorial 0:83f63137756b 0.25 0.06 usabilityanddrive
proposal-editorial 0:cce9fba37d4e 0.25 0.06 meaningfulaction.
proposal-editorial 0:59aaadaf0c54 0.25 0.06 communicateyour
proposal-editorial 0:30193022f687 0.25 0.06 valueclearlyacrossall
proposal-editorial 0:04b5995c746f 0.25 0.06 touchpoints.
proposal-editorial 0:b45d848fe1b6 0.25 0.07 buildascalabledigital
proposal-editorial 0:e8228bfeba0e 0.25 0.07 foundationforfuture
proposal-editorial 0:1fa35c7a1402 0.25 0.07 growth.
proposal-editorial 0:bc981abcdf59 0.02 0.10 scopeofwork
proposal-editorial 0:28450edd9a4f -0.20 0.05 discovery&research
proposal-editorial 0:ce9012b74aa2 0.05 0.08 stakeholderinterviews,brandaudit
Expand All @@ -3657,8 +3657,8 @@ proposal-editorial 1:aaa2a6073d69 0.07 0.57 refinedlogosuite&brandguidelines
proposal-editorial 1:d626f7532564 0.07 0.57 color,typography&designsystem
proposal-editorial 1:018ec557a513 0.07 0.57 websiteuxwireframes
proposal-editorial 1:5ed4970fa285 -0.18 0.57 high-fidelitywebsitedesigns
proposal-editorial 1:a579d6d1c12e 0.17 0.55 responsivedesignfordesktop,table
proposal-editorial 1:d524c1a0811d -0.23 0.10 mobile
proposal-editorial 1:a579d6d1c12e -0.03 0.55 responsivedesignfordesktop,table
proposal-editorial 1:d524c1a0811d -0.03 0.10 mobile
proposal-editorial 1:8b712e7e93bf 0.05 0.55 contentstrategy&pagetemplates
proposal-editorial 1:e9bf06d9b130 0.05 0.55 developer-readyassets&specificat
proposal-editorial 1:e93e7ba95ceb -0.20 0.55 launchchecklist&trainingsession
Expand Down Expand Up @@ -3866,34 +3866,34 @@ proposal-northline 0:59d00e0c1b99 -0.42 0.07 projectlead
proposal-northline 0:4190fd3a8d72 -0.25 0.07 proposalvalidity
proposal-northline 0:56a2e019b8aa -0.42 0.07 14days
proposal-northline 0:265e93f6b9da -0.24 0.07 (until8september2026)
proposal-northline 0:e2ea93b97611 0.52 0.10 strengthenbrand
proposal-northline 0:7d95098b921b 0.02 0.10 credibilityandvisual
proposal-northline 0:218e304f8b84 -0.48 0.10 consistency.
proposal-northline 0:35597cc9803f 0.52 0.06 improvewebsite
proposal-northline 0:83f63137756b 0.02 0.06 usabilityanddrive
proposal-northline 0:cce9fba37d4e -0.48 0.06 meaningfulaction.
proposal-northline 0:59aaadaf0c54 0.52 0.06 communicateyour
proposal-northline 0:30193022f687 0.02 0.06 valueclearlyacrossall
proposal-northline 0:04b5995c746f -0.48 0.06 touchpoints.
proposal-northline 0:b45d848fe1b6 0.52 0.12 buildascalabledigital
proposal-northline 0:e8228bfeba0e 0.02 0.12 foundationforfuture
proposal-northline 0:1fa35c7a1402 -0.48 0.12 growth.
proposal-northline 0:e2ea93b97611 0.07 0.10 strengthenbrand
proposal-northline 0:7d95098b921b 0.07 0.10 credibilityandvisual
proposal-northline 0:218e304f8b84 0.07 0.10 consistency.
proposal-northline 0:35597cc9803f 0.07 0.06 improvewebsite
proposal-northline 0:83f63137756b 0.07 0.06 usabilityanddrive
proposal-northline 0:cce9fba37d4e 0.07 0.06 meaningfulaction.
proposal-northline 0:59aaadaf0c54 0.07 0.06 communicateyour
proposal-northline 0:30193022f687 0.07 0.06 valueclearlyacrossall
proposal-northline 0:04b5995c746f 0.07 0.06 touchpoints.
proposal-northline 0:b45d848fe1b6 0.07 0.12 buildascalabledigital
proposal-northline 0:e8228bfeba0e 0.07 0.12 foundationforfuture
proposal-northline 0:1fa35c7a1402 0.07 0.12 growth.
proposal-northline 0:bc981abcdf59 -0.49 0.11 scopeofwork
proposal-northline 0:28450edd9a4f -0.18 0.05 discovery&research
proposal-northline 0:155f35b4967f 0.42 0.07 stakeholderinterviews,brandaudit
proposal-northline 0:973aeda5fe6d -0.28 0.07 insightstoinformstrategy.
proposal-northline 0:155f35b4967f 0.17 0.07 stakeholderinterviews,brandaudit
proposal-northline 0:973aeda5fe6d 0.17 0.07 insightstoinformstrategy.
proposal-northline 0:12bff3036b66 -0.18 0.05 visualidentityrefinement
proposal-northline 0:d7ac738462f9 0.42 0.07 refinelogosystem,colorpalette,ty
proposal-northline 0:9136e740c370 -0.28 0.07 cohesive,modernidentity.
proposal-northline 0:d7ac738462f9 0.17 0.07 refinelogosystem,colorpalette,ty
proposal-northline 0:9136e740c370 0.17 0.07 cohesive,modernidentity.
proposal-northline 0:fc5134bf5fd1 -0.18 0.05 websiteux/uidesign
proposal-northline 0:5d58b01c7096 0.42 0.07 designaresponsive,accessibility-
proposal-northline 0:5d6068f6a879 -0.28 0.07 navigationandclearconversionpath
proposal-northline 0:5d58b01c7096 0.17 0.07 designaresponsive,accessibility-
proposal-northline 0:5d6068f6a879 0.17 0.07 navigationandclearconversionpath
proposal-northline 0:32001e20b2ed -0.18 0.05 contentstructure&messaging
proposal-northline 0:b3c948ec3e36 0.42 0.07 definesitearchitecture,keymessag
proposal-northline 0:231428fde7aa -0.28 0.07 communicatevalueandbuildtrust.
proposal-northline 0:b3c948ec3e36 0.17 0.07 definesitearchitecture,keymessag
proposal-northline 0:231428fde7aa 0.17 0.07 communicatevalueandbuildtrust.
proposal-northline 0:8c7703bb6fb7 -0.18 0.05 launchsupport
proposal-northline 0:64aa6ccd2e0e 0.42 0.07 developerhandoff,qasupport,train
proposal-northline 0:1f71a8d2d1d2 -0.28 0.07 ensureasmoothlaunch.
proposal-northline 0:64aa6ccd2e0e 0.17 0.07 developerhandoff,qasupport,train
proposal-northline 0:1f71a8d2d1d2 0.17 0.07 ensureasmoothlaunch.
proposal-northline 0:026890c58de9 0.01 0.10 northlinestudio|northlinestudio.
proposal-northline 1:5205c2a261bc -0.34 0.05 northline
proposal-northline 1:da0daaba4b15 -0.34 0.05 studio
Expand Down
6 changes: 3 additions & 3 deletions qa/src/test/resources/docx-fidelity/libreoffice-windows.tsv
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ cv-nordic_clean 1 1 63 58 0.06 0.19 0
cv-orange_ops 1 2 108 5 77.92 77.92 5
cv-panel 1 1 79 74 0.21 0.33 0
cv-professional_sidebar 1 1 68 64 0.20 0.28 0
cv-serif_headline 1 1 103 103 0.19 0.65 0
cv-serif_headline 1 1 103 103 0.19 0.59 0
cv-sidebar_portrait 1 1 49 49 0.07 0.18 0
cv-slate_orange 1 1 87 86 0.23 0.99 0
cv-teal_pulse 1 1 57 57 0.20 0.64 0
Expand Down Expand Up @@ -56,9 +56,9 @@ letter-nordic_clean 1 1 15 15 0.06 0.15 0
letter-panel 1 1 13 13 0.04 0.14 0
letter-sidebar_portrait 1 1 12 12 0.03 0.05 0
letter-timeline_minimal 1 1 15 15 0.15 0.33 0
proposal-editorial 2 2 132 132 0.21 0.65 0
proposal-editorial 2 2 132 132 0.20 0.35 0
proposal-indigo 1 1 72 70 0.12 0.50 0
proposal-modern 1 1 44 44 0.03 0.12 0
proposal-northline 2 2 132 132 0.17 0.48 0
proposal-northline 2 2 132 132 0.13 0.42 0
receipt-modern 1 1 57 57 0.04 0.09 0
rota-cobalt 1 1 154 151 0.03 0.19 0
Loading
Loading