Bug 101122 - FILESAVE Export of custom shape to pptx sets fill wrongly and looses formulas and handles
Summary: FILESAVE Export of custom shape to pptx sets fill wrongly and looses formulas...
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: filters and storage (show other bugs)
Version:
(earliest affected)
Inherited From OOo
Hardware: x86 (IA32) Windows (All)
: medium normal
Assignee: Balázs Regényi
URL:
Whiteboard: target:7.1.0
Keywords: filter:pptx
Depends on:
Blocks: Shapes-Custom Shape-ODF-OOXML-export PPTX-Shapes
  Show dependency treegraph
 
Reported: 2016-07-25 18:39 UTC by Regina Henschel
Modified: 2020-11-12 15:10 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments
File with custom shape, which is wrongly exported (12.54 KB, application/vnd.sun.xml.impress)
2016-07-25 18:39 UTC, Regina Henschel
Details
The example shape copied to odt format (14.51 KB, application/vnd.oasis.opendocument.text)
2020-09-01 13:07 UTC, NISZ LibreOffice Team
Details
Test file for not custom shapes (13.10 KB, application/vnd.oasis.opendocument.text)
2020-10-13 13:22 UTC, László Németh
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Regina Henschel 2016-07-25 18:39:21 UTC
Created attachment 126406 [details]
File with custom shape, which is wrongly exported

Open attached file. It contains a custom shape, which shows a sine curve and has two handles. Save the file to pptx and open it in Powerpoint. Notice that the shape has filling. Click the shape. Notice that it has no handles.

If you set saving to ODF1.1 format and save it in that format by LibreOffice, and let PowerPoint open this .odp document, filling and handles are correct in PowerPoint and remain correct, if PowerPoint saves it to .pptx. So .pptx is capable to work with such shapes.
Comment 1 Buovjaga 2016-08-03 19:40:45 UTC
Repro.

Win 8.1 32-bit
MSO 2013
LibO Version: 5.3.0.0.alpha0+
Build ID: 9f8f6e032a61beaddeaa3bf3bb0ed08581c15b17
CPU Threads: 4; OS Version: Windows 6.29; UI Render: default; 
TinderBox: Win-x86@42, Branch:master, Time: 2016-08-03_08:09:13
Locale: fi-FI (fi_FI); Calc: group
Comment 2 QA Administrators 2017-09-01 11:19:12 UTC Comment hidden (obsolete)
Comment 3 Regina Henschel 2017-09-01 15:23:32 UTC
The wrong export still exists in Version: 6.0.0.0.alpha0+
Build ID: 4c99b8a9de59f3c5280ff2944d9f828822897f4a
CPU threads: 4; OS: Windows 6.1; UI render: default; 
Locale: de-DE (de_DE); Calc: group
Comment 4 QA Administrators 2018-10-22 02:48:32 UTC Comment hidden (obsolete)
Comment 5 Regina Henschel 2018-10-22 10:03:02 UTC
The error still exists in Version: 6.2.0.0.alpha0+ (x64)
Build ID: 6baca63b44bf7f75a522b1adc4b4bbce502aec3b
CPU threads: 8; OS: Windows 10.0; UI render: GL; VCL: win; 
TinderBox: Win-x86_64@42, Branch:master, Time: 2018-10-20_01:35:41
Locale: de-DE (en_US); Calc: CL
Comment 6 Buovjaga 2019-09-29 10:43:33 UTC
Still confirmed. In 3.3.0 it turns into a rectangle.

Version: 6.4.0.0.alpha0+ (x64)
Build ID: e1b51d4588b4b39592bb94dd5bb90de5e04d061e
CPU threads: 4; OS: Windows 10.0; UI render: default; VCL: win; 
TinderBox: Win-x86_64@62-TDF, Branch:master, Time: 2019-09-23_09:16:11
Locale: fi-FI (fi_FI); UI-Language: en-US
Calc: threaded
Comment 7 NISZ LibreOffice Team 2020-09-01 13:07:09 UTC
Created attachment 164964 [details]
The example shape copied to odt format

Also happens if it's copied to odt format, then saved to docx and opened in Word.
Comment 8 Balázs Regényi 2020-10-08 12:38:08 UTC
@Regina how can I create such a sine curve?
Comment 9 Regina Henschel 2020-10-08 17:16:05 UTC
(In reply to Balázs Regényi from comment #8)
> @Regina how can I create such a sine curve?

LibreOffice has no UI for making own custom shapes. So you need to define them directly in file format.

The wrong fill has been also a problem in bug 100390 and in the proposed patch at https://gerrit.libreoffice.org/c/core/+/78247. See my comment there.

You should split the problem in
(1) exporting the drawing::EnhancedCustomShapeSegmentCommand::ENDSUBPATH, ::NOFILL and ::NOSTROKE. (already started in the patch)
(2) exporting handles of "non-primitive" custom-shapes.
Comment 10 Balázs Regényi 2020-10-12 10:43:16 UTC
(In reply to Regina Henschel from comment #9)
> (In reply to Balázs Regényi from comment #8)
> > @Regina how can I create such a sine curve?
> 
> LibreOffice has no UI for making own custom shapes. So you need to define
> them directly in file format.
> 
> The wrong fill has been also a problem in bug 100390 and in the proposed
> patch at https://gerrit.libreoffice.org/c/core/+/78247. See my comment there.
> 
> You should split the problem in
> (1) exporting the drawing::EnhancedCustomShapeSegmentCommand::ENDSUBPATH,
> ::NOFILL and ::NOSTROKE. (already started in the patch)
> (2) exporting handles of "non-primitive" custom-shapes.

I see, @Regina, thx!
Comment 11 Commit Notification 2020-10-13 13:20:46 UTC
Regényi Balázs committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/9310e47e2ce71348a16e5412131946348833f4b2

tdf#101122 DOCX custom shape export: remove bad fill

It will be available in 7.1.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 12 László Németh 2020-10-13 13:22:22 UTC
Created attachment 166346 [details]
Test file for not custom shapes
Comment 13 NISZ LibreOffice Team 2020-11-12 15:10:22 UTC
Verified in:

Version: 7.1.0.0.alpha1+ (x64)
Build ID: 693553210828538680408832157faad9654758c8
CPU threads: 4; OS: Windows 10.0 Build 17134; UI render: Skia/Raster; VCL: win
Locale: hu-HU (hu_HU); UI: hu-HU
Calc: threaded

Thanks for fixing!