問題タブ [directwrite]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
224 参照

directwrite - DirectWrite API でのソフト ハイフン

サンプル アプリケーション DWriteSimpleHelloWorld では、テキストをレンダリングします

DWrite にHwndRenderTarget-- 事実上、私のアプリケーションのウィンドウに。DrawTextのメソッドでテキストをレンダリングしますID2D1HwndRenderTarget­Web ブラウザでエンティティ (ソフト ハイフンまたは音節ハイフン) を含むテキスト文字列のレンダリングに準拠した動作を期待してい ます。

レンダリングされたフレーズの幅にウィンドウが十分に収まる場合、次のようなテキストが表示されます。

しかし、フレーズの末尾がウィンドウに収まらないようにウィンドウのサイズを変更すると、次のように表示されます。

Web ブラウザーは、最初の行の末尾にハイフンを付けてこのテキストをレンダリングします。

私の目的は、ユーザーDWriteがアプリケーションに長い単語のハイフネーションのヒントを挿入できるようにすることですが\u00AD、「隠された」空白として機能するように見えます。

ソフトハイフンの定義と使用に関する微妙な点について読んだことがあります (たとえば、https://www.cs.tut.fi/~jkorpela/shy.html ) DWrite。 ? もしそうなら、必要に応じて行末にハイフンを生成するハイフネーションのヒントをどのように実装できますか?

文字列のグリフ インデックスを使用して、 のメソッドでwszText_作成されたジオメトリとしてテキストを描画すると、本来の位置にハイフンを含む文字列が表示されることに注意してください。GetGlyphRunOutlineIDWriteFontFace

0 投票する
0 に答える
93 参照

fonts - 一部のフォントの文字間隔がフォント レンダリング間で異なるのはなぜですか?

フォント レンダラーがフォントを処理する方法に大きな違いがあるのはなぜですか? 具体的には、フォントによって文字間隔が異なるのはなぜですか?

たとえば、「Open Sans」の文字間隔がすべての環境でほぼ同じなのはなぜですか? しかし、「Arial」の文字間隔は大幅に異なりますか? 「Arial」フォントには、「Open Sans」にはないメタデータがありますか?

Open Sans、16pt

アリアル、16pt

ありがとう。