Bug 141953 - FILEOPEN PPTX: 90deg basic rectangle rotation is missing for rotated shape in group
Summary: FILEOPEN PPTX: 90deg basic rectangle rotation is missing for rotated shape in...
Status: VERIFIED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Impress (show other bugs)
Version:
(earliest affected)
5.2 all versions
Hardware: All All
: medium normal
Assignee: Regina Henschel
URL:
Whiteboard: target:7.2.0 target:7.1.4
Keywords: filter:pptx
: 93952 142274 (view as bug list)
Depends on:
Blocks: PPTX-Shapes
  Show dependency treegraph
 
Reported: 2021-04-28 23:09 UTC by Regina Henschel
Modified: 2021-05-20 13:51 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments
document comparing 44deg vs 45deg rotation (16.25 KB, application/vnd.openxmlformats-officedocument.presentationml.presentation)
2021-04-28 23:09 UTC, Regina Henschel
Details
Comparison LibreOffice 7.2 master and MSO 2010 (50.60 KB, image/png)
2021-04-29 07:48 UTC, Xisco Faulí
Details
Comparison LibreOffice 7.2 master and MSO 2010 ( slide 2 ) (53.07 KB, image/png)
2021-04-29 07:50 UTC, Xisco Faulí
Details
Document from which the screenshot is used in the investigation (14.80 KB, application/vnd.openxmlformats-officedocument.presentationml.presentation)
2021-04-30 14:26 UTC, Regina Henschel
Details
Spreedsheat to manually calculate the shapes (64.14 KB, application/vnd.oasis.opendocument.spreadsheet)
2021-04-30 14:32 UTC, Regina Henschel
Details
LO 141953 manually calculating shapes (62.48 KB, application/vnd.oasis.opendocument.spreadsheet)
2021-05-01 14:00 UTC, Regina Henschel
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Regina Henschel 2021-04-28 23:09:43 UTC
Created attachment 171483 [details]
document comparing 44deg vs 45deg rotation

Open attached document in LibreOffice and PowerPoint and compare. The orange shapes should be essentially different.

The two slides have the same geometry besides the rotation angle of the orange shape has 44deg in one slide and 45deg in the other slide. The blue shape has the same geometry than the orange one, but is not rotated.

PowerPoint uses for shapes, which have rotation angle in 45..135 and 225..315 degree not the original shape rectangle, but a basic rectangle, which is rotated by 90deg. The difference becomes visible here, because the group sets a child coordinate system via choff and chext elements, which has a non-uniform scale transformation.

The wrong shew is already reported as bug 141463.
Comment 1 Xisco Faulí 2021-04-29 07:48:34 UTC
Created attachment 171492 [details]
Comparison LibreOffice 7.2 master and  MSO 2010
Comment 2 Xisco Faulí 2021-04-29 07:50:09 UTC
Created attachment 171493 [details]
Comparison LibreOffice 7.2 master and  MSO 2010 ( slide 2 )
Comment 3 Xisco Faulí 2021-04-29 07:50:28 UTC
Reproduced in

Version: 7.2.0.0.alpha0+ / LibreOffice Community
Build ID: 41ff704cc49b7097b717882616011962ecd7198f
CPU threads: 4; OS: Linux 5.7; UI render: default; VCL: gtk3
Locale: en-US (en_US.UTF-8); UI: en-US
Calc: threaded
Comment 4 Xisco Faulí 2021-04-29 07:51:12 UTC
Also reproduced in

Version: 5.2.0.0.alpha0+
Build ID: 3ca42d8d51174010d5e8a32b96e9b4c0b3730a53
Threads 4; Ver: 5.7; Render: default;
Comment 5 Regina Henschel 2021-04-30 14:26:15 UTC
Created attachment 171539 [details]
Document from which the screenshot is used in the investigation
Comment 6 Regina Henschel 2021-04-30 14:32:18 UTC
Created attachment 171540 [details]
Spreedsheat to manually calculate the shapes

The spreadsheets allows to manually calculate the shapes using the values given in the pptx file.
Behind the chart is a screenshot of the pptx as shown in PowerPoint. The grid is shown in PowerPoint so that you can  adjust the chart to the grid of the screen shot.

The calculation uses choff and chext as individual values and the group transformation is expected to not contain these values. That is different to the current implementation, where the 'parent transformation'  contains choff and chext.
Comment 7 Regina Henschel 2021-05-01 14:00:21 UTC
Created attachment 171568 [details]
LO 141953 manually calculating shapes

The attached spreadsheet crashes LO 7.2. So I exchange the attachment with a version, which does not crash. The crash itself is reported in bug 142019.
Comment 8 Regina Henschel 2021-05-03 19:09:01 UTC
The attached spreadsheet is still not correct. I will not attach a new one, but try a fix in code directly.
Comment 9 Regina Henschel 2021-05-15 18:14:31 UTC
This is fixed together with fix for bug 141463, in commit https://cgit.freedesktop.org/libreoffice/core/commit/?id=36499d8bf6cd5c6af7b2ceb6071baf5c7421bd0a
Comment 10 Xisco Faulí 2021-05-17 15:35:41 UTC
Verified in

Version: 7.2.0.0.alpha1+ / LibreOffice Community
Build ID: c781776f3c79bbe3175b1452d26c79ebb931a500
CPU threads: 4; OS: Linux 5.7; UI render: default; VCL: gtk3
Locale: en-US (en_US.UTF-8); UI: en-US
Calc: threaded

@Regina, thanks for fixing this issue!!
Comment 11 Xisco Faulí 2021-05-17 15:36:09 UTC
*** Bug 93952 has been marked as a duplicate of this bug. ***
Comment 12 Xisco Faulí 2021-05-17 15:50:59 UTC
*** Bug 142274 has been marked as a duplicate of this bug. ***
Comment 13 Xisco Faulí 2021-05-20 13:51:59 UTC
Fixing patch has been backported to libreoffice-7-1 -> https://cgit.freedesktop.org/libreoffice/core/commit/?h=libreoffice-7-1&id=ac0eb504a38321849b854889598a28d0687196ea