2017-10-18 18 views
0

私はSVGイメージをXSLTのブロックに収めようとしています。 PNGイメージでは正常に動作しますが、svgイメージを使用するとスケーリングが機能しません。XSLTブロックに外部グラフィックを合わせる

これは私のコードです:

<fo:block> 

    <fo:external-graphic content-height="20mm" content-width="60mm" 
    scaling="non-uniform" src="{@src}"> 

    <xsl:attribute name="src"> 
     <xsl:value-of select="/ush:document/u:test/@src" /> 
    </xsl:attribute> 

    </fo:external-graphic> 

</fo:block> 

これは、それが今どのように見えるかの例です:

Example

誰かが私を助けることができますか?

+0

どうしたらうまくいかないのですか?スクリーンショットを追加して、何が間違っているか説明できますか? –

+0

scaling = "non-uniform"は画像の高さと幅の関係を捨てるので恐ろしいです。本当に歪んだイメージが必要な場合以外は、絶対に使用しないでください。 – Hobbes

+0

@トニーグレイハム画像はボックスの外側にも表示されるボックスには適合しません – Hans

答えて

1

あなたは、画像幅がFOの幅が異なる場合にどうするかを指定する必要があります。外部のグラフィック:

<fo:external-graphic width="60mm" content-width="scale-down-to-fit"/> 

幅がビューポートの幅を指定し、コンテンツの幅は、幅を指定ビューポート内の画像の

+0

こんにちは@hobbesは私の質問を見ます私は画像を追加しました。 – Hans

1

イメージが表のセル内にあるようです。おそらく、テーブルセルに合わせて画像を拡大/縮小したいと考えています:

<fo:external-graphic width="100%" content-width="scale-down-to-fit" src="..."/> 
関連する問題