如何在Pango和Mono中设置文件中的字体

时间:2013-05-21 10:43:00

标签: fonts mono cairo pango

我有一个简单的应用程序,用于打印文本并确定其大小(以像素为单位)。

static void Main(string[] args)
{
    Application.Init();

    var screen = Screen.Default;
    var layout = new Pango.Layout(PangoHelper.ContextGetForScreen(screen));

    layout.FontDescription = new FontDescription();
    layout.FontDescription.Family = "Times New Roman";
    layout.FontDescription.Size = Units.FromPixels(18);

    layout.SetText("My Text");

    int width;
    int height;

    layout.GetPixelSize(out width, out height);

    Console.WriteLine("{0} - width:{1} height:{2}", layout.Text, width, height);
    Console.ReadLine();
}

但我想使用自己的字体。如何从文件加载我自己的字体并在Mono的Pango中使用它?

1 个答案:

答案 0 :(得分:0)

简短的回答是:你不能使用Pango卸载的字体。 :(

更长的答案是:你可以,如果你正在使用fontconfig后端(PangoFc; 例如在Linux上)。在这种情况下,您需要先调用一些fontconfig 使用Pango,使字体可用于fontconfig。但是,我没有 认为Fontconfig具有Mono绑定。

所以,我担心你在这里运气不好。