Font Fallback

Text Drawing Font

Draws multilanguage text with font fallback support.

Сode Snippet

using (var bitmap = new Bitmap(400, 200, PixelFormat.Format24bppRgb, RgbColor.White))
using (var graphics = bitmap.GetAdvancedGraphics())
{
    var fontRegistry = new CustomFontRegistry();

    var lobsterPsName = fontRegistry.Add("Lobster.ttf");
    var arialUnicodePsName = fontRegistry.Add("ARIALUNI.TTF");

    fontRegistry.FallbackFonts.Add(arialUnicodePsName);

    graphics.FontRegistry = fontRegistry;

    var dummyText = "Lorem ipsum dolor sit amet, ex mel latine pertinax. 載自大制節規信兵著旋避漂。";

    var boundedText = new BoundedText(dummyText, graphics.CreateFont(lobsterPsName, 32f), new SolidBrush(RgbColor.Black))
    {
        Rectangle = new System.Drawing.RectangleF(20f, 20f, 360f, 360f),
    };

    graphics.DrawText(boundedText);

    bitmap.Save("FontFallback.png");
}

Input

Lobster.ttf

Download

ARIALUNI.TTF

Download

Output

FontFallback.png

For AI-assisted development: Download Graphics Mill Code Samples XML Catalog