libHaruというライブラリを利用してPDFファイルの作成を行うプログラムの開発中なのですが、テキストを扱うためにフォントを読み込ませようと考えています。libHaruはフォントを読み込むためにファイルパスを要求します。ですが一般的なプログラムでは、フォントのパスではなく名前を指定して処理しますよね? そこで、インストール済のフォント名を指定して、それをファイルパスに変換してライブラリに渡すことを考えたのですが…
非常に面倒
(日本語)フォント名を英語名に変換(GDI+を利用、ここだけC++で記述)
英語名を元にレジストリを検索し、ファイル名と番号を取得する
ファイル名を絶対パスに変換
動くようにはなったのですが、この部分だけで50行を超えて、保守が大変です。こんな回りくどい方法ではなく、もっと楽な方法やAPIがあるはずなのですが、自力では見つけられなかったので、ご存じの方、ご教授願います。
環境はWin10、VS2015、ネイティブC++です。
追記:非公開のAPI(特に、GetFontResourceInfoW)の使用はナシでお願いします。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/12/08 12:24
2016/12/08 12:37
2016/12/08 13:28
2016/12/09 00:55
2016/12/09 02:05
2016/12/12 15:33