0

なぜ System.Drawing.Font を MigraDoc.DocumentObjectModel.Font にキャストできないのか疑問に思っていました。アプリケーションに特定のフォントをロードする必要があります。私はこのようなスタイルでそれをしたい:

PrivateFontCollection pfc;
FontFamily family = LoadFontFamily(@".\fonts\TitilliumWeb\TitilliumWeb-Black.ttf", out pfc);
System.Drawing.Font titilliumWeb = new System.Drawing.Font(family, 11.0f);

style.Font.ApplyFont((MigraDoc.DocumentObjectModel.Font) titilliumWeb);

または、どうにかして MigraDoc フォントを簡単に作成できますか?

MigraDoc にフォントを追加する方法に関するリンクを見つけましたが、あまり役に立ちませんでした http://www.pdfsharp.net/wiki/PrivateFonts-sample.ashx

4

1 に答える 1

0

キャストは、あるクラスが別のクラスから派生したか、インターフェイスを実装している場合にのみ機能します。

Private Fonts サンプルに示されている手法は機能します (現在、WPF ビルドでのみ機能するため、PDFsharp/MigraDoc の GDI+ ビルドを使用する場合は、WFP ビルドに切り替えるだけです)。

必要なフォントを PrivateFontCollection に登録します。スタイル定義でフォント名を指定するだけで、MigraDoc はそのフォントを使用して PDF ファイルを作成します。

于 2013-06-10T11:21:09.940 に答える