
PDF 生成タスクに PDF を含めました。含めた PDF ファイル内のテキストをクリック可能なテキストに置き換えることは可能ですか。テキストへのリンクを追加するつもりです。生成する PDF には、置き換え可能なクリック可能なテキストが含まれている必要があります。含めた PDF から抽出したリンクの配列があります。適切なテキストへのリンクを追加する必要があります。
Array(
[0] => Array(
[text] => Text 1
[href] => http://www.example.com
)
[1] => Array
(
[text] => Text 2
[href] => http://www.example.com
)
)
答え1
実装する場合はpdfラテックスあなたのPHP のアプリケーション。私の場合はコードイグナイター。
ステップ 1: pdflatex をインストールします。
ステップ2:$ pdfannotextractor --install
ターミナルにpdfannotextractorをインストールする
ステップ 3:$ pdfannotextractor --version
これにより、ターミナルで PDFAnnotExtractor のバージョンを見つけるのに役立ちます。
ステップ4: しかし、Pdfannotextractorにはパッケージlibpdfbox-javaも必要です。そうでない場合は、このエラーが発生します。!!! エラー: PDFBox ライブラリが見つかりません!
ステップ5: このリンクからpdfboxをダウンロードできますhttps://sourceforge.net/projects/pdfbox/files/PDFBox/PDFBox-0.7.3/
ステップ 6: zip ファイルを解凍し、解凍したフォルダーをアプリケーションにコピーして貼り付けます。
ステップ 7: このコードに従います。
$file = '/home/rebin/Downloads/file.pdf';
$pdflatex = '/usr/local/texlive/2016/bin/x86_64-linux/pdflatex';
$pdf_box = BASEPATH.'PDFBox-0.7.3/lib/PDFBox-0.7.3.jar';
$template_file = 'user/join_template.tex';
$new_pdf_filename = 'new_pdf';
$temp_join_file_path = 'user/';
shell_exec("CLASSPATH='".$pdf_box.":%CLASSPATH%' pdfannotextractor ".$file);
$doc = '\documentclass{article}
\usepackage{hyperref}
\usepackage[left=1cm, right=1cm, top=2cm, bottom=2cm]{geometry}
\usepackage{pdfpages}
\usepackage{pax}
\begin{document}
\includepdf[page=-]{' . $file. '}
\end{document}';
file_put_contents($template_file, $doc);
shell_exec($pdflatex . ' -output-directory=' . $temp_join_file_path . ' -jobname=' . $new_pdf_filename . ' -interaction=nonstopmode -shell-escape join_template.tex');
リンクが欠落することなく PDF ファイルが生成されます。