Устройство Ghostscript pdfwrite поддерживает многие операции pdfmark PostScript (но не все).Нет, документации по поддерживаемым нет, но в целом все, кроме логической структуры.
Ссылка pdfmark (доступна на веб-сайте Adobe, где-то .....) описывает синтаксис pdfmark и вв сочетании со справочным руководством в формате PDF (или спецификацией ISO) мы видим, что JavaScript ограничен аннотациями виджетов.В справочнике pdfmark есть даже пример, поэтому я сделал очевидное и попробовал.Следующий код делает что-то.Я предполагаю, что это правильно, но у меня нет возможности узнать наверняка (то есть, что-то в PDF правильно; я не имею представления о JavaScript):
[
/Subtype /Widget
/Rect [216 647 361 684]
/F 4
/T (SL Text)
/FT /Tx
/DA (/Helv 14 Tf 0 0 1 rg)
/V (5)
/AA <<
/K <<
/S /JavaScript
/JS (AFNumber_Keystroke\(2, 0, 0, 0, "$", true\);)
>>
/F <<
/S /JavaScript
/JS (AFNumber_Format\(2, 0, 0, 0, "$", true\);)
>>
>> /ANN pdfmark
showpage
Это рисует голубой прямоугольник, когда вы наводите курсор мышион рисует черную рамку, при щелчке по нему отображается значение 5. Замените 5 числовым значением и нажмите клавишу возврата, и оно станет $ value.00 на синем фоне.Вид выглядит справа.
Обратите внимание, что пример, на который вы ссылались выше, вам не поможет, это связано с чистым PostScript.Чтобы добавить аннотацию, подобную этой, вам необходимо:
- Использовать устройство pdfwrite Ghostscript
- создать командную строку, в которой вы сначала обработаете существующий файл PDF
- В командной строке после обработки существующего файла PDF выполните PostScript (используя pdfmark, как указано выше, но не showpage, только раздел pdfmark), чтобы определить аннотацию.Для этого вам понадобятся ключи -c (ввести PostScript) и -f (конец PostScript).