2016-09-26 5 views
2

私はクロスプラットフォームソリューションのオプションとしてXamarinを調査しています。私たちのために、独自のカスタム対話型コントロールを作成することが重要です。xamarinクロスプラットフォームキャンバス

例(http://devcenter.wintellect.com/jprosise/supercharging-xamarin-forms-with-custom-renderers-part-5)カスタムレンダリングコントロールを作成する方法を見てきました。残念ながら、彼らは基本的に、プラットフォームによって異なる方法でCanvasにレンダリングする方法を示しています。これは私たちには受け入れられません。

各プラットフォーム固有の実装で同じ描画ロジックを記述しなくても、Xamarinのカスタムレンダリングコントロールを作成するための真のクロスプラットフォームの方法はありますか?

答えて

1

https://github.com/praeclarum/NGraphics

NGraphics .NET上のベクトルグラフィックスをレンダリングするためのクロスプラットフォームライブラリです。これは、高品質のネイティブレンダラを使用して、即時および保持モードグラフィックスの両方に統一されたAPIを提供します。

UIウィジェットのクロスプラットフォームレンダリングに使用できます。または、グラフィカルに豊富なインタラクティブなビューの基礎として。あるいは、SVGファイルとPNGファイルを簡単にインポートして書き出すことができます。いずれにせよ、ここで興味深いものが見つかるはずです。

0

もう一つの選択肢は、もっと読むの

NControl/NGraphicsよりも多くの機能を備えていたSkiaSharpことができます。SkiaSharpが実際にどのような力のAndroidを使用している意味でNGraphicsよりはるかに優れている

https://blog.xamarin.com/cross-platform-2d-graphics-with-skiasharp/

をし、クロム。また、ハードウェア/ GPU加速キャンバスとビューがあります。ここにソースリンクがあります:github.com/mono/SkiaSharp

+1

私はSkiaSharpに取り組んでいる主人ですから、私はかなり偏っています。しかし、私はSkiaSharpが実際にAndroidとChromeの能力を利用するという意味で、NGraphicsよりも優れていると信じています。また、ハードウェア/ GPU加速キャンバスとビューがあります。ソースリンクはhttps:// githubです。com/mono/SkiaSharp – Matthew

+1

これをansverに追加します – Greensy

3

私は最近、同じ決断を下さなければなりませんでした。結局、私はSkiaSharpを決めました。

  • SkiaSharpがSkiaライブラリに結合.NETであり、それが元Skiaのドキュメント/例/コミュニティの利益のためにもできます方法でて機能し、このライブラリーの電源を継承
  • SkiaSharpは実際に何を使用していますAndroidとChromeに対応しています。また、ハードウェア/ GPU加速キャンバスとビューがあります。
  • NGraphicsを好む唯一の理由はSVGのサポートだったが、2016年11月にリリースされたバージョン1.55から、SkiSharpは.svgファイルの読み込みをサポートしている。 Xamarin.FormsためとXamarin AndroidとiOSプラットフォームの
  • Xamarinも発表されたライブラリ(SkiaSharpが&レイヤーをビュー)
  • どれXamarin製品はXamarinのウェブサイトやフォーラムやXamarinユーザーコミュニティのGithubを通じてだけでなく、だけではなく、提供するサポートしています。
  • Xamarinを使用すると、将来的にライブラリの開発と改善の機会が増えます。
  • 1人の開発者が、何年もプロジェクトを改善したり維持したりするのが難しい場合があります。
+0

素晴らしい点ですが、OpenGL/DirectXのコンテキストでのハードウェアアクセラレーションを忘れることはありません。 3Dテクスチャを描くために3Dレンダリングと併用することができます...スカイボックスは限界です! :) – Matthew

+0

@マチュー:真。 –

+0

@Matthew、申し訳ありませんが、次の問題に関するご提案はありますか? http://stackoverflow.com/questions/40693821/rendering-svg-with-skiasharp-on-sksurfaceview-issue –