2016-04-19 8 views
0

PHPで書かれており、DOMPDF、FPDF、およびTCPDFを使用してPDFドキュメントをレンダリングしています。PHPを使用してHTMLからPDFを生成する方法(横向き版)

HTMLフォーマットのPDFをレンダリングするスクリプトが、横向きのPDFページの両側でHTMLが繰り返される場所を正確に知っている人はいますか?私は何を意味するかを正確に示すためにイメージを含める。

トリックは、余白が全くなく、最後に書式設定されたレターサイズです。

HTML Rendered two halves of page PDF

ここで働くかもしれないいくつかのコードですが、私は物事のHTML側のより多くのために求めていると思います。

use Dompdf\Dompdf; 

// instantiate and use the dompdf class 
$dompdf = new Dompdf(); 
$dompdf->loadHtml('myFile.html'); 

// (Optional) Setup the paper size and orientation 
$dompdf->setPaper('Letter', 'landscape'); 

// Render the HTML as PDF 
$dompdf->render(); 
+0

StackOverflowは私に*少女のコードを与えません。 ;) –

+0

@JayBlanchard私はこれを実現しましたが、ついに問題を処理しました。私の答えは掲載されています。ところで、私は以前に尋ねられた質問からあなたを覚えています。私のためにありがとう、今でも笑 – NoReceipt4Panda

+0

@JayBlanchard私は別の質問で助けが必要です。あなたが私を助けることができれば幸いです。http://stackoverflow.com/questions/36752092/how-to-overlay-write-on-top-of-existing-pdf-with-html-generated-pdf – NoReceipt4Panda

答えて

0

EDIT:あなたはこのリソースを必要とする:https://github.com/dompdf/dompdf

私のPHPのDOMPDFコード:

$fp = fopen('file_html.html','w'); 

require_once("dompdf/dompdf_config.inc.php"); 
spl_autoload_register('DOMPDF_autoload'); 

function pdf_create($html, $filename, $paper, $orientation, $stream=TRUE) 
{ 
    ini_set("memory_limit", "50M"); 
    $dompdf = new DOMPDF(); 
    $dompdf->set_paper($paper,$orientation); 
    $dompdf->load_html($html); 
    $dompdf->render(); 
    $pdf = $dompdf->output(); 
    @file_put_contents($filename . ".pdf", $pdf); 
} 

$filename = 'myPDFFileName'; 
$dompdf = new DOMPDF(); 
$html = file_get_contents('file_html.html'); 
pdf_create($html,$filename,'Letter','landscape'); 

これは "file_html.html" からすべてのHTMLを引くと「myPDFFileNameという名前のPDFとしてそれをレンダリング.pdf "をメインのPHPファイルと同じフォルダにコピーします。ここで

は私のhtmlです:

<html> 
<head> 
    <style> 
     @page { margin: 0px 0px 0px 0px; } 
     body { 
      height:100%; 
      margin: 0px 0px 0px 0px; 
      background-size: 100% 100%; 
      background-repeat: no-repeat; 
     } 
     div.mainLayout{float:left;width:50%} 
    </style> 
</head> 
<body> 
    <div class="mainLayout" style="height:100%"> 
     <p>Context</p> 
    </div> 
    <div class="mainLayout" style="height:100%"> 
     <p>Context</p> 
    </div> 
</body> 
</html> 

は私が探していたまさにその結果を手に入れました。

関連する問題