Bug 89491 - FILESAVE DOC Font weights (style) revert to Regular
Summary: FILESAVE DOC Font weights (style) revert to Regular
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
3.6.7.2 release
Hardware: Other All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: filter:doc
Depends on:
Blocks: DOC-Styles
  Show dependency treegraph
 
Reported: 2015-02-20 02:34 UTC by Dag Wieers
Modified: 2022-11-08 03:48 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments
An example file to show the font adornment ("style") gets lost (31.74 KB, application/vnd.oasis.opendocument.text)
2015-02-20 02:34 UTC, Dag Wieers
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dag Wieers 2015-02-20 02:34:03 UTC
Created attachment 113536 [details]
An example file to show the font adornment ("style") gets lost

It appears that font adornments (also called "style" in the GUI, in this case UltraLight) gets lost when the document is saved as a Word DOC document.

To reproduce, open the attached file, save it as a Word DOC document (DOCX has even more issues) and re-open it. You will see that the font is not the original font, and because of that the title stretches over 2 lines and the whole page layout has shifted as a result, covering 4 pages instead of the intended 3 pages.

If you verify the font of style sect0, you will notice that whereas before the font was Helvetica Neue style UltraLight, it has become Hlvetica Neue style Regular (so no adornments).
Comment 1 A (Andy) 2015-02-22 20:08:34 UTC
Is this a misunderstanding from my side?  If I open the attached odt file then it has already four pages and the title is going over two lines.
Comment 2 Dag Wieers 2015-02-23 02:50:00 UTC
Probably because you do not have the Helvetica Neue fonts on your system, and they get replaced by something else.

