Created attachment 113248 [details]
Document mit broken arrow
Steps to reproduce:
Open attached document in Impress (was originally .pptx but also works after resave to .odp)
Arrows character look like a strange box in LO Impress.
There should be an arrow character like in MS Powerpoint 2010
Created attachment 113249 [details]
Same document resaved as .odp
Verified that the problem still exists on master (Version: 22.214.171.124.alpha0+
Build ID: 62969accf9c01b71b738424d4d643db8bfaed182 - 09.02.2015)
It is because the Wingdings font is missing in your (presumably Linux) system.
Please do a web search on how to get it on your specific distro. Thanks!
Win 7 Pro 64-bit, LibO Version: 126.96.36.199
Build ID: de093506bcdc5fafd9023ee680b8c60e3e0645d7
Ubuntu 14.10 64-bit
Build ID: 40m0(Build:3)
Ok I understand the problem. But I object that this is not a problem for Libreoffice. Those are very commonly used "characters" in presentations (at least in academia) and they look really ugly in Libreoffice. There should be some compatibility by default. To legally obtain the Microsoft font you need a Windows license and not everybody has one.
This prevents a lot of people from using Ubuntu + Libreoffice because presentations look bad. The alternative would be using "->" but that looks bad so people tend to use some arrow characters.
Requesting developer input.
(In reply to Jan from comment #4)
>... I object that this is not a problem for
> Libreoffice. Those are very commonly used "characters" in presentations (at
> least in academia) and they look really ugly in Libreoffice. There should be
> some compatibility by default.
There is. But when fonts are not embedded into the original MSO/OOXML document (oversight, or lack of licensing) it is incumbent on the user to change the font to appropriate alternative that is available on their system. Lack of Winding fontfamily on non-MS Windows systems is NOT a LibreOffice responsibility.
LibreOffice deploys the FOSS OpenSymbol work alike which can reliably substitute for unavailable MS Winding and Symbol fonts.
In LibreOffice, from Tools -> Options -> Fonts in the Replacement Table panel create replacements for MS fonts. Enter Symbols, Windings, Windings2 and Windings3 (the left column: Font) with OpenSymbol (the right column: Replace with). Each requires an entry and check button action to add each substitution table, and then check the "Apply replacement table", and OK to complete the dialog. The Winding and Symbols glyphs will be replaced by their OpenSymbol equivalents.
Alternatively, and in this specific case--most of the foundries installed with LibreOffice actually provide a comparable text arrow glyph (U+2192) as used in the slide.
Fortunately, adjusting them one-off is simple and done by selecting the incorrect glyph place holder and picking a suitable substitute font from available foundries visually displayed in the Special Character dialog--the capital Omega button.
Believe any of these fonts provide comparable appearance to the MS Wingdings arrow.
Gentium Book Basic
Source Sans Pro Semibold
(In reply to V Stuart Foote from comment #6)
Still not convinced. I see at least two workarounds: 1. Install font 2. Substitute font. It tested 2 and it works. I don't see how a workaround should fix a bug.
Nevertheless, why is this not enabled by default? New (non-windows) users do not know about this and its pretty common that people use Webdings/Wingdings in presentations. What discourages us adding this as default behaviour if the original font is missing? It would create a lot better Libreoffice experience for most (non-windows) Impress users.
Those are not workarounds, and this is not a bug as the feature functions as designed, and tools are provided to handle incompatible systems.
But, it is not an unreasonable request for enhancement. Technically feasible, but could have annoying UX impact. Folks would complain equally loud, or louder, if the default behavior were to become an unsolicited change from expected fonts--corruption!
We will need to flesh out which font families as candidates for substitution. And decide on rules for when multiple fonts are missing. Some, MS Symbols, Wingdings would with OpenSymbol are pretty obvious. What others?
Setting as enhancement, and over to ux-advise.
I believe we do automatically substitute Liberation Serif for Times New Roman when its not available on a user's system, so doing the same for Webding/Wingding would also be useful.
I digged around in the source code and found unotools/source/misc/fontcvt.cxx. It actually replaces Webdings, Wingdings, Wingdings2, Wingdings3 (among others) to StarSymbol. Unfortunately, I do not have StarSymbol and it is probably very old. They even mentions OpenSymbol in the comments at the beginning. Looks like a point to start with.
Migrating Whiteboard tags to Keywords: (needsDevEval)
We're replacing our use of the 'ux-advise' component with a keyword:
Component -> LibreOffice
Add Keyword: needsUXEval
From the mentioned fontcvt.cxx:
//These conversion tables were designed for StarSymbol. OpenSymbol
//originally didn't have the same code points as StarSymbol, and
//then gained some extra code points, but there are still potentially
//various holes in OpenSymbol which were filled by StarSymbol, i.e.
//destination mapping points which are empty in OpenSymbol
// note: the character mappings that are only approximations
// are marked (with an empty comment)
Noel, can we go ahead and switch to OpenSymbol?
(Doesn't solve the Wingdings issue but that's a WF for me)
(In reply to Heiko Tietze from comment #14)
> Noel, can we go ahead and switch to OpenSymbol?
I'd say that is reasonable, but you'd need to check that OpenSymbol currently has at least the code points that StarSymbol has or we're going to have regression complaints :-(
There's a bunch of code in LibreOffice that's supposed to make this "just work".
If I cut and paste the  missing symbol character from impress to writer, select it and in the font name widget in the toolbar hit return there, then it reformats as a proper bullet. So I think its just that in this specific case its not working for some reason
So let's resolve this issue as font substitution is working in principle.