IMGタグを使用してSVGファイルを表示するモバイルサイトを開発中です。 SVGファイルは約500 KBです。 Android版のFirefoxとChromeでは、画像は問題なくレンダリングされます。しかし、iOS Safariでは疑問符のついた恐ろしい小さな青色のボックスしか表示されません。iOS SafariのSVGファイルサイズ制限
私は、iOSの画像ファイルのサイズに制限があることを認識しています。 AppleのSafari Web Content Guideによると:
復号化されたGIF、PNG、およびTIFF画像の最大サイズは256 MB未満のRAMを持つデバイスのための3メガピクセルおよび以上より256 MBのRAMを持つデバイスのための5メガピクセルです。
つまり、RAMの容量が256 MB未満のデバイスでは、幅*高さが3 * 1024 * 1024であることを確認してください。デコードされたサイズは、画像の符号化されたサイズよりはるかに大きいことに注意してください。
私はSVGファイルのサイズには限界があると想像していますが、ベクトル化されているので、デコードされたピクセルの観点からサイズを記述するのは実際には意味がありません。誰もSVGファイルの制限がどのように決定されているか知っていますか?
P.S. HTMLページではなくSVGファイルを直接ブラウズすると、画像を見ることができます。私はIFRAME内のSVGファイルを見ることもできます。しかし、IMGタグを使用していません。
シーンの裏側では、ブラウザはベクトルをレンダリングし、画像タグを持つビットマップとして扱うため、同じ制約が適用されます。あなたのSVGの寸法は?あなたのSVGの中にdata-urisを埋め込んでいますか? – Duopixel
私の場合、レンダリングされたSVGファイルのサイズは、ビューポートの寸法から決定されます。 iPhoneでは、600x600のようなものになります。 iPadでは、1500x1500のようになります。私の計算では、これらの次元はまだ私が上に掲げた限界に従っています。 –
ええ、それらの次元はあなたを困らせてはいけないので、それを捨てることができます。しかし、ベクトル画像の場合は500KBが余りにも多いですが、ビットマップ画像が埋め込まれていますか? – Duopixel