Android NinePatch画像は、追加情報を含む標準の .png ファイルのようです。他のプラットフォームでこれを実装できるようにしたいので、フォーマットの仕様はどこにありますか?
7 に答える
これは、この件に関して私が見つけた最も簡単なリンクです。
画像ビューアで9 パッチ画像を見てください。これは、ストレッチ可能な領域に隣接する黒いピクセルと、静的な部分を示す透明なマーキングを備えた単なる 1 ピクセルの境界線です。
この画像を拡大すると、伸縮可能な領域を示す黒い境界線が表示されます。
例 http://web6.twitpic.com/img/91916457-a53b6866db73378bda07c039151c69aa.4bd6119a-full.png
いくつかの理由から、他のプラットフォームに9patchシステムを実装しないことを強くお勧めします。
私はAndroidの開発者ツールを1年間使用しており、9patchファイルを多用しています。
彼らは悪夢です。PNGはデータ形式ではなく、画像形式です。.9.pngファイルで2つを混在させると、問題が発生します。
9patchファイルは、画像とデータの形式を1つのファイルにまとめたものであり、設計者や開発者が完全に管理することはできないため、お勧めできません。
9つのパッチファイル:メンテナンス、サポート、および更新フェーズのある時点で、関与したことを後悔します。
おそらく、将来、9patchファイルのサポートが多くの高品質ツールに追加された場合(たとえば、PS CS4は9patchファイルを特定の形式として理解せず、有効な9つのパッチ形式のルールを尊重しません)。
9つのパッチファイル用の既存のツールはひどいです-私が雇ったほとんどのデザイナーの意見では本質的に使用できません。
このリンクは、Android の 9 つのパッチ イメージに非常に役立ちます。
アンドロイドで非常に便利な例です。.9 パッチの PNG ファイルのみを使用してください。
http://blogingtutorials.blogspot.com/2010/12/android-nine-patch-example.html
このリンクは非常に便利であることがわかりました: link to blog post。9 パッチの作成時に定義されるさまざまな境界線の例をいくつか使用します。画像の寸法 (x,y) をスケーリングする際に追加情報がどのように使用されるかを示します。
最後に、Richard L. による素敵なコメントもあります。これは、境界線に切れ目を含めることで、画像のスケーリングから保護する領域を追加する方法を述べています。例えば。画像内のセクションをスケーリングしません。
最新のブラウザーは、CSS 9 パス ベースの背景をサポートしています: http://www.css3.info/preview/border-image/
9 パッチ ファイルの拡張子が xxx.9.png ではなく、xxxx.9 であることを理解するのに少し時間がかかりました