Скрипт PDF "print from JavaScript" перестал работать под Adobe Reader 10/11
У моего клиента есть PDF-формы, созданные Acrobat Pro. У каждого есть кнопка "Печать" на форме. За кнопкой "Печать" находится этот JavaScript, который по-прежнему является рекомендуемым подходом к печати согласно Adobe:
var pp = this.getPrintParams();
pp.printerName = "\\\\server2\\EN100Tiffs";
pp.interactive = pp.constants.interactionLevel.automatic;
this.print(pp);
app.alert("Document sent to printer", 3);
app.alert("Please close window after each use", 3);
Указанный выше принтер на самом деле является утилитой, которая преобразует все, что ему отправлено, в TIFF (драйвер UltraTIFF от Alto Imaging). Сервер, на котором он находится, - это Windows 2008. Другой процесс постоянно сканирует файлы TIFF и отправляет их в систему обработки документов клиента.
Это работало до Adobe Reader 10. В этот момент утилита прекратила генерировать TIFF. Заказчик решил эту проблему, остановившись на Adobe Reader 9, но теперь он вынужден перейти на Reader 11. Он также не работает в Reader 11.
Обратите внимание, что принтер не настроен на клиентских компьютерах. Все клиентские машины - Windows 7.
Также обратите внимание, что пользователи имеют прямой доступ к PDF. Это не внутри окна браузера.
Если я настрою драйвер TIFF в качестве принтера на клиентском компьютере (через Пуск / Устройства и принтеры / Добавить принтер), сценарий будет работать в Adobe Reader 10 и 11. Если принтер не настроен, сценарий будет работать в Reader 9 и ранее, но он не работает в течение 10 или 11. Клиент не будет настраивать принтер на клиентах, потому что они боятся, что пользователи могут напечатать на нем случайно, и все, что они напечатают, в конечном итоге будет отображаться в документе. система.
В попытке выяснить, в чем дело, я добавил перехват ошибок к скрипту кнопки печати:
var pp = this.getPrintParams();
pp.printerName = "\\\\server2\\EN100Tiffs";
pp.interactive = pp.constants.interactionLevel.automatic;
try {
this.print(pp);
app.alert("Document sent to printer", 3);
} catch (err) {
app.alert("Error printing: " + err);
}
app.alert("Please close window after each use", 3);
Когда я попытался напечатать документ, не было выдано никакой ошибки. Я получил сообщение "Документ отправлен на принтер", а не сообщение об ошибке, но документ все еще не был отправлен на принтер - я имею в виду, что файл TIFF не был создан.
Итак, мои вопросы:
Кто-нибудь испытывал подобные странности с печатью из Javascript при переходе с Reader 9 на Reader 10?
Что-то в фрагментах кода вызывает ошибку?
Спасибо всем за внимание, особенно если вы сделали это далеко:)