It will be hard to reproduce anything using font adornments if you don't have the same fonts used from the example.
Comment 3 Robinson Tryon (qubit) 2015-02-26 20:34:00 UTC
(In reply to Dag Wieers from comment #2)
> Probably because you do not have the Helvetica Neue fonts on your system,
> and they get replaced by something else.

Hi Dag,
Some quick searching dug up this page:
http://www.linotype.com/1266/neuehelvetica-family.html

Is there a way for us to test against the Helvetica Neue fonts for free?

> It will be hard to reproduce anything using font adornments if you don't
> have the same fonts used from the example.

Fair enough. Could you please attach screenshots for how the document appears as ODT, DOC, and DOCX?  (Even if we don't have the fonts, I'm interested in seeing how bad the output becomes)
Comment 4 Dag Wieers 2015-02-26 21:51:27 UTC
Right, I didn't think of that. Sorry.

You can see the results online at:

    http://dag.wiee.rs/cv/curriculum-vitae-dag-wieers.pdf
    http://dag.wiee.rs/cv/curriculum-vitae-dag-wieers.odt
    http://dag.wiee.rs/cv/curriculum-vitae-dag-wieers.doc

The PDF shows what it should really look like. But since an incorrect "subfont" (adornment/style) is being used when exported to DOC the dimensions of the font break the title line in two and pushes everything of the first page. (Basically the same thing you see when you don't have that same font)

BTW I do not offer DOCX because it has many other issues that make it worse. DOC is pretty close to the PDF except the title font (because of the adornments issue).

If you like I can make another PDF of the DOC output, but I think you understand the problem now, it is pretty much like it is using the wrong font (even though the correct font is being displayed, but the adornment is incorrect).

PS If you're interested, I generate the FODT (and ODT) file directly from AsciiDoc and use LibreOffice to convert these files to DOC, RTF and PDF.

    http://dag.wiee.rs/cv/curriculum-vitae-dag-wieers.asciidoc
Comment 5 Robinson Tryon (qubit) 2015-02-26 22:02:19 UTC
(In reply to Dag Wieers from comment #4)
> The PDF shows what it should really look like. But since an incorrect
> "subfont" (adornment/style) is being used when exported to DOC the
> dimensions of the font break the title line in two

Hmmm hmmm. Do you think other fonts might show the same behavior?  (I'm not sure about the best way to track down other fonts that have 'subfont' adornments in this fashion...)
Comment 6 Dag Wieers 2015-02-26 22:10:15 UTC
I couldn't find any in my extensive font-list. And at some point in the past the Helvetica Neue fonts were not listed together, but much like other fonts were considered different fonts and had separate entries inside LibreOffice.

I am not sure when that changed, and even whether it was a change to LibreOffice that caused this behavior. I have all LibreOffice versions from 3.5 to 4.4 on my system and only noticed it during the 4.4 development phase. But when I went back and tried it on older LibreOffice versions, I noticed what used to work isn't working anymore.

Maybe a RHEL6 update to a font-library changed the behavior subtly, I really don't know. But as part of this change of behavior the ODF output became different. The font name is no longer different between Helvetica Neue UltraLight and Helvetica Neue Light, but the adornment change from Regular to UltraLight.

I know this explanation sounds strange, but I can prove the fact that the ODF output changed at some point in time because I have older generated ODT files and I had to change the generated FODT to accomodate this change in behavior.
Comment 7 Dag Wieers 2015-02-26 22:13:40 UTC
So I just looked at older FODT files, and this used to work fine:

 <style:font-face style:name="sect0-font" svg:font-family="Helvetica Neue Ultra Light" style:font-family-generic="swiss" style:font-pitch="variable"/>
 <style:font-face style:name="sect1-font" svg:font-family="Helvetica Neue Light" style:font-family-generic="swiss" style:font-pitch="variable"/>
 <style:font-face style:name="sect2-font" svg:font-family="Helvetica Neue" style:font-family-generic="swiss" style:font-pitch="variable"/>

Since some time during 4.4 development (but also with older releases now) I have to generate this:

  <style:font-face style:name="sect0-font" svg:font-family="Helvetica Neue" style:font-adornments="UltraLight" style:font-family-generic="swiss" style:font-p itch="variable" fo:font-weight="100"/>
  <style:font-face style:name="sect1-font" svg:font-family="Helvetica Neue" style:font-adornments="Light" style:font-family-generic="swiss" style:font-pitch= "variable" fo:font-weight="100"/>
  <style:font-face style:name="sect2-font" svg:font-family="Helvetica Neue" style:font-adornments="Regular" style:font-family-generic="swiss" style:font-pitc h="variable"/>

In order to have the old behavior. But converting to DOC now fails to store these adornments (where in the past this was not necessary, because the fontname was sufficient).

Does this make any sense ? :-)
Comment 8 Robinson Tryon (qubit) 2015-02-26 22:25:33 UTC
(In reply to Dag Wieers from comment #6)
> I couldn't find any in my extensive font-list. And at some point in the past
> the Helvetica Neue fonts were not listed together, but much like other fonts
> were considered different fonts and had separate entries inside LibreOffice.

Aha! The plot thickens..

> I am not sure when that changed, and even whether it was a change to
> LibreOffice that caused this behavior. I have all LibreOffice versions from
> 3.5 to 4.4 on my system and only noticed it during the 4.4 development
> phase. But when I went back and tried it on older LibreOffice versions, I
> noticed what used to work isn't working anymore.

Trying to figure out what changed on the system (as it sounds like it's more of a system issue?) sounds like the key here.

(In reply to Dag Wieers from comment #7)
> So I just looked at older FODT files, and this used to work fine:
> 
>  <style:font-face style:name="sect0-font" svg:font-family="Helvetica Neue
> Ultra Light" style:font-family-generic="swiss" style:font-pitch="variable"/>
> ...
> ...But converting to DOC now fails to store
> these adornments (where in the past this was not necessary, because the
> fontname was sufficient).
> 
> Does this make any sense ? :-)

It's at least a place for us to start. Let me see what one of the devs thinks about the change in font behavior.
Comment 9 Dag Wieers 2015-02-26 22:47:28 UTC
Well, the problem is that not that much changes on RHEL6. So if I look at the last font-related changes:

 libobasis4.4-ooofonts-4.4.1.2-2.x86_64        Wed 25 Feb 2015 08:52:32 PM CET
 libobasis4.3-ooofonts-4.3.6.2-2.x86_64        Tue 03 Feb 2015 05:45:32 PM CET
 libobasis4.2-ooofonts-4.2.8.2-2.x86_64        Mon 08 Dec 2014 11:16:00 PM CET
 libXfont-1.4.5-4.el6_6.x86_64                 Tue 18 Nov 2014 08:57:50 PM CET
 fontconfig-2.8.0-5.el6.i686                   Tue 12 Aug 2014 10:25:13 PM CEST
 fontconfig-devel-2.8.0-5.el6.x86_64           Tue 12 Aug 2014 10:18:23 PM CEST
 fontconfig-2.8.0-5.el6.x86_64                 Tue 12 Aug 2014 10:17:10 PM CEST
 libobasis4.1-ooofonts-4.1.6.2-2.x86_64        Tue 29 Apr 2014 10:15:25 PM CEST
 libobasis4.0-ooofonts-4.0.6.2-2.x86_64        Sat 19 Oct 2013 11:22:02 PM CEST
 libobasis3.6-ooofonts-3.6.7.2-2.x86_64        Thu 25 Jul 2013 03:16:24 PM CEST
 libobasis3.5-ooofonts-3.5.7-2.x86_64          Thu 18 Oct 2012 09:56:27 PM CEST
 libobasis3.4-ooofonts-3.4.6-602.x86_64        Wed 14 Mar 2012 09:36:42 PM CET
 libobasis3.3-ooofonts-3.3.4-401.x86_64        Mon 17 Oct 2011 09:17:58 PM CEST
 xorg-x11-font-utils-7.2-11.el6.x86_64         Thu 06 Oct 2011 02:47:25 PM CEST

And I assume that fontconfig is the only one that could make a difference ? But the changelog doesn't really hint at anything:

 * Wed May 21 2014 Akira TAGOH <tagoh@redhat.com> - 2.8.0-5
 - Rename 25-no-bitmap-fedora.conf to 25-no-bitmap-dist.conf. (#1099546)
 
 * Fri Apr 25 2014 Akira TAGOH <tagoh@redhat.com> - 2.8.0-4
 - Fix SIGBUS when the cache directory is on NFS. (#1035416)
 
 * Tue Jun 29 2010 Marek Kasik <mkasik@redhat.com> - 2.8.0-3
 - Modify Nepali orthography
 - Resolves: #586898

Only the very last change could have an impact, I don't think that's it though. What else could influence LibreOffice this way ?
Comment 10 Dag Wieers 2015-02-26 23:19:56 UTC
I am starting to doubt this. Is it possible a fix in LibreOffice was backported to LibreOffice v4.3 and v4.2, and therefore impacted each of these releases in similar ways ?

I found this that seems related:

    https://bugs.documentfoundation.org/show_bug.cgi?id=84095
Comment 11 Robinson Tryon (qubit) 2015-02-27 01:03:46 UTC
(In reply to Dag Wieers from comment #10)
> I am starting to doubt this. Is it possible a fix in LibreOffice was
> backported to LibreOffice v4.3 and v4.2, and therefore impacted each of
> these releases in similar ways ?

It's possible, however you said:

(In reply to Dag Wieers from comment #6)
> ...I have all LibreOffice versions from
> 3.5 to 4.4 on my system and only noticed it during the 4.4 development
> phase. But when I went back and tried it on older LibreOffice versions, I
> noticed what used to work isn't working anymore.

I took that to mean that you'd tested with something from the 3.5/3.6-era, and specific builds that used to work for you are now broken. If that's not what you meant, then please clarify so that we can get something solid and actionable documented for the developers.
Comment 12 Buovjaga 2016-11-15 08:15:40 UTC
(In reply to Robinson Tryon (qubit) from comment #11)
> I took that to mean that you'd tested with something from the 3.5/3.6-era,
> and specific builds that used to work for you are now broken. If that's not
> what you meant, then please clarify so that we can get something solid and
> actionable documented for the developers.

Dag: please reply to this. Setting to needinfo.

Btw. I recommend getting involved with Dutch LibO folks as they are organizing events: https://www.facebook.com/libreofficenl/ You could investigate this bug with them in such an event.
Comment 13 QA Administrators 2017-05-31 10:50:34 UTC Comment hidden (obsolete)
Comment 14 Dag Wieers 2017-06-03 15:18:20 UTC
It is still not working. I test every release up to 5.3 now.

And I provided an example file that showcases the problem, so it is very easy to reproduce this problem. Look at the very first problem description for EXACT instructions to reproduce this yourself.
Comment 15 Buovjaga 2017-06-03 17:27:42 UTC
Yep, we don't need Helvetica Neue installed to see the weights get lost. I edit for example the sect0 paragraph style and observe the style turn to Regular on saving as .doc.

This already happens with 3.6, though.

Dag: looking at your CV, you would be a pretty bad-ass addition to the infrastructure team. So if you sometimes feel like helping out, you can check it out: https://wiki.documentfoundation.org/Category:Infrastructure http://salt-states-base.readthedocs.io/en/latest/

Tested with:

Arch Linux 64-bit, KDE Plasma 5
Version: 5.3.3.2
Build ID: 5.3.3-1
CPU Threads: 8; OS Version: Linux 4.10; UI Render: default; VCL: kde4; Layout Engine: new; 
Locale: fi-FI (fi_FI.UTF-8); Calc: group

Arch Linux 64-bit
Version 3.6.7.2 (Build ID: e183d5b)
Comment 16 Dag Wieers 2017-06-03 18:10:03 UTC
It's possible that my example fails on LibreOffice 3.6, but my workflow is different (we create the exact XML output) and that used to work find as the adornments were just part of the Font name. LibreOffice retained those.

When this didn't work anymore because adornments were additionally supported (differently) I moved to the new way of working, but LibreOffice did not retain this information when converting to DOC.

That is why it stopped working for me somewhere in between versions. But I never used the LibreOffice GUI for this until it started to fail.

Sorry for the confusion.
Comment 17 Dag Wieers 2017-06-03 18:13:29 UTC
See my comment https://bugs.documentfoundation.org/show_bug.cgi?id=89491#c7 for the XML details on how it used to work, and why it started failing since 4.4

Before v4.4 adornments did not exist, it was all based on font names, which worked fine.
Comment 18 QA Administrators 2018-10-06 02:51:00 UTC Comment hidden (obsolete, spam)
Comment 19 QA Administrators 2020-10-07 03:56:29 UTC Comment hidden (obsolete)
Comment 20 wingednova 2020-11-07 15:38:39 UTC Comment hidden (obsolete)
Comment 21 QA Administrators 2022-11-08 03:48:27 UTC Comment hidden (spam)