Bug 168002 - CairoSDPR breaks SVG text layout
Summary: CairoSDPR breaks SVG text layout
Status: ASSIGNED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: graphics stack (show other bugs)
Version:
(earliest affected)
25.2.0.0 alpha0+
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: Armin Le Grand (collabora)
URL:
Whiteboard:
Keywords: bibisected, bisected, regression
Depends on:
Blocks: CairoSDPR
  Show dependency treegraph
 
Reported: 2025-08-18 20:20 UTC by Buovjaga
Modified: 2025-08-19 17:31 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments
ReducedBugDoc using draw (simpler) and SVG stripped to one text (9.97 KB, application/vnd.oasis.opendocument.graphics)
2025-08-19 17:31 UTC, Armin Le Grand (collabora)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Buovjaga 2025-08-18 20:20:33 UTC
1. Open Writer on Linux
2. Insert attachment 179090 [details] from bug 148167 as an image

Compare to screenshot of "Firefox (top) vs LibreOffice 7.4 (bottom)", attachment 179100 [details]

Bibisected with linux-64-25.2 to bf3cd8e50f886084500e3a8ff72ff4ffab05ddd7
CairoSDPR: Make using SDPR dependent of ExperimentalMode

Arch Linux 64-bit
Version: 26.2.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 1313be884c4ded639a5f53694c82a1cf2e77fe70
CPU threads: 8; OS: Linux 6.15; UI render: default; VCL: kf6 (cairo+wayland)
Locale: fi-FI (fi_FI.UTF-8); UI: en-US
Calc: CL threaded
Built on 12 August 2025
Comment 1 Xisco Faulí 2025-08-19 09:35:22 UTC
Reproduced in

Version: 26.2.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: f3522ba36c867f4eb69fabcf293419f1d69caffa
CPU threads: 8; OS: Linux 6.1; UI render: default; VCL: gtk3
Locale: es-ES (es_ES.UTF-8); UI: en-US
Calc: threaded
Comment 2 Xisco Faulí 2025-08-19 09:53:06 UTC
Using TEST_SYSTEM_PRIMITIVE_RENDERER=1 I bisected it further to ff46c8bf598481ae37022414f3495c1e9385eb7c
Comment 3 Armin Le Grand (collabora) 2025-08-19 11:02:25 UTC
Also in Draw, so created simple test doc.
Using DISABLE_SYSTEM_DEPENDENT_PRIMITIVE_RENDERER shows it has to do with CairoSDPR - strange since SVG import is not different, so same TextPrimitives create different renderings -> have to check...
Comment 4 Armin Le Grand (collabora) 2025-08-19 13:22:45 UTC
Seems to have to do with TextSimplePortionPrimitive2D's having no DxArray, the current stuff works in ObjectCoordinates then and that are small doubles, so also some old int/rounding involved i fear...
Comment 5 Armin Le Grand (collabora) 2025-08-19 17:31:02 UTC
Created attachment 202383 [details]
ReducedBugDoc using draw (simpler) and SVG stripped to one text