SVGグラフィックをFiremonkeyアプリにロードするためにどのような道を行くべきか?
-
26-10-2019 - |
質問
SVGグラフィックをDelphiアプリケーションにロードできると考えることができる約4つの実装があります。
そのうちの一人、マティアス・アンダーソンによる著者である fmx.canvas.vpr, 、Firemonkeyで動作しますが、彼はまだコードをリリースする準備ができていません。
2番目のもの、 マーティン・ウォルター, 、VCLと協力していますが、開発者はDelphiを辞めており、Firemonkeyに変換する予定はありません。
3番目のもの、の一部 アグパス フレームワークは、VCLで動作しますが、Firemonkeyはありません。
4番目のものはジェイソンサウスウェルによる開発中ですが、日付はまだ修正されていません。
だから私の質問:5回目の(そしておそらくそれ以上の)時間をホイールを再発明しようとせずに、今日SVGコンポーネントが必要な場合、どの道をとるべきか?
解決
私が取り組んできたSVGコンポーネントは、FiremonkeyのApesuiteの一部としてリリースされました。
他のヒント
私はMattias Anderssonです-FMX.Canvas.VPRの著者。私はまだSVGソリューションに積極的に取り組んでいると言えます。グラデーションとテキストレンダリングのサポートを適切に追加したら、最初のベータバージョンをリリースできると思います。私はtxmldocumentに依存していますが、それはあなたがすることを許可されていること(IMO)に少し制限的であるため、いくつかの回避策を発明しなければなりませんでした(たぶん、自分のXMLクラスをゼロから実装することはより良い選択肢だったでしょう。)また、すべてを正しく機能させるために、Firemonkeyクラスの実行時間パッチングを行う必要がありました。良い部分は、SVGインターフェイス仕様に従って実際に物事を実装していることです。
開発にマティアスアンダーソンに参加することが最良の選択肢です。
- fmx.canvas.vpr マティアス・アンダーソン著は有望に見え、VPRは優れたプロジェクトであることが証明されています
- スプーンで飼育されていません
SVG FireMonkey
コンポーネントは、すぐに使用できるボックスを使用できます(一般的に作成された広範なWeb検索)の時点で利用できます。
使用を検討することもできます Chromiumembeded. 。埋め込みブラウザにSVGをロードするだけです。その後、DelphiコードとJavaScript、HTMLおよびCSSなどを混ぜることができます。
このようにして、クロムに迅速に描画する方法(たとえば、GPU加速度を採用するかどうか)に任せることができます。
適切なSVGサポートが得られ、アプリケーションに簡単に統合でき、柔軟性があり、オンラインで利用できるドキュメントとサンプルコードがたくさんあります。