8

TScaledLayout と fmx のビットマップ スタイル デザイナーから作成されたカスタム スタイルを組み合わせると、ペイントの問題が発生します。

実演するために、ビットマップ スタイル デザイナーで [VCL/FMX の新しいスタイル] -> [.style として保存] を選択して作成された既定のカスタム スタイルを読み込みました。いくつかの色付きの四角形にいくつかの標準コントロールをドロップしました。赤と緑のものは TScaledLayout に、青のものはフォームに直接配置しました。フォームを拡大すると、ScaledLayout のコントロールに色付きの線が表示されます。背景が部分的に表示されます:

引き伸ばされたコントロールのペイントの問題

設計時の寸法と正確に一致するようにフォームのサイズを変更すると、線が消えます。それはかなり重大な問題のように思えます。確かに、この 2 つをそのように一緒に使用することはできません。考えられる修正または回避策のアイデアはありますか?

4

1 に答える 1

0

これは、スケーリングとビットマップに関する既知の問題のようです。こちらの Google+ ディスカッションを参照してください - https://plus.google.com/+PaulThornton/posts/ACAHkJD3a84。マルコ・カントゥの考えを引用します。

内部で報告された同様のケースの問題を見つけましたが、このシナリオに一致する問題は見つかりませんでした。確かに質の高いポータルに追加する価値があります. そうは言っても、ビットマップベースの操作とスケーリングは実際にはあまりうまく適合しておらず、すべてを網羅するソリューションを用意するのは難しいのではないかと心配しています。

例を挙げて説明しましょう。ボタンを取ります。これは FMX によって 9 つのセクション (境界線、角、中央部分) で描画されるため、サイズに関係なく、ビットマップ要素は最大で 1 方向に引き伸ばされ、多くの場合は単に描画されます。ボタンの 1 つのビットマップをターゲット サイズに引き伸ばすと、アンチエイリアシングが壊れ、色を使用するときにぼやけた画像が作成されます。

これは、完全な最終イメージを取得して変換すると、ScaledLayout で何が起こるかの例です。ScaledLayout はもともとベクター スタイルで導入され、そのシナリオで非常にうまく機能しました。今日のビットマップ スタイルでは、物事はもう少し複雑になります。

問題が存在するというこの説明に関係なく、QC で報告することをお勧めします。設計どおりにクローズされないようにします (自然に発生する可能性があります。これがシステムのしくみです)。問題に対処するための調査 - これを機能リクエストに変えます。

于 2015-11-05T12:56:10.057 に答える