Dompdfを使用してHTMLページをPDFに変換しています。クライアントの要件として、PDFにはドキュメントの背景に透かし画像が必要です。私はコーディングで多くの方法を試しましたが、異なるcssスタイルも試しましたが、役に立ちませんでした。誰かがそれについて何か考えを持っていますか?私を助けてください。
3 に答える
DOMPDF のどのバージョンですか? 0.6.0 リリースでは、固定位置要素を使用して透かしとして機能させることができました。ドキュメントシェルは次のとおりです。
<html>
<head>
<style>
#watermark { position: fixed; bottom: 0px; right: 0px; width: 200px; height: 200px; opacity: .1; }
</style>
</head>
<body>
<div id="watermark"><img src="http://code.google.com/p/dompdf/logo" height="100%" width="100%"></div>
</body>
</html>
ここで例を参照してください: http://eclecticgeek.com/dompdf/debug.php?identifier=f14b0c995add4b6c1ee1d14c0c6a987e
0.5.1 では、body で background-image スタイル宣言を使用できました。スタイリングをあまり制御できないため、特にサイズと不透明度に関連して、画像がドキュメントに表示されるように正確にフォーマットされていることを確認する必要があります。他にも問題がありますが、これは機能します。ドキュメントシェルは次のとおりです。
<html>
<head>
<style>
body { background-image: url(http://www.wolfsrainfans.com/wp-content/uploads/2011/04/Wolfs_Rain__Taboe_by_Nizira_Hathor.png); background-position: bottom right; background-repeat: no-repeat; }
</style>
</head>
<body>
</body>
</html>
ここで例を見てください:http://eclecticgeek.com/dompdf/debug.php?identifier=a05af7b814031ac5460860560a581183
これは、DomPDF を使用してドキュメントをレンダリングするときに遭遇する一般的な問題です。この問題を解決するために、CSS背景画像として使用しようとしている画像をbase64エンコードしてから、このように追加します
url('data:image/jpeg;base64,{base64encodedimage}')
これが役立つことを願っています!
背景画像には絶対パスが必要です
body { background-image: url(https://www.google.cl/images/branding/googlelogo/2x/googlelogo_light_color_272x92dp.png); }