2016-07-21 5 views
1

ApacheFOPを使用してPDFをレンダリングしています。これらのPDFに私はエッジのSVGを使って丸いBOXを描く:ApacheFOP svgの背景が非常に遅い

トップleft.svgファイルは非常に単純です
<fo:table-cell 
    number-columns-spanned="2" 
    background-image="/images/top-left.svg" 
    background-repeat="no-repeat"> 
     <fo:block/> 
</fo:table-cell> 

<svg width="10px" height="10px" xmlns="http://www.w3.org/2000/svg"> 
    <circle cx="10px" cy="10px" r="9.5px" stroke="black" stroke-width="1px" fill="none" /> 
</svg> 

同じが右上、下のために繰り返されます左下および右下。

問題は、ApacheFOP 0.95からApacheFOP 2.1に更新した後、プロダクションサーバでのレンダリングにSVGごとに15秒かかります。自分のコンピュータで問題を再現できません。

私の開発者デスクトップと本番サーバーの両方でLinuxが実行されています。

SVGレンダリングを非常に遅くするシステム要因はありますか?

おかげ

答えて

1

遅延は、各SVGのDTDスキーマのダウンロードによって引き起こされました。ダウンロードはBarcode4Jで実行されたもので、ApacheFOP自体では実行されなかったため、見つけにくかったです。具体的には、PreloaderSVGの前に呼び出されたSVGを解析しようとしたBarcodePreloaderクラスでした。 DTD宣言をSVGファイルから削除することを一時的に解決しました。

関連する問題