mirror of
https://github.com/tuxbox-neutrino/neutrino.git
synced 2025-08-30 00:41:17 +02:00
fontrenderer: bring RenderString() and getRenderWidth() in line
both functions had slightly different ideas on how wide a string would render, leading to occational off-by-ones and eventually stripped characters git-svn-id: file:///home/bas/coolstream_public_svn/THIRDPARTY/applications/neutrino-experimental@1264 e54a6e83-5905-42d5-8d5c-058d10e6a962
This commit is contained in:
@@ -500,18 +500,18 @@ void Font::RenderString(int x, int y, const int width, const char *text, const u
|
||||
continue;
|
||||
}
|
||||
|
||||
//kerning
|
||||
if (use_kerning)
|
||||
{
|
||||
FT_Get_Kerning(face, lastindex, index, 0, &kerning);
|
||||
//x+=(kerning.x+32)>>6; // kerning!
|
||||
x += (kerning.x) >> 6; // kerning!
|
||||
}
|
||||
|
||||
// width clip
|
||||
if (x + glyph->xadvance + spread_by > left + width)
|
||||
break;
|
||||
|
||||
//kerning
|
||||
if(use_kerning)
|
||||
{
|
||||
FT_Get_Kerning(face,lastindex,index,0,&kerning);
|
||||
//x+=(kerning.x+32)>>6; // kerning!
|
||||
x+=(kerning.x)>>6; // kerning!
|
||||
}
|
||||
|
||||
#ifndef USE_NEVIS_GXA
|
||||
int stride = frameBuffer->getStride();
|
||||
int ap=(x + glyph->left) * sizeof(fb_pixel_t) + stride * (y - glyph->top);
|
||||
@@ -638,10 +638,10 @@ int Font::getRenderWidth(const char *text, const bool utf8_encoded)
|
||||
continue;
|
||||
}
|
||||
//kerning
|
||||
if(use_kerning)
|
||||
if (use_kerning)
|
||||
{
|
||||
FT_Get_Kerning(face,lastindex,index,0,&kerning);
|
||||
x+=(kerning.x+32)>>6; // kerning!
|
||||
FT_Get_Kerning(face, lastindex, index, 0, &kerning);
|
||||
x += (kerning.x) >> 6; // kerning!
|
||||
}
|
||||
|
||||
x+=glyph->xadvance+1;
|
||||
|
Reference in New Issue
Block a user