Bug 97691 - SVG: Linear gradients not rendered correctly
Summary: SVG: Linear gradients not rendered correctly
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: graphics stack (show other bugs)
Version:
(earliest affected)
3.6.7.2 release
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: filter:svg
Depends on:
Blocks: SVG-Import
  Show dependency treegraph
 
Reported: 2016-02-09 15:06 UTC by Yousuf Philips (jay) (retired)
Modified: 2025-11-16 15:01 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments
LibreOffice vs Opera (115.63 KB, image/png)
2016-02-09 15:06 UTC, Yousuf Philips (jay) (retired)
Details
screenshot of 45° line shape above gradient (71.47 KB, image/png)
2023-11-06 17:35 UTC, Stéphane Guillou (stragu)
Details
linear gradient circles (1.51 KB, image/svg+xml)
2025-11-16 14:59 UTC, Yousuf Philips (jay) (retired)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Yousuf Philips (jay) (retired) 2016-02-09 15:06:36 UTC
Created attachment 122484 [details]
LibreOffice vs Opera

Steps:
1) Open Writer
2) Insert https://dev.w3.org/SVG/tools/svgweb/samples/svg-files/python.svg
3) Notice the angle of the gradients in the yellow shape

Relevant SVG code:

<defs>
  <linearGradient id="pyYellow" gradientTransform="rotate(45)">
    <stop stop-color="#fe5" offset="0.6"/>
    <stop stop-color="#da1" offset="1"/>
  </linearGradient>
</defs>

<path d="M74,87c0,7-8,13-23,13c-15,0-24-6-24-13l0-22c0-7,6-12,12-12l24,0c8,0,14-7,14-15l0-10l9,0c7,0,13,9,13,23c0,15-6,24-13,24l-35,0l0,3l23,0l0,9l0,0z M140,50v1" fill="url(#pyYellow)"/>

Version: 5.2.0.0.alpha0+
Build ID: 6d68e88a0fc5a54bbb826379163bd0b9c6eae0fb
CPU Threads: 2; OS Version: Linux 4.2; UI Render: default; 
TinderBox: Linux-rpm_deb-x86_64@70-TDF, Branch:master, Time: 2016-02-08_08:05:38
Locale: en-US (en_US.UTF-8)
Comment 1 raal 2016-02-10 13:59:46 UTC
I can confirm with Version: 5.2.0.0.alpha0+
Comment 2 QA Administrators 2017-03-06 14:56:42 UTC Comment hidden (obsolete)
Comment 3 QA Administrators 2019-12-03 14:56:57 UTC Comment hidden (obsolete)
Comment 4 Buovjaga 2020-11-13 18:29:54 UTC
Still confirmed

Arch Linux 64-bit
Version: 7.1.0.0.alpha1+
Build ID: c54e1c22f30c23d00e2fe7521217569fcec59cc4
CPU threads: 8; OS: Linux 5.9; UI render: default; VCL: kf5
Locale: fi-FI (fi_FI.UTF-8); UI: en-US
Calc: threaded
Built on 13 November 2020
Comment 5 QA Administrators 2022-11-14 03:33:48 UTC Comment hidden (obsolete)
Comment 6 Stéphane Guillou (stragu) 2023-11-06 17:35:36 UTC
Created attachment 190691 [details]
screenshot of 45° line shape above gradient

I don't see an issue with gradient rotation here.
I checked in both 5.2.0.0.apha1 and a recent master build, and in both the gradient lines align with a line rotated at 45°.

Version: 24.2.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: 31fb3045dabdb27d913712f3abcade315e3ea9bd
CPU threads: 8; OS: Linux 5.15; UI render: default; VCL: gtk3
Locale: en-AU (en_AU.UTF-8); UI: en-US
Calc: threaded
Comment 7 QA Administrators 2025-11-06 03:13:13 UTC Comment hidden (obsolete)
Comment 8 Yousuf Philips (jay) (retired) 2025-11-16 14:59:22 UTC
Created attachment 204024 [details]
linear gradient circles

The issue is more visible in this simpler example, as the circles on the top row, which show the bug, should be rendered identically as the circles on the bottom row.

When a linear gradient doesn't begin and/or end with color entries of 0% and/or 100%, it doesn't maintain the color that precedes/follows it with the same color, which at times results in linear gradients looking like bi-linear gradients, as seen in the left and right columns of the example.