Чаще всего эта задача возникает, когда на готовую форму в формате PDF нужно добавить сосканированную подпись.
Решить задачу можно с помощью редактора PDF-файлов, например, Foxit Advanced PDF Editor, или средствами самого LaTeX. Рассмотрим последний вариант.
В качестве примера создадим документ-форму:
% form.tex
\documentclass[a4paper]{minimal}
\begin{document}
\vspace{10cm}
\fbox{
\begin{minipage}[l][3cm]{5cm}
\end{minipage}
}
\newpage
Some text.
\end{document}
На первой странице будет рамка для "подписи", на второй — какой-то текст:
Теперь создадим рисунок-"подпись":
\documentclass[convert={density=300,outext=.png}]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw[red,thick,fill] circle (1cm);
\end{tikzpicture}
\end{document}
Как сохранить рисунок TikZ в графическом файле описано здесь.
Собственно решение
Наша задача — поместить "подпись" в рамку на первой странице формы (form.pdf
).
Как вставить в документ существующий PDF-файл описано здесь. Вторая и последующие страницы документа вставляются без изменений, а на первую добавляется рисунок:
\documentclass[a4paper]{minimal}
\usepackage[final]{pdfpages}
\begin{document}
\includepdf[pages={1}, picturecommand={...}]{form.pdf}
\newpage
\includepdf[pages=2-]{form.pdf}
\end{document}
Опция picturecommand
позволяет выполнять на заданных страницах (в нашем случае — на первой) графические команды, такие как \includegraphics
. При этом предполагается, что начало отсчета расположено в левом нижнем углу страницы.
Установим единицей измерения миллиметр и вставим рисунок sign.png
в точку, с координатами x=50 мм
, y=142 мм
(координаты подпирались экспериментально для конкретной формы):
\setlength\unitlength{1mm}
\put(50,142){\includegraphics[scale=0.25]{signature}}
Собирая все вместе, получим документ:
\documentclass[a4paper]{minimal}
\usepackage[final]{pdfpages}
\begin{document}
\includepdf[pages={1},%
picturecommand={\setlength\unitlength{1mm}%
\put(50,142){\includegraphics[scale=0.25]{signature}}}]%
{form}
\newpage
\includepdf[pages=2-]{form.pdf}
\end{document}
и после трансляции — готовую "подписанную" форму:
Комментарии
comments powered by Disqus