Bug 32665 - missing glyph symbol shown when toggling bold/italic for Sinhala text
Summary: missing glyph symbol shown when toggling bold/italic for Sinhala text
Status: CLOSED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: LibreOffice (show other bugs)
Version:
(earliest affected)
3.3.0 RC2
Hardware: Other Linux (All)
: medium critical
Assignee: Caolán McNamara
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-12-26 10:02 UTC by Danishka Navin
Modified: 2011-12-19 04:22 UTC (History)
2 users (show)

See Also:
Crash report or crash signature:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Danishka Navin 2010-12-26 10:02:06 UTC
I have found this bug on OO.org (latest build for Fedora 14 )

How to reproduce:

01: Open the writer
02: press CTRL+Space and enable iBus
03: type some Sinhala characters 
04: Bold or Italic part of the Sinhala text

You can notice that some the text you intended to bold converting to boxes instead of bold/italic text. 

Two solutions:

A: 

Highlight those boxes, and select the LKLUG ( Sinhala font) from the font list

B:

 Tools > Options > Languages

Set the CTL value from 'Hindi' to 'none'  

due to this bug we can't use writer for day to day work.
Comment 1 Jan Holesovsky 2010-12-28 05:46:18 UTC
Caolan: Any idea, please?
Comment 2 Caolán McNamara 2010-12-29 12:43:16 UTC
Sounds like glyph substitution problems really, with a font that doesn't have true bold/italic variants so they need faking up and something is going awry.

What's the font, and what's the locale, and give me some sample text.

i.e. 

a) output of "locale"
b) and what does it say in format->character under "CTL font" when the error exists
c) and some sample text ?, would it be possible to just create a document which displays the error and attach it here

For me locally if I launch from a si_LK locale then I already get LKLUG as my default font, and turning on bold/italic works fine. Launching from hi_IN and I get Lohit Devanagari as my default font, and bold/italic apparently works as well with that font.
Comment 3 Caolán McNamara 2011-02-15 12:18:35 UTC
This one is due to a font (FreeSerif) having normal but not bold and italic versions of the glyph which confuses the glyph substitution implementation.
Comment 4 Harshula Jayasuriya 2011-08-30 01:43:08 UTC
Just confirming what Caolán said. In addition, note that the GNU FreeSerif Bold contains bold Sinhala glyphs in the CVS version. This should be resolved when the next version of GNU FreeFont is released.

More generally, there is a problem with OOo/ICU. A font which does not have a corresponding Bold TTF (e.g. LKLUG) will be auto-magically bold'ified by OOo/ICU. However, if the font has a corresponding Bold TTF but if it doesn't contain the corresponding glyphs then rectangles appear. Can OOo/ICU be made to auto-magically bold'ify glyphs in the latter case?

Anything is better than rectangles ...
Comment 5 Caolán McNamara 2011-08-30 02:05:32 UTC
Should recheck this, I did some rework of the text rendering to only have the one cairo-rendering code path, which might make it a bit easier. Catch is that the code just doesn't expect to ask fontconfig for a replacement for a glyph, and appear to get the same font back. With the rework it might be possible to fix this assumption.

icu is blameless FWIW wrt. to emboldening, though FreeSerif/FreeSans does break "vanilla" icu and MacOSX's font library in other more interesting ways. i.e. http://bugs.icu-project.org/trac/ticket/8320 and https://bugs.freedesktop.org/show_bug.cgi?id=37035