Постраничный вывод в PS

  • Автор темы Автор темы knower
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

knower

Валерий Кнауэр
Топикстартер
20 лет на форуме
Сообщения
1 006
Реакции
18
Всем здравствуйте.:)
Как быстро записать цветоделённый постраничный ps из 6-го Акробата? Блин, 40 раз влезать в advanced, отключать ненужные сепарации, потом вбивать имя файла...
Граждане, ну сколько эти мучения могут длиться? Поспособствуйте, пожалуйста. Может кто какой java script напишет? ;) Если это не очень сложно? Чтобы его потом к примеру в Aerialist Prof можно было вставить.
 
Ответ: Постраничный вывод в PS

Немножко не понял: каждую сепарацию в отдельный файл, или каждую страницу?
 
Ответ: Постраничный вывод в PS

Каждую страницу в отдельный файл. Просто нужно отключать ненужные сепарации.
Конкретнее: У меня двукрасочный буклет. Чёрный и пантон. А на некоторых страницах (там где битмапы) иногда печатаются пустые триадные сепарации. Вот их я и отключаю.:)
 
Ответ: Постраничный вывод в PS

knower сказал(а):
У меня двукрасочный буклет. Чёрный и пантон. А на некоторых страницах (там где битмапы) иногда печатаются пустые триадные сепарации
А записать In-RIP PS, отключив ненужные РИПу сепарации не получается?
 
Ответ: Постраничный вывод в PS

Не, не получится. Я пишу на Бриск, а там нет In-RIP.
От нас требуют на выводы сепарированные PS.

А! Вы предлагаете это сделать предварительно... Хм.. Попробую. Но всё равно остаётся постраничный вывод. Это нужно для того, чтобы после сверки PS-ов, в случае возможных ошибок, не выводить заново весь журнал.
 
Ответ: Постраничный вывод в PS

// This example adds a menu item to the top of the file submenu that cParent: "Tools"
// puts up an alert dialog displaying the active document title.
// This menu is only enabled if a document is opened.
app.addMenuItem({ cName: "SepPagesPrint", cParent: "Tools",
cExec: "sep_pages();",
cEnable: "event.rc = (event.target != null);",
nPos: 0, bPrepend: true
});
function sep_pages()
{
for ( var i = 0; i < this.numPages; i++)
{
var pp = this.getPrintParams();
pp.printerName = "";
var n = 1+i;
pp.fileName = "/C/pages/p"+ 0 + n +".ps";
pp.nStart = 0+i;
this.print(pp);
}
}

Этот JS будет печатать раздельно страницы в каталог "C:\pages " отдельные файлы с именами p01.ps, p02.ps . c установками текущего принтера, т.е. сначала выбираешь принтер в Print setup устанавливаешь все параметры (например какие сепарации выводить и запускаешь JS из меню tools/SepPagesPrint.
 
Ответ: Постраничный вывод в PS

Спасибо, igors...:)
Только что-то не то у меня получается.
Я сохранил этот скрипт в папку:
"c:\Program Files\Adobe\Acrobat 6.0\Acrobat\Javascripts\Print.js"
Захожу в "Принт" выставляю нужные настройки (причём сохранить печать не всех сепарций в презет нельзя, ну да ладно, оставляю просто сепарированный)
После выполняю скрипт, и он записывает 10 (по числу страниц) совершенно одинаковых композитных(!) файлов, в каждом из которых присутствуют все страницы.
Что-то я не так сделал?
 
Ответ: Постраничный вывод в PS

Замени строчку
pp.nStart = 0+i;
на
pp.firstPage = i;
pp.lastPage = i;
 
Ответ: Постраничный вывод в PS

Ага! Теперь лучше... :) Постранично.
Вот только композитные они. Похоже, информация берётся только из "Print Setup", а закладка "Advanced" в меню "Print" вообще не учитывается.:(
 
Ответ: Постраничный вывод в PS

Делаю новый можно будет и сепарированные и любые колоранты.
 
Ответ: Постраничный вывод в PS

Можно втянуть в Индезигн и при помощи скрипта (мульти принт вроде называется) записать постраничные проскрипты за один раз.
 
Ответ: Постраничный вывод в PS

Конечно можно. :)
Но это ещё один этап. Придётся держать кроме PDF ещё и Индизайновскую сборку. Лишние файлы, лишняя информация. Нужно стремиться к минимализации. В моём случае - один файл вёрстки, один файл спуска.
Вот ещё если Igors слегка свой скрипт подправит, будет немного веселее. ;)
 
Ответ: Постраничный вывод в PS

knower сказал(а):
Вот ещё если Igors слегка свой скрипт подправит, будет немного веселее. ;)

