Fix what seems to have been off-by-one errors in glyph bounds calculation
For some reason the error had a visible impact (as far as I an see, anyway) only for Graphite fonts. The bottommost pixels were cut off. (Also leftmost, but that was not so easily visible.) <tools/gen.hxx> Rectangle type, I love you. Change-Id: I6f7438ec21d2bc1b9bef31cd70e649856f7ec7d5
This commit is contained in:
parent
e45d80f20f
commit
03637a75c1
@ -2014,9 +2014,9 @@ bool WinSalGraphics::GetGlyphBoundRect( sal_GlyphId aGlyphId, Rectangle& rRect )
|
|||||||
rRect = Rectangle( Point( +aGM.gmptGlyphOrigin.x, -aGM.gmptGlyphOrigin.y ),
|
rRect = Rectangle( Point( +aGM.gmptGlyphOrigin.x, -aGM.gmptGlyphOrigin.y ),
|
||||||
Size( aGM.gmBlackBoxX, aGM.gmBlackBoxY ) );
|
Size( aGM.gmBlackBoxX, aGM.gmBlackBoxY ) );
|
||||||
rRect.Left() = static_cast<int>( mfCurrentFontScale * rRect.Left() );
|
rRect.Left() = static_cast<int>( mfCurrentFontScale * rRect.Left() );
|
||||||
rRect.Right() = static_cast<int>( mfCurrentFontScale * rRect.Right() );
|
rRect.Right() = static_cast<int>( mfCurrentFontScale * rRect.Right() ) + 1;
|
||||||
rRect.Top() = static_cast<int>( mfCurrentFontScale * rRect.Top() );
|
rRect.Top() = static_cast<int>( mfCurrentFontScale * rRect.Top() );
|
||||||
rRect.Bottom() = static_cast<int>( mfCurrentFontScale * rRect.Bottom() );
|
rRect.Bottom() = static_cast<int>( mfCurrentFontScale * rRect.Bottom() ) + 1;
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user