Как сделать текст ссылкой во вложенном PDF-файле

Как сделать текст ссылкой во вложенном PDF-файле

Я включил 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

Если вы собираетесь реализоватьpdflatexв вашейPHPприложение. для меня это былоcodeignitor.

Шаг 1: установите pdflatex.

Шаг 2: установите pdfannotextractor $ pdfannotextractor --installв своем терминале

Шаг 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-файл будет создан без отсутствующих ссылок.

Связанный контент