libgdiplus
libgdiplus copied to clipboard
Measure string does not add any extra space at the end of strings
In the documentation of the MeasureString method it says it "includes a small amount of extra space before and after the string". This does not seem to be true for libgdiplus.
The following code:
using var font = new Font("Arial", 12, GraphicsUnit.Pixel);
using var backBuffer = new Bitmap(100, 20);
using (var graphics = Graphics.FromImage(backBuffer))
{
graphics.Clear(Color.White);
var size = graphics.MeasureString("Hello World", font);
var destRect = new RectangleF(0, 0, size.Width, size.Height);
graphics.FillRectangle(Brushes.Red, destRect);
graphics.DrawString("Hello World", font, Brushes.Black, destRect);
}
Renders like this when building with Pango from main:
There is a small amount of white space before the text, but none after.
On Windows with gdiplus there is white space before and after the text: