6

私はこれに少し困惑しています。私は JS ライブラリである Protovis を使用して SVG ビジュアライゼーションをレンダリングしていますが、これは Chrome と Firefox で完全に機能します。レンダリングされた SVG をサーバーに保存し、PHP 関数を使用して「ギャラリー」ビューで再レンダリングしようとしましたが、Firefox では失敗します。私が見るのはSVGのテキストだけですが、SVGではありません。

次のように、完全な svg コンテンツを保存します。

<svg height="220" width="880" stroke-width="1.5" stroke="none" fill="none" font-family="sans-serif" font-size="10px"><g transform="translate(30, 10)"><line stroke-width="1" 

使ってみまし<object>たが、Firefox が見つからないプラグインをダウンロードするように促すだけです。

FF4 ベータ版では動作しますが、Firefox 3.6 でも動作しない理由がわかりません。これは私があきらめるべきものですか?ここでデモを見ることができます:

http://www.rioleo.org/protoviewer (「ギャラリー」をクリック)

もう一度ありがとう!

4

3 に答える 3

4

インライン SVG は、Firefox で次の 2 つの状況でのみ機能します。

  • Firefox では、実験的なHTML5 パーサーが有効になっています (つまり、4.0 ナイトリーを使用しています)。
  • 解析中のドキュメントは HTML ではなくXHTML ( Content-type: application/xhtml+xml)

別の SVG ファイルがサーバーから送信され、正しい構文を使用してobjectいる限り、Rob が提案したアプローチは機能するはずです。Content-type: image/svg+xml

<object data="foo.svg" type="image/svg+xml" width="400" height="300">

Damian Cugley の記事「SVG: オブジェクトか埋め込みか?」を参照してください。その他のオプションの詳細については、SVGWebを使用してください。

于 2010-12-14T15:16:52.140 に答える
0

この例は、説明に役立つ場合があります。読み込み時の SVG レンダリング サポートと MIME text/html は、ItsNat Java Web フレームワークでサポートされている機能です。とにかく、この JS コードに触発されました。後者は、コンテキスト (PHP) で役立ちます。

于 2011-01-07T08:30:46.423 に答える
0

オブジェクト要素と終了タグで正しい属性を使用していることを確認してください。

<object data="yourimage.svg"></object>
于 2010-12-12T05:09:20.590 に答える