2012-01-12 71 views
5

とにかく私は生成されたPDFの幅と高さを設定できますか?私はPDFの幅と高さをカスタマイズしたいと思います。通常、短期債券用紙のサイズになりますが、どのようにカスタマイズすることができますか?例えば、私は200×500ピクセルのサイズにしたいと言うことができますか?DOMPDFの幅と高さをカスタマイズ

どのようなアイデアをいただければ幸いです。乾杯!

+0

DOMPDFが非常に遅いと、私は[wkhtmltopdf](HTTPSのようなより良いとはるかに高速に代替しようとするあなたをお勧めする:/を/code.google.com/p/wkhtmltopdf/) – greut

+0

私たちが開発しているシステムでは、DOMPDFを使用していますので、私は適合しなければなりません。この1つを心に留めておいても、提案に感謝します。 – unknown

答えて

2

DOMPDFは、設定によって用紙サイズを処理します。

define ("DOMPDF_DEFAULT_PAPER_SIZE", "letter"); 

あなたはそこにすべての使用可能なサイズにリファラができます。

https://github.com/dompdf/dompdf/blob/2eaf8fe0f1c95ab76e7a428a39a54dd240e2b2ec/src/Adapter/CPDF.php#L40

+0

サイズ?私はそこに方法? – unknown

+4

'CPDF_Adapter :: $ PAPER_SIZES ['mysize'] =配列(0、0、...、...);' – greut

+0

ありがとうございました。これを試してください – unknown

6

あなたはDOMPDFを呼び出している配列を渡すことで、DOMPDFコードを変更することなく、独自の書式を設定することができます。 :set_paper()。それはこのように、ポイントでの幅と高さが含まれていることを確認してください:

$dompdf->set_paper(array(0, 0, 595, 841), 'portrait');

+0

配列の最初の2つの値は何ですか? – Sean256

+0

なぜこのようにしたのか分かりませんが、4つの値を合わせて幅と高さを計算します。 このように '$ width = $ size [2] - $ size [0]'と '$ height = $ size [3] - $ size [1]'です。したがって、最初の2つの値を0にするのが最も簡単です。これは、あらかじめ定義されたすべてのページフォーマットで行った方法と同じです。 – Michiel

+1

これは、長方形を描くときの一般的なフォーマットです: '[x1、y1、x2、y2]'。 Michielが言ったように、最初の2つの値を0にしておくべきです: '0,0' –