Rendering the non-breaking space symbol as a blank

This commit is contained in:
Klaus Schmidinger 2008-03-01 10:21:12 +01:00
parent de5e737027
commit 3bd7f7a0e0
3 changed files with 8 additions and 2 deletions

View File

@ -2103,6 +2103,7 @@ Tobias Grimm <tobias.grimm@e-tobi.net>
for fixing a crash in cFreetypeFont::DrawText() if an unknown symbol is encountered
for suggesting that the 'plugins' target in the Makefile should return an error exit
code if one of the plugins failed to compile
for making the non-breaking space symbol be rendered as a blank
Helge Lenz <h.lenz@gmx.de>
for reporting a bug in setting the 'Delta' parameter when calling the shutdown

View File

@ -5689,3 +5689,4 @@ Video Disk Recorder Revision History
- Updated the Turkish OSD texts (thanks to Oktay Yolgeçen).
- The 'plugins' target in the Makefile now returns an error exit code if one of the
plugins failed to compile (suggested by Tobias Grimm).
- Rendering the non-breaking space symbol as a blank (thanks to Tobias Grimm).

8
font.c
View File

@ -4,7 +4,7 @@
* See the main source file 'vdr.c' for copyright information and
* how to reach the author.
*
* $Id: font.c 1.24 2008/02/29 13:35:15 kls Exp $
* $Id: font.c 1.25 2008/03/01 10:19:41 kls Exp $
*/
#include "font.h"
@ -184,6 +184,10 @@ int cFreetypeFont::Kerning(cGlyph *Glyph, uint PrevSym) const
cGlyph* cFreetypeFont::Glyph(uint CharCode, bool AntiAliased) const
{
// Non-breaking space:
if (CharCode == 0xA0)
CharCode = 0x20;
// Lookup in cache:
cList<cGlyph> *glyphCache = AntiAliased ? &glyphCacheAntiAliased : &glyphCacheMonochrome;
for (cGlyph *g = glyphCache->First(); g; g = glyphCache->Next(g)) {
@ -216,7 +220,7 @@ cGlyph* cFreetypeFont::Glyph(uint CharCode, bool AntiAliased) const
}
#define UNKNOWN_GLYPH_INDICATOR '?'
if (CharCode != UNKNOWN_GLYPH_INDICATOR)
return Glyph(UNKNOWN_GLYPH_INDICATOR);
return Glyph(UNKNOWN_GLYPH_INDICATOR, AntiAliased);
return NULL;
}