У меня есть файл PDF с некоторыми сценариями внутри. Скриптам разрешено изменять принтер, на котором печатается документ (поскольку у нас есть специальный принтер для штрих-кодов и другой принтер для обычных документов). Проблема в том, что я понятия не имею, как сбросить принтер на компьютер по умолчанию.
Код печати выглядит следующим образом:
var pp = getPrintParams(); // get printing parameters
pp.interactive = pp.constants.interactionLevel.automatic; // do not prompt user
pp.printerName = 'barcode_printer'; // set printer name
this.print(pp); // print
Согласно JavaScript API Ссылка (стр. 314, 583), getPrintParams() возвращает параметры печати по умолчанию, а pp.printerName, установленное на '' (пустая строка), означает принтер по умолчанию. Я понял, что все это неправда. На самом деле getPrintParams() возвращает последние использованные параметры (не новые/по умолчанию), а pp.printerName = '' не сбрасывает принтер на значение по умолчанию, вместо этого он использует последний выбранный принтер.
Кроме того, объект PrintParams, похоже, используется в разных открытых документах, поэтому я не могу сохранить имя принтера по умолчанию (прочитанное с первого вызова getPrintParams()) в какой-либо переменной, потому что на самом деле я не знаю, относится ли прочитанное значение к принтеру по умолчанию или он уже был изменен другими открытыми документами.
Поведение одинаково в разных версиях Adobe Reader (9, 10, 11) и Foxit Reader.
Помогите пожалуйста, как программно сбросить принтер на заводской?