2008-12-10 3 views
12

Я часто получаю PDF от нашего дизайнера (встроенного в Adobe InDesign), который, как предполагается, отправляется тысячам людей.Как слить почту поверх PDF?

У меня есть список со всеми людьми, и легко слить почту в OpenOffice.org. Однако OpenOffice.org не поддерживает расширенный PDF-файл. Я просто хочу вывести текст на каждую страницу и распечатать его.

Вот как я это делаю сейчас: распечатайте 6000 копий PDF, затем снова положите их в принтер и просто распечатайте на нем имя, адрес и другую информацию. Но это дорого.

К сожалению, я не могу сделать PDF для изображения и использовать его в OpenOffice.org, потому что он останавливает компьютер. Для отправки этой работы на принтер также требуется очень много времени.

Итак, есть ли простой способ сделать это слияние (желательно на Python) без оплаты закрытых решений сторонних производителей?

+0

Таким образом, PDF-файл является формой? – Svante 2008-12-10 15:45:13

ответ

2

Возможно, вы можете посмотреть библиотеку PDF, такую ​​как iText. Если у вас есть некоторые знания в области программирования и немного времени, вы могли бы написать код, который добавляет контактную информацию в формате PDF

1

Если вы не можете получить шаблон в другом формате, чем PDF простой одноранговой решение будет

  • конвертировать PDF в изображения
  • поместить изображение в Backgroud вашего (OpenOffice.org) документ
  • положения почты поле слияния в верхней части изображения
  • сделать слияние почты и печати
+0

Печатная работа становится ОГРОМНОЙ, и она никогда не закончится. – 2009-03-20 12:47:20

+0

Ну, тогда проще всего попросить вашего дизайнера предоставить шаблон в жизнеспособном формате (или получить копию Adobe Acrobat Professional, я думаю, что должна быть какая-то возможность использовать преобразование PDF в форму). Кажется, что рентабельность доставки 6000 писем должна оправдывать такие инвестиции. – 2009-03-20 15:27:31

1

Возможно, лучшим способом было бы создать другой PDF-файл с отсутствующим текстом и наложить один PDF-файл на другой. Быстрый Google нашел эту ссылку, показывающую, как это сделать в Acrobat, и я уверен, что есть и другие методы.

http://forums.macrumors.com/showthread.php?t=508226

1

Для не-беспорядок, нет суеты решение не использовать IText просто добавить текст в PDF. Например, вы можете сделать следующее, чтобы добавить текст в PDF-документ сразу загружен:

PdfContentByte cb= ...; 
cb.BeginText(); 
cb.SetFontAndSize(font, fontSize); 
float x = ...; 
float y = ...; 
cb.SetTextMatrix(x, y); 
cb.ShowText(fieldValue); 
cb.EndText();  

С этого момента, сохранить его как отдельный файл, и распечатать его.

Однако, я обнаружил, что поля формы - это путь к созданию PDF-документов из шаблонов.

Если у вас есть шаблон с полями формы (добавляемые с Adobe Acrobat), у вас есть один из двух вариантов:

  • Создать FDF файл, который по существу представляет собой список значений для поля формы , FDF - это простой текстовый документ, который ссылается на исходный документ, чтобы при открытии PDF-документа документ загружался с значениями полей, предоставленными FDF.
  • В качестве альтернативы загрузите шаблон с помощью библиотеки iText/iTextSharp, заполните поля формы вручную и сохраните ее в виде отдельного pdf-файла.

Пример файл FDF выглядит следующим образом (украдено из Planet PDF):

%FDF-1.2 
%âãÏÓ 
1 0 obj 
<<< 
/F(Example PDF Form.pdf) 
/Fields[ 
    << 
    /T(myTextField) 
    /V(myTextField default value) 
    >> 
    ] 
>> 
>> endobj trailer 
<> 
%%EOF 

Из-за простой формат и небольшого размера FDF, это предпочтительный подход, и подход должен работать хорошо на любом языке.

Что касается заполнения полей в программе, вы можете использовать IText следующим образом:

PdfAcroForm acroForm = writer.AcroForm; 
acroForm.Put(new PdfName(fieldInfo.Name), new PdfString(fieldInfo.Value)); 
+0

Но могу ли я поместить 6000 имен в один FDF, или мне нужно сделать 6000 файлов FDF, а затем вывести 6000 5MiB PDF-файлов (что было бы ОГРОМНЫМ и уйти навсегда)? – 2009-03-20 12:48:48

8

Теперь я сделал счет. Я исправил его, используя гениальный pdftk.

В моих поисках я полностью игнорирую функцию «фон» и «наложение». Мое решение было таким:

pdftk names.pdf background boat_background.pdf output out.pdf 

В случае, если у кого-либо еще была эта проблема. Я также написал об этом on my web page

+0

Я поддерживаю, потому что это решение другой проблемы, которую я имею, а не связанных с формами, а скорее «штамповки» текста на pdf – 2011-02-25 11:25:56

1

Как использовать переменную программу данных, такую ​​как XMPie для Adobe Indesign. Это плагин, который должен ссылаться на ваш список людей (подумайте, что, возможно, это будет список в Excel).

2

Есть два гораздо более простых и дешевых решения.

Во-первых, вы можете выполнить слияние ваших писем непосредственно в InDesign с помощью DataMerge. Это утилита, добавленная в InDesign обратно в CS. Вы экспортируете или сохраняете свои имена в формате CSV. Импортируйте данные в шаблон InDesign, а затем запишите свое имя, адрес и такие поля в макете. Нажмите Go. Он создаст новый документ со всеми готовыми буквами или вы сможете перейти прямо к принтеру.

ИЛИ, вы можете экспортировать свои данные в файл XML и создать динамический макет с использованием XML-заполнителей в InDesign.

Книга Руководство для дизайнера Adobe InDesign и XML научит вас, как это сделать, или вы можете посмотреть видео Lynda.com для динамических рабочих процессов с помощью InDesign и XML.

Очень прост в использовании.

Если вы хотите создать отдельные файлы PDF-файлов для слияния, вы можете запустить один длинный PDF-файл со всеми именами в одном файле, а затем сделать извлечение в отдельные файлы PDF в самом Acrobat Pro.

0

Вы можете использовать функцию слияния данных InDesign или выполнить то, что вы делали, с печатью части задания, а затем печать слияния по почте поверх Word или Open Office. Но также изучите поиск компании, которая может выполнять перенос офсетной печати или динамическую публикацию. Может быть немного дороже впереди, но может спасти пакет, когда дело доходит до времени, тестирования, даже упаковки и рассылки.

0

Отказ от ответственности: Я являюсь автором этого инструмента.

Я столкнулся с этой проблемой достаточно много раз, что я построил бесплатный онлайн инструмент для этого: https://pdfbatchfill.com/

Он принимает форму PDF в качестве шаблона, и использует, что наряду с данными формы CSV для создания одного PDF или отдельных файлов PDF в zip-файле.

Смежные вопросы