0

HTML2PDF ( http://html2pdf.fr/ ) を使用して Web ページから PDF ファイルを生成しています。ただし、奇妙なエラーが発生しています。生成されたファイルは、「プレビュー」Mac ツール (または、ダウンロードした PDF ファイルが選択されているときにスペース バーを押すだけ) で完全に表示できますが、ファイルを開こうとすると、 Adobe Acrobat Pro では、次のエラー メッセージが表示されます。

Adobe reader could not open "file.pdf" because it is either not a support file type or because the file has been damaged (for example, it was sent as email attachment and was'nt correctly decoded).

PDFコンテンツとPDFファイル自体を生成する方法は次のとおりです。

$content = '<page backtop="12mm" backbottom="12mm" backleft="8mm" backright="8mm" style="font-size: 10pt;">
                <h1>MyTitle</h1>
                <br>
                <table style="width: 100%;">
                    <tr>
                        <td style="width: 25%;"></td>
                        ....
                    </tr>
                </table>
            </page>';

$html2pdf = Yii::app()->ePdf->HTML2PDF('P','A4','en',true,'utf-8');
$html2pdf->pdf->SetDisplayMode('fullpage');
$html2pdf->WriteHTML($content);
$html2pdf->Output($outputname , EYiiPdf::OUTPUT_TO_DOWNLOAD );

何が起こっているのかについて何か考えはありますか?フォーマットまたはファイルのエンコーディングについて何か不足している可能性がありますか? さまざまなエンコーディングを試しましたが、何も問題を解決していないようです...

あなたの時間と労力を前もって感謝します! :)

4

1 に答える 1

0

解決しました!これにもう少し対処した後、プレーン テキスト エディターで PDF ファイルを開くことにしました。ファイルを生成するために使用される PHP ページには、デフォルトでヘッダーとフッターが含まれていることがわかりました (私はその結果、HTML ヘッダーとフッター コードが PDF ファイルに「印刷」されました...誰かが私と同じ問題を抱えていることはありますか?それを解決する方法は、ページのコントローラー ファイルを開くことです (' protected/controllers/myPageController.php') を開き、次の行を変更します。

$this->render('index');

これによって:

$this->renderPartial('index');

すべてが期待どおりに機能するようになりました。^_^

于 2013-07-03T10:51:15.360 に答える