4D-jp 4D Japan Technical Support Team

マルチスタイルテキストのフォントサイズ

2021-03-24

Windows版のマルチスタイルテキストのコンテキストメニューでフォントサイズ(たとえば15)を選択した場合,ソースコードのHTMLには別の数値(たとえば20pt)が挿入されます。これは仕様です。 Macでは,フォームのフォントサイズとspanに書き込まれるフォントサイズの値が一致しますが,Windowsでは72/96倍の値になります。spanには,4Dのフォントサイズではなく,システムのフォントサイズが記録されるようになっているためです。

フォームのDPIは,プラットフォームに関係なく72です。フォームエディター等でフォントサイズを20(つまり20px)に設定した場合,システムのDPIが72であるMacでは20ptのテキストが表示されますが,システムのDPIが96であるWindowsでは15ptのテキストが表示されます。マルチスタイルテキストのソースコードには,システムのフォントサイズ(Windowsであれば15pt)が記録されることになります。

v12でマルチスタイルテキストが追加されたとき,ソースコードにシステムのフォントサイズを記録することにしたのは,明らかに悪い決定でした。クロスプラットフォームの振る舞いではないからです。しかし,過去のバージョンで作成されたアプリケーションに配慮し,現在も上述したような仕様となっています。


リンク