Bug 135709

Summary: Changing as character to 'to character' defaults to parallel wrap with ODT and DOCX but wrap through in DOC
Product: LibreOffice Reporter: Telesto <telesto>
Component: WriterAssignee: Justin L <jluth>
Status: RESOLVED FIXED    
Severity: normal CC: ilmari.lauhakangas, jluth, vsfoote
Priority: medium Keywords: filter:doc
Version: Inherited From OOo   
Hardware: All   
OS: All   
See Also: https://bugs.documentfoundation.org/show_bug.cgi?id=135710
https://bz.apache.org/ooo/show_bug.cgi?id=3958
Whiteboard: target:7.6.0
Crash report or crash signature: Regression By:
Bug Depends on:    
Bug Blocks: 120468    
Attachments: Example file

Description Telesto 2020-08-13 12:28:46 UTC
Description:
Changing as character to 'to character' enabled parallel wrap with ODT and DOCX but wrap through in DOC

Steps to Reproduce:
1. Open the attached file
2. Change anchoring of the image frame to 'to character' notice parallel wrap being enabled
3. File reload
4. File Save As DOC
5. File Reload
6. Change the as character anchor again to to character (notice wrap through)

Actual Results:
Wrap through

Expected Results:
Parallel wrap


Reproducible: Always


User Profile Reset: No



Additional Info:
Found in
7.1

4.4.7.2

and in
3.5.0

assuming 3.3.0 too
Comment 1 Telesto 2020-08-13 12:29:05 UTC
Created attachment 164254 [details]
Example file
Comment 2 V Stuart Foote 2020-08-13 13:31:45 UTC
Antoher round-trip filter issue. Simpler to see if you use 'Save a copy' as both .DOC and .DOCX before and after the anchor change is made to the .ODT

Hard to examine binary of the .DOC; but the XML archive of the .DOCX can be compared. If they're the same (and they look to be here)--the issue is with the import filters.
Comment 3 Buovjaga 2021-03-11 08:25:50 UTC
Repro

Arch Linux 64-bit
Version: 7.2.0.0.alpha0+ / LibreOffice Community
Build ID: 5800a15e0f2d668b844f73072dc146fd0e4237bb
CPU threads: 8; OS: Linux 5.11; UI render: default; VCL: kf5
Locale: fi-FI (fi_FI.UTF-8); UI: en-US
Calc: threaded
Built on 11 March 2021
Comment 4 QA Administrators 2023-03-12 03:22:03 UTC Comment hidden (obsolete, spam)
Comment 5 Justin L 2023-05-26 17:40:32 UTC
repro 7.6+
Comment 6 Justin L 2023-05-30 20:26:32 UTC
That's strange. I don't reproduce now. Tried master, 7.6, and 7.0.
Comment 7 Justin L 2023-06-06 14:24:16 UTC
(In reply to Justin L from comment #6)
> That's strange. I don't reproduce now. Tried master, 7.6, and 7.0.
Perhaps I was trying the image itself, and not the caption frame?

In any case, it appears the reason is because of exporting in wrtww8.cxx
        /*
         #i3958#
         The inline elements being export as anchored to character inside
         the shape field hack are required to be wrap through so as to flow
         over the following dummy 0x01 graphic
        */
        if (rFrameFormat.IsInline())
            eSurround = css::text::WrapTextMode_THROUGH;
Comment 8 Commit Notification 2023-06-06 18:24:22 UTC
Justin Luth committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/6e2b10c735381babb1ed5df624462735b84a3c64

tdf#135709 doc import: force dynamic wrap on inline images

It will be available in 7.6.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.