Windows版のHiDPI対応はまだかなぁ。
4 posters
Windows版のHiDPI対応はまだかなぁ。
最近、お客様がノートブックを購入されるとき、HiDPI対応のものを購入される事がかなり増えてるんですよね。
当然綺麗な文字を期待されてるんですけど、4DはHiDPI対応じゃないので文字がボケボケになっちゃって
ガッカリ。となってしまうんですよね。
正直、アプリケーションの信頼性を疑われるレベルです。
えっ?! まだ対応してないの? 4Dって開発止まってるの? 大丈夫なの?
って。
やっぱりユーザさんに一番インパクトがあるのは見た目ですからねぇ。
対応って、難しいんですかねぇ。
もう、対応していないソフトってかなりまずいと思うんですよ。
まあ、フォントを「自動」にすれば文字は綺麗になるんですけど、システムフォントが変わると
フォントが変わっちゃうんで2の足・3の足を踏んじゃいます。
(どうやれば游ゴシック使ってあんなに見づらくできるんだ!)
当然綺麗な文字を期待されてるんですけど、4DはHiDPI対応じゃないので文字がボケボケになっちゃって
ガッカリ。となってしまうんですよね。
正直、アプリケーションの信頼性を疑われるレベルです。
えっ?! まだ対応してないの? 4Dって開発止まってるの? 大丈夫なの?
って。
やっぱりユーザさんに一番インパクトがあるのは見た目ですからねぇ。
対応って、難しいんですかねぇ。
もう、対応していないソフトってかなりまずいと思うんですよ。
まあ、フォントを「自動」にすれば文字は綺麗になるんですけど、システムフォントが変わると
フォントが変わっちゃうんで2の足・3の足を踏んじゃいます。
(どうやれば游ゴシック使ってあんなに見づらくできるんだ!)
内山 高志- 投稿数 : 37
登録日 : 2016/07/13
Re: Windows版のHiDPI対応はまだかなぁ。
個人的には5年前くらいからお願いしていますが、反応が芳しくないので無理なんでしょうね。
hosaka- 投稿数 : 241
登録日 : 2016/07/04
所在地 : 大阪
Re: Windows版のHiDPI対応はまだかなぁ。
hosakaさん白石さん、返信ありがとうございます。
32bitはAluturaの関係があって難しいのは分かるんですけど、64bitならAltura Freeなので4D社の伝統の「自社開発」をしないで、Windows標準のライブラリを使う事で、比較的楽に対応できるんじゃないかな。と思うんですけどねぇ。
リストボックスとかは自社開発だと思うので大変かな、とは思うのですが。
海外では、まだまだ要望が少ないのでしょうか。日本だと海外みたいに「安いのマシンを2・3年で更新」ではなく、4・5年に1回の更新なので「どうせなら4年・5年持つものを」となって、高性能なマシンを選びがちなのも影響してる気もします。
このスレッドをご覧になられた方が「私も!」の一言の返信だけでも付けて頂いて、100とか超えたら、4D Japanの方も本国に押しやすいのかもしれませんね。
皆様、願わくば、ご意見表明を!
32bitはAluturaの関係があって難しいのは分かるんですけど、64bitならAltura Freeなので4D社の伝統の「自社開発」をしないで、Windows標準のライブラリを使う事で、比較的楽に対応できるんじゃないかな。と思うんですけどねぇ。
リストボックスとかは自社開発だと思うので大変かな、とは思うのですが。
海外では、まだまだ要望が少ないのでしょうか。日本だと海外みたいに「安いのマシンを2・3年で更新」ではなく、4・5年に1回の更新なので「どうせなら4年・5年持つものを」となって、高性能なマシンを選びがちなのも影響してる気もします。
このスレッドをご覧になられた方が「私も!」の一言の返信だけでも付けて頂いて、100とか超えたら、4D Japanの方も本国に押しやすいのかもしれませんね。
皆様、願わくば、ご意見表明を!
内山 高志- 投稿数 : 37
登録日 : 2016/07/13
Re: Windows版のHiDPI対応はまだかなぁ。
純粋に技術的な観点からいえば,Win32ではなくWindows Formsであれば,Hi-DPI対応になります。v12-v16R2までかけて進められた,脱・Altura/Windows標準ライブラリに移行する」プロジェクトとHi-DPIに直接的な関連はありません。つまり,完全にゼロからのスタートとなります。
これがいかに大掛かりなことであるのかは,Microsoftも認めており,現実的な見方として「ユーザーの目に触れる主要な画面だけ」をHi-DPIに切り替えて,それ以外はシステムの互換レイヤー(「ぼけぼけな文字」)に依存することを公式に推奨しています。
https://blogs.windows.com/buildingapps/2017/05/19/improving-high-dpi-experience-gdi-based-desktop-apps/
https://blogs.windows.com/buildingapps/2017/04/04/high-dpi-scaling-improvements-desktop-applications-windows-10-creators-update/
https://blogs.windows.com/buildingapps/2016/10/24/high-dpi-scaling-improvements-for-desktop-applications-and-mixed-mode-dpi-scaling-in-the-windows-10-anniversary-update/
なお,64ビット(CEF)版のWebエリアを使用すれば,いまでも4Dで高解像度モードに対応したユーザーインターフェースを表示することができます。
開発部では,もちろん,4DのユーザーインタフェースをWindows Formsですべて作り替えたいと考えています。しかし,フォームをすべてイチからHTMLとJavaScriptで書き換えることが「かなりキビシイ。というか,無理!」なのと同じように,数年かけて作り上げたWindowsネイティブ版の4Dを「放棄」して,Windows Formsでまた作り直すのは,けっこうシビアなチャレンジだと聞いています。
これがいかに大掛かりなことであるのかは,Microsoftも認めており,現実的な見方として「ユーザーの目に触れる主要な画面だけ」をHi-DPIに切り替えて,それ以外はシステムの互換レイヤー(「ぼけぼけな文字」)に依存することを公式に推奨しています。
https://blogs.windows.com/buildingapps/2017/05/19/improving-high-dpi-experience-gdi-based-desktop-apps/
https://blogs.windows.com/buildingapps/2017/04/04/high-dpi-scaling-improvements-desktop-applications-windows-10-creators-update/
https://blogs.windows.com/buildingapps/2016/10/24/high-dpi-scaling-improvements-for-desktop-applications-and-mixed-mode-dpi-scaling-in-the-windows-10-anniversary-update/
なお,64ビット(CEF)版のWebエリアを使用すれば,いまでも4Dで高解像度モードに対応したユーザーインターフェースを表示することができます。
開発部では,もちろん,4DのユーザーインタフェースをWindows Formsですべて作り替えたいと考えています。しかし,フォームをすべてイチからHTMLとJavaScriptで書き換えることが「かなりキビシイ。というか,無理!」なのと同じように,数年かけて作り上げたWindowsネイティブ版の4Dを「放棄」して,Windows Formsでまた作り直すのは,けっこうシビアなチャレンジだと聞いています。
miyako- 投稿数 : 485
登録日 : 2016/07/05
Re: Windows版のHiDPI対応はまだかなぁ。
miyako wrote:純粋に技術的な観点からいえば,Win32ではなくWindows Formsであれば,Hi-DPI対応になります。
いまからだとUWP(Universal Windows Platform)じゃないのでしょうか。その為に4DのフォームをXMLで記述できる様にしているのだと思いましたが...
hosaka- 投稿数 : 241
登録日 : 2016/07/04
所在地 : 大阪
Re: Windows版のHiDPI対応はまだかなぁ。
>つまり,完全にゼロからのスタートとなります。
うわー。
そうだったんですね。
そうなると、当面HiDPI対応は難しいのですね。。。
なんてこった。
なにやってんだMicrosoft!
うん。であれば、これからはWindows10ですし、多分、何年かはシステム標準フォントも変わらないでしょうから、フォント指定を自動でやってみるようにします。
対応がしばらく難しい事が分かれば、そういう説明がお客様にできます。
ありがとうございます。
>いまからだとUWP(Universal Windows Platform)じゃないのでしょうか。...
それもありですね。
もし、現在のフォームがそれなりに移行できるのであれば、ガンバッテ変更対応をする
価値があるかもしれません。
でも、かなり変更が必要な気がします。。。
そもそも、Microsoftがまた、「やーめた。」とか言い出さないか心配です。
うわー。
そうだったんですね。
そうなると、当面HiDPI対応は難しいのですね。。。
なんてこった。
なにやってんだMicrosoft!
うん。であれば、これからはWindows10ですし、多分、何年かはシステム標準フォントも変わらないでしょうから、フォント指定を自動でやってみるようにします。
対応がしばらく難しい事が分かれば、そういう説明がお客様にできます。
ありがとうございます。
>いまからだとUWP(Universal Windows Platform)じゃないのでしょうか。...
それもありですね。
もし、現在のフォームがそれなりに移行できるのであれば、ガンバッテ変更対応をする
価値があるかもしれません。
でも、かなり変更が必要な気がします。。。
そもそも、Microsoftがまた、「やーめた。」とか言い出さないか心配です。
内山 高志- 投稿数 : 37
登録日 : 2016/07/13
Re: Windows版のHiDPI対応はまだかなぁ。
現状でもやりようによっては対応可能だと思います。
プロパティに下記の設定がありますので、チェックを入れるとHiDPIに合わせてくれます。
そのままだと小さく表示されるだけですが、その比率に合わせて各フォームオブジェクトを拡大するだけです。
下記はv15の時に検証したサンプル画面ですが、一応表示だけは対応できました。※プラグインなどの表示は除く。
当時宮古さんに提案してみたのですが、「正式な対応でないと...」とあまり良い返事は頂けなかったものです。
問題点としては、
1.座標系がリサイズ分大きくなります。またオブジェクトやフォンも座標とサイズをリサイズする必要があります。
※ただしスタイルシートを自動系にするとOS側が自動的にリサイズしてくれました。
なので、アラートダイアログの文字列やメニューなどは自動でリサイズしてくれています。
2.標準のアラートダイアログやエクスプローラなどが対応できない
※フォントは自動で調整している様なのですが、ウィンドウサイズが元のままです。
エクスプローラや、ツールバーなどは、表示が小さいままになります。
3.画像関係は、 SVGではないかぎり表示が荒くなる
などです。このあたりの調停を4D側で行ってもらえれば、なんとかなると思うのですが...正式対応が難しいのであれば再度検討して欲しいです。
プロパティに下記の設定がありますので、チェックを入れるとHiDPIに合わせてくれます。
そのままだと小さく表示されるだけですが、その比率に合わせて各フォームオブジェクトを拡大するだけです。
下記はv15の時に検証したサンプル画面ですが、一応表示だけは対応できました。※プラグインなどの表示は除く。
当時宮古さんに提案してみたのですが、「正式な対応でないと...」とあまり良い返事は頂けなかったものです。
問題点としては、
1.座標系がリサイズ分大きくなります。またオブジェクトやフォンも座標とサイズをリサイズする必要があります。
※ただしスタイルシートを自動系にするとOS側が自動的にリサイズしてくれました。
なので、アラートダイアログの文字列やメニューなどは自動でリサイズしてくれています。
2.標準のアラートダイアログやエクスプローラなどが対応できない
※フォントは自動で調整している様なのですが、ウィンドウサイズが元のままです。
エクスプローラや、ツールバーなどは、表示が小さいままになります。
3.画像関係は、 SVGではないかぎり表示が荒くなる
などです。このあたりの調停を4D側で行ってもらえれば、なんとかなると思うのですが...正式対応が難しいのであれば再度検討して欲しいです。
hosaka- 投稿数 : 241
登録日 : 2016/07/04
所在地 : 大阪
Re: Windows版のHiDPI対応はまだかなぁ。
なるほど!
そういう方法もあるのですね!
各倍率ごとにフォームを用意するイメージでしょうか。
お客様に100%満足はして頂けないでしょうが、「こういう方法もありますが。。。」という提案はできますね。
あとは、手間分の費用をご納得頂ければ。ですね。
ありがとうございます。
そういう方法もあるのですね!
各倍率ごとにフォームを用意するイメージでしょうか。
お客様に100%満足はして頂けないでしょうが、「こういう方法もありますが。。。」という提案はできますね。
あとは、手間分の費用をご納得頂ければ。ですね。
ありがとうございます。
内山 高志- 投稿数 : 37
登録日 : 2016/07/13
Re: Windows版のHiDPI対応はまだかなぁ。
内山 高志 wrote:なるほど!
そういう方法もあるのですね!
各倍率ごとにフォームを用意するイメージでしょうか。
お客様に100%満足はして頂けないでしょうが、「こういう方法もありますが。。。」という提案はできますね。
おはようございます。
サンプルで作ったのは動的にフォームをリサイズしています。いろいろと制約はありますが...
処理はすでに用意されている4Dのコマンドだけでできました。
フォームのオブジェクトの位置と大きさを変更しているだけなので元々の処理には影響しないと思います。
画面の座標でなにか処理している場合は例外です。
なのでHiDPIだけでなくエンドユーザーの要望(老眼で小さい文字が見えないなど)で少し画面を大きくしたいとかにも対応できると思います。
改めて用意する必要があるものといえばアイコンなどの画像関係くらいでしょうか。
hosaka- 投稿数 : 241
登録日 : 2016/07/04
所在地 : 大阪
Re: Windows版のHiDPI対応はまだかなぁ。
レスありがとうございます。
>サンプルで作ったのは動的にフォームをリサイズしています。いろいろと制約はありますが...
なるほど。自動リサイズですか。
それならば、1回作ってしまえば、応用が利きますね。
「どうしても」の時に使わさせて頂きます。
ありがとうございます!
>サンプルで作ったのは動的にフォームをリサイズしています。いろいろと制約はありますが...
なるほど。自動リサイズですか。
それならば、1回作ってしまえば、応用が利きますね。
「どうしても」の時に使わさせて頂きます。
ありがとうございます!
内山 高志- 投稿数 : 37
登録日 : 2016/07/13
Re: Windows版のHiDPI対応はまだかなぁ。
おおっ。
少しずつではありますが、改善している様ですね。
とはいえ、まだまだ工夫が必要そうですね。
ちなみに、1つ前に投稿して頂いたDPI取得プラグインは4D Japanさんから頂けるものなのでしょうか?
(すいません。1つ前の投稿を見逃しておりました。投稿ありがとうございます。)
少しずつではありますが、改善している様ですね。
とはいえ、まだまだ工夫が必要そうですね。
ちなみに、1つ前に投稿して頂いたDPI取得プラグインは4D Japanさんから頂けるものなのでしょうか?
(すいません。1つ前の投稿を見逃しておりました。投稿ありがとうございます。)
内山 高志- 投稿数 : 37
登録日 : 2016/07/13
Re: Windows版のHiDPI対応はまだかなぁ。
内山 高志 wrote:ちなみに、1つ前に投稿して頂いたDPI取得プラグインは4D Japanさんから頂けるものなのでしょうか?
(すいません。1つ前の投稿を見逃しておりました。投稿ありがとうございます。)
例によって例のごとく、宮古さんのプラグインです。
https://github.com/miyako/4d-plugin-get-dpi-v2
hosaka- 投稿数 : 241
登録日 : 2016/07/04
所在地 : 大阪
Re: Windows版のHiDPI対応はまだかなぁ。
システム(拡張)の件で追記です。
仕組みとして何をやっているのかしらべてみました。
API経由で描画する際にAPI側で調整するらしいです。条件は手動でシステム(拡張)にする事とGDIで描画する事なのだとか....
SET DATABASE PARAMETERにたしかそれに関する設定があったのを思い出して→いじくってみました。
SET DATABASE PARAMETERのDirect2D statusを0にすると幸せになれそうな感じです。
仕組みとして何をやっているのかしらべてみました。
API経由で描画する際にAPI側で調整するらしいです。条件は手動でシステム(拡張)にする事とGDIで描画する事なのだとか....
SET DATABASE PARAMETERにたしかそれに関する設定があったのを思い出して→いじくってみました。
SET DATABASE PARAMETERのDirect2D statusを0にすると幸せになれそうな感じです。
hosaka- 投稿数 : 241
登録日 : 2016/07/04
所在地 : 大阪
Re: Windows版のHiDPI対応はまだかなぁ。
4D Write Proはこのモードでは動作しないみたいです。
あと上の方で語られているHiDPI対応するには一から作り直すはなしですが、おそらく間違いではないかと思います。
GDI/GID+と違いDirect2D自体はHiDPIへの対応がなされているようなので設定しだいでどうにでもなるのでは?
あと上の方で語られているHiDPI対応するには一から作り直すはなしですが、おそらく間違いではないかと思います。
GDI/GID+と違いDirect2D自体はHiDPIへの対応がなされているようなので設定しだいでどうにでもなるのでは?
hosaka- 投稿数 : 241
登録日 : 2016/07/04
所在地 : 大阪
Re: Windows版のHiDPI対応はまだかなぁ。
今日の補足。hosaka wrote:4D Write Proはこのモードでは動作しないみたいです。
今日リリースされた17.1なら問題ないみたいです。17R4はダメみたいです。
16.4でも有効でした。
ウィンドウを左から右へ移動した場合の更新に失敗するみたいです。←ここだけ直してくれないかな
hosaka- 投稿数 : 241
登録日 : 2016/07/04
所在地 : 大阪
Re: Windows版のHiDPI対応はまだかなぁ。
>SET DATABASE PARAMETERのDirect2D statusを0にすると幸せになれそうな感じです。
おおっ!
すばらしい!!
v17.1でだいたい解決ですかね!
ちょっと今はキツキツなので厳しいですが、落ち着いたら試してみます!
おおっ!
すばらしい!!
v17.1でだいたい解決ですかね!
ちょっと今はキツキツなので厳しいですが、落ち着いたら試してみます!
内山 高志- 投稿数 : 37
登録日 : 2016/07/13
Re: Windows版のHiDPI対応はまだかなぁ。
ご無沙汰しています。
お気づきのように,現在β公開中のv19 R4でWindows版も高DPIに対応しています。
ブログはR3のβ公開中に公開されましたが,リリース直前に延期となり,R4からの対応となりました。
画像ファイル名の付け方など,有用な情報にリンクしていますので,ぜひ,ブログをご覧ください。
お気づきのように,現在β公開中のv19 R4でWindows版も高DPIに対応しています。
ブログはR3のβ公開中に公開されましたが,リリース直前に延期となり,R4からの対応となりました。
画像ファイル名の付け方など,有用な情報にリンクしていますので,ぜひ,ブログをご覧ください。
miyako- 投稿数 : 485
登録日 : 2016/07/05
Permissions in this forum:
返信投稿: 不可