2

運が悪くても HTML ページを PDF に変換しようとしましたが、wkhtmltopdf (http://code.google.com/p/wkhtmltopdf/) と同じ開発者が提供する PHP クラス (http: //code.google.com/p/wkhtmltopdf/wiki/IntegrationWithPhp) ただし、次のコマンドはターミナルで正しく実行されます。

wkhtmltopdf http:/www.googl.com test.pdf

次のエラーのため、PHP でコマンドを実行できませんでした: X サーバーに接続できません。

wkhtmltopdfまたは他の適切なソリューションを使用するかどうかにかかわらず、html / cssをPDFファイルに変換できるようにするためのステップバイステップのチュートリアルを提供してもらえますか。

前もって感謝します

ここに私が使用したクラスがあります http://code.google.com/p/wkhtmltopdf/wiki/IntegrationWithPhp

以下は私のコードです

$html = file_get_contents("test.html");

$pdf = new WKPDF();

$pdf->set_html($html);

$pdf->render();

$pdf->output(WKPDF::$PDF_EMBEDDED,'sample.pdf');

以下はエラーです:

Fatal error: Uncaught exception 'Exception' with message 'WKPDF didn't return any data.
/usr/bin/wkhtmltopdf: /opt/lampp/lib/libxml2.so.2: no version information available
(required by /usr/lib/libgstreamer-0.10.so.0) No protocol specified wkhtmltopdf: cannot
connect to X server :0 </pre>' in /var/www/c4/components/com_wkhtmltopdf
/wkhtmltopdf.class.php:211 Stack trace: #0 /var/www/c4/components/com_wkhtmltopdf
/wkhtmltopdf.php(68): WKPDF->render() #1 /var/www/c4/components/com_wkhtmltopdf
/wkhtmltopdf.php(50): html2pdf() #2 /var/www/c4/index2.php(114): require_once('/var/ww...') 
#3 {main} thrown in /var/www/c4/components/com_wkhtmltopdf/wkhtmltopdf.class.php on line 211
4

1 に答える 1

2

次のエラー「プロトコルが指定されていませんwkhtmltopdf:Xサーバーに接続できません:0」という解決策が見つかりました。これは基本的に、apt-getを使用してインストールされた「wkhtmltopdf」の古いバージョンが原因でした。解決策は、次のリンクを使用して code.google から静的バイナリをダウンロードすることでした: http://code.google.com/p/wkhtmltopdf/downloads/list

次に、次のアクションを実行します。

tar -jxvf wkhtmltopdf-0.11.0-static.tar.bz2
sudo aptitude install ia32-libs

次に、/usr/bin 内の WKHTMLTOPDF を指すシンボリック リンクを作成する必要があります。

sudo ln -s /full_path/WKHTMLTOPDF /usr/bin/WKHTMLTOPDF
于 2012-04-30T05:32:13.690 に答える