1

PHPからラテックスをコンパイルしようとしています。私はこのチュートリアルから助けを得ました。ただし、このエラーが発生し続けます。

エラー: 無効な XRef ストリーム ヘッダー エラー: 無効な XRef ストリーム ヘッダー pdf.worker.js:232:5 XRef_readXRef@resource://pdf.js/build/pdf.worker.js:3708:13 XRef_parse@resource://pdf. js/build/pdf.worker.js:3296:23 PDFDocument_setup@resource://pdf.js/build/pdf.worker.js:2469:7 PDFDocument_parse@resource://pdf.js/build/pdf.worker. js:2350:7 ensureHelper@resource://pdf.js/build/pdf.worker.js:1971:22 NetworkPdfManager_ensure/<@resource://pdf.js/build/pdf.worker.js:1985:7 NetworkPdfManager_ensure @resource://pdf.js/build/pdf.worker.js:1965:1 BasePdfManager_ensureDoc@resource://pdf.js/build/pdf.worker.js:1832:14 loadDocument/

注:ubuntuにtexliveをインストールしたので、pdftexを使用できます。xelatexもインストールされています。

Web サーバーのコンテンツ: 小さな latex ファイルには「latex_template.php」が含まれて おり、 index.phpには次の php スクリプトが含まれています。

   ob_start();
 include 'latex_template.php';
 $outputData .=ob_get_contents();
 ob_end_clean();

 $texFile = tempnam(sys_get_temp_dir(), 'test');

 $base = basename($texFile);

 rename($texFile, $texFile.".tex");
 $texFile .= ".tex";
 file_put_contents($texFile,  $outputData);
 chdir(dirname(realpath($texFile)));

 $console = shell_exec("xelatex {$base}" );
 //$console = system("xelatex {$base}" );

header('Content-Type: application/pdf');
$pdf = dirname(realpath($console)).DIRECTORY_SEPARATOR.$base.".pdf";

readfile($pdf);

注: 手動実行 xelatex: ログ ファイル: ここに画像の説明を入力

4

0 に答える 0