2

フォントのExtTextOut関数を使用して、次のテキストをレンダリングしようとしています:Courier New

C₁C₂C²C³

上付き文字は正常に表示されますが、下付き文字はブロックとして表示されます。関数を使用するとDrawText、下付き文字が正常に表示されます。

DrawText内部で を呼び出すという印象を受けましたExtTextOutDrawText下付き文字を表示できるようにするために、文字列の追加処理を実行するのは間違っていますか?

フォントExtTextOutを使用して下付き文字を表示するためにできることはありますか?Courier New

使用するための私のコードはExtTextOut次のようになります。

ExtTextOutW(hdc,x,y,0,0,szText,wcslen(szText),0);
4

2 に答える 2

3

Hans がコメントで指摘したように、DrawText() は現在、フォント リンクを使用して実装されていますが、ExtTextOut() はそうではないようです。

これを確実に機能させたい場合は、おそらく自分でフォントのリンクを行う必要があります。同様の問題を解決する私のコード: TextOutput C++ クラス

于 2011-04-13T08:06:19.213 に答える
1

グリフの代わりに四角形が表示される場合は、使用しているフォントに問題があります。必要なグリフがありません。たとえば、XPでは一般的ですが、チェックするためにもうインストールしていません。Windows の chamap.exe アプレットを使用して、適切なフォントを見つけます。下付き文字 2 は Unicode コードポイント '\x2082' です。

于 2011-04-12T23:12:31.793 に答える