0

SVG で相対座標を持たなければならないパターンに問題があります。最初に、最新のすべてのブラウザーでうまく機能するように見える patternContentUnits = "objectBoundingBox" を使用しました。ただし、Batik Rasterizer を使用して、ユーザーが SVG を PDF および/または PNG に変換できるようにしたかったのですが、Batik Rasterizer は、SVG から PDF への変換の patternContentUnits = "objectBoundingBox をサポートしていないようです。

<pattern id="Pattern2" x="0" y="0" width="1" height="1" patternContentUnits="objectBoundingBox">
<rect x="0.1" y="0" width="0.33" height="1" style="fill:rgb(39,80,215)"/>
<rect x="0.49" y="0" width="0.47" height="1" style="fill:rgb(11,198,221)"/>
</pattern>

別の方法として、patternContentUnits = "objectBoundingBox" の代わりに viewBox="0 0 1 1" preserveAspectRatio="none" を使用したインターネット投稿を見つけました。このソリューションは、Chrome、IE9、および Batik Rasterizer (!) でもうまく機能します。ただし、Firefox (14) では動作しません。

ここに小さな例をオンラインで掲載しました: http://mgcv.cmbi.ru.nl/example.svg
(最初のものは Chrome、IE9、および Batik Rasterizer で動作しますが、FF14 では動作しません。2 つ目は Chrome、IE9、およびFF14 ですが、Batik Rasterizer にはありません (PDF 変換))

誰か提案がありますか?Viewbox ソリューションを Firefox で動作させることは可能だと思いますか?

4

1 に答える 1

0

これは、現在ベータ版の Firefox 17 で修正される予定です。詳細については、バグ 773467およびバグ 773595を参照してください。

于 2012-10-31T16:42:33.763 に答える