DirectWrite を使用するために、GDI および GDI+ を使用している既存の C++ コードのテキストからビットマップへのレンダリング ルーチンを変換する必要があります (CFF サポートと OTF 機能のサポートが必要です)。
DirectWrite は初めてです。既存の機能の移行に必要なものについての調査に時間を費やし、いくつかのプロトタイプを作成したところ、問題が発生しました。私の問題は、DirectWrite (すぐに使用できる) が文字間隔の調整をサポートしていないことです (これは、既存の機能の要件です)。アプリ)、少なくとも Windows 7 ではありません。Windows 8 に付属していることは知っていますが、残念ながら、この既存のアプリの別の要件は Windows 7 で実行することです。
これまでの調査でわかったことは、カスタム DirectWrite テキスト レイアウトを実装する方法のように見えるということですが、特に文字間隔に関して、これを行う方法に関する適切なガイドラインは見つかりませんでした (ドキュメント/例カスタム テキスト レイアウトの作成方法に関する MSDN は、私の好みでは少しあいまいです)。
ホイールの再発明に数日または数週間の研究開発を費やす前に、これは以前に行われたに違いないと思うので、最初に使用できるカスタム文字間隔を使用した DirectWrite テキストレイアウトのサンプル実装を知っている人はいますか?ポイントまたはチュートリアル?
UPDATE1 : 答えではありませんが、IDWriteTextLayout1 インターフェイス (文字スペースの設定をサポートする) は、Windows 8 だけでなく、Windows 7 の「Windows 7 Platform Update for SP1」(KB 2670838) にも付属していることがわかりました。私の質問には答えませんが、アプリを正しく実行するためにそれを要求することができます。これは私の問題を解決します。