-------------------
// This example adds a menu item to the top of the file submenu that cParent: "Tools"
// puts up an alert dialog displaying the active document title.
// This menu is only enabled if a document is opened.
app.addMenuItem({ cName: "SepPagesAsPS", cParent: "Tools",
cExec: "AsPS_pages();",
cEnable: "event.rc = (event.target != null);",
nPos: 0, bPrepend: true
});
function AsPS_pages()
{
var nP = this.numPages;
for ( var i = 0; i < nP-1; i++)
{
var t = this.createTemplate({cName:"myTemplate"+i, nPage:1});
t.hidden = true;
};
this.saveAs("/c/pages/p01.ps", "com.adobe.acrobat.ps");
var t = this.templates;
for ( var i = 0; i < nP-1; i++)
{
this.spawnPageFromTemplate(t[0+i].name, 0, false, false);
this.deletePages({nStart: 1});
var n = 2+i;
this.saveAs("/C/pages/p"+ 0 + n +".ps", "com.adobe.acrobat.ps");

}
}
-------------------------
После открытия PDF, нужно зайти в Preferenc и настроить Convert from PDF -- PostScript, там можно выбрать PPD, сепарированный вывод и колоранты, если этого не сделать, PS файлы будут пустыми.
Может возникнуть проблема с несоответсвием номера страницы и именем файла (встетились такие PDF, надеюсь это не твой случай), если это будет, пиши.
PS. После скрипта, PDF лучше не соохрнять, там все станицы, кроме последней скрыты.
 
Ответ: Постраничный вывод в PS

Спасибо, всё отлично работает.:)
А последнее уточнение можно обойти, если скриптом закрыть файл. Тогда никто не забудет...:)
А вообще, полные штаны удовольствия! Можно смело идти отмечать праздники.;)
Спасибо ещё раз.
 
Ответ: Постраничный вывод в PS

У меня Acrobat 7.0.7
выдает такую ошибку при старте:
Код:
SyntaxError: missing ; before statement
4:Folder-Level:App:sample.js
 
Ответ: Постраничный вывод в PS

igors > и запускаешь JS из меню tools/SepPagesPrint.

Acrobat 7.0.7, скрипт лежит здесь: \Program Files\Adobe\Acrobat 7.0\Acrobat\Javascripts\
Черт, никак не появляется этот пункт в меню Tools. ((
В чем могут быть грабли?

Да, галка напротив Enable Acrobat JavaScript включена.
 
Ответ: Постраничный вывод в PS

banIDit сказал(а):
У меня Acrobat 7.0.7
выдает такую ошибку при старте:
Код:
SyntaxError: missing ; before statement
4:Folder-Level:App:sample.js
Видимо проблема в sample.js
 
Ответ: Постраничный вывод в PS

Evgen сказал(а):
igors > и запускаешь JS из меню tools/SepPagesPrint.

Acrobat 7.0.7, скрипт лежит здесь: \Program Files\Adobe\Acrobat 7.0\Acrobat\Javascripts\
Черт, никак не появляется этот пункт в меню Tools. ((
В чем могут быть грабли?

Да, галка напротив Enable Acrobat JavaScript включена.
Проблема может быть в следующем:
In Acrobat versions earlier than 7.0, menu events were considered privileged contexts. Beginning with Acrobat 7.0, execution of JavaScript through a menu event is no longer privileged. You can execute security-restricted methods through menu events in one of the following ways:
●By checking the item named Enable menu items JavaScript execution privileges.
●By executing a specific method through a trusted function (introduced in Acrobat 7.0). Trusted functions allow privileged code—code that normally requires a privileged context to execute—to execute in a non-privileged context. For details and examples, see app.trustedFunction.
Полследние документы по Acrobat JS имеют подзаголовок Adobe Acrobat 7.0.5. Наверное это стало работать только с версии 7.0.5. Я пока не ставил обновления. Решений может быть 3.
1. Поставить галку в преференсах Enable menu items JavaScript execution privileges.
2. Исправить код по образцу:
myTrustedFunction = app.trustedFunction(
function()
{
<function body>
}
);
3. Или так:
function myOtherTrustedFunction()
{
<function body>
};
app.trustedFunction(myOtherTrustedFunction);
 
Ответ: Постраничный вывод в PS

banIDit сказал(а):
Дык, sample.js это и есть ваш скрипт. :)
4 строка для интерпретатора JS:
nPos: 0, bPrepend: true
});


Видимо при копировании влез разделитель.
Сделай просто так:
nPos: 0, bPrepend: true});
 
Статус
Закрыто для дальнейших ответов.