javafx プログラムでは、次のようなラベルがあります。
<Label style="-fx-font: 25px 'Tahoma';" text="Hello World!!" />
デザイナーからフォント ファミリを変更するように依頼されましたが、非常に簡単です (と思いました)。
<Label style="-fx-font: 25px 'Algerian';" text="Hello World!!" />
問題は、新しいフォントが奇妙なオフセットで画面に表示され、テキストが少し高く表示され、デザインが台無しになることです.
これは、2 つのラベルを並べた出力例です。左側のラベルは Tahoma フォントで問題ないように見えますが、右側のラベルは 'HelveticaNeue' フォントで、ベースラインよりもはるかに高くなっています。
Text コンポーネントを使用して、Label コンポーネントをデフォルトの「LOGICAL」ではなく「VISUAL」に設定された boundsType 属性に置き換えることで、問題を部分的に解決しました。
<Text boundsType="VISUAL" style="-fx-font-family: 'Algerian'; -fx-font-size: 25px;" text="Hellow World!!" />
しかし、システム全体のラベルをテキスト コンポーネントに変更するのは良くありません。また、ボタンやその他のコンポーネント内にラベルがあり、同じ問題が発生し、代替するのが難しい場合があります。
これはこれらのフォントに問題がありますか? 正常に動作するフォント (Arial、Lucida Sans、MS Sans Serif) もあれば、この動作を示すフォント (Algerian、Helvetica) もあります。これらのフォントは OS にインストールされており、これらのオフセットを表示せずに MS Word で使用することもできます。
Text コンポーネントの boundsType 属性と同じことをする Label コンポーネントのオプションはありますか?
誰かが何が起こっているのか知っていることを願っています。