Я часто работаю с документами InDesign, у которых есть законченные разделы и которые я хочу экспортировать в PDF, чтобы поделиться с клиентом, но есть другие разделы или страницы, которые находятся в стадии разработки и которые я предпочел бы скрыть.
У меня вопрос, есть ли способ пометить страницы в InDesign как что-то вроде «пропустить для экспорта», чтобы мне не пришлось вручную удалять эти страницы (и номера страниц не по порядку) после завершения моего экспорт?
Из-за номера страницы это может быть не идеальным решением. Но вот какое решение я придумал, используя сценарии:
Загрузите этот образец файла и сохраните его в своей системе. Это IDML от CS5, поэтому он должен работать с CS4 +.
На страницах 3 и 4 вы заметите, что есть большой розовый блок текста с надписью ПРОЕКТ:
Если вы подтяните Script Labelпанель ( Window> Utilities> Script Label), вы увидите , что он обозначен как «DRAFT_LABEL».
Теперь возьмите следующий скрипт, скопируйте / вставьте его в текстовый редактор и сохраните его в своем каталоге Scripts (как файл .js или .jsx, не имеет значения):
try // to get the path of the file that's active when you run the script.
{
var OpenFilePath = app.documents.item(0).fullName; // Declare a variable representing the open document.
var OpenFile = app.open(File(OpenFilePath), true, 1332757360); // Create a duplicate to work with. In Adobe's world, "1332757360" means "open a copy".
}
catch (err)
{
var OpenFile = "error";
alert("Please save this file before using the script.");
}
var OpenFileLength = OpenFile.pages.length; // Get number of pages of open document and master file.
// These help make the array that stores master markers.
var ArrayCounter = 0;
var FindTheMarkers = new Array();
for (var i=0; i<OpenFileLength; i++) // Loop through every page.
{
ItemsOnPage = OpenFile.pages.item(i).pageItems.length; // Get the number of items on the page.
for (var j=0; j<ItemsOnPage; j++) // Loop through every item.
{
var ScriptLabel = OpenFile.pages.item(i).pageItems.item(j).label;
if (ScriptLabel != "" && ScriptLabel.indexOf("DRAFT_LABEL") == 0) // If the item has a label and it equals what we want it to,
{
FindTheMarkers[ArrayCounter] = i; // Put the page number in the array.
ArrayCounter++; // Advance the counter for next time!
}
}
}
var numberToSubtract = 0; // This compensates for screwing up the page counter when you remove a page.
for (i=0; i<FindTheMarkers.length; i++) // Loop through the array and remove pages!
{
OpenFile.pages.item(FindTheMarkers[i] - numberToSubtract).remove();
numberToSubtract++;
}
Перед запуском скрипта сохраните документ . Тогда беги!
Я дизайнер, который пишет сценарии, а не наоборот, так что это может быть не самый элегантный код. Но он сканирует документ на наличие элементов страницы с тегом «DRAFT_LABEL», а затем сохраняет этот номер страницы в массиве. После завершения сканирования удаляются соответствующие страницы.
Затем у вас остается новый файл с удаленными черновыми страницами!
+1 - Другой подход заключается в использовании массива для указания диапазонов страниц для экспорта с использованием сохраненной предустановки для других настроек экспорта. Это было бы неразрушающим.
Гораций
@horatio - Да! Я собирался упомянуть OP, что это было возможным решением, но потом я этого не сделал, потому что не знал наверняка; Я никогда не пытался решить это. Это отличная альтернатива, особенно если вы все время экспортируете вещи одинаково. Если вы хотите управлять настройками экспорта, как обычно, вышеуказанное решение работает лучше. Я также чувствую себя обязанным добавить, что это неразрушающее решение ... первое, что он делает, это открывает копию, чтобы оригинал не тронут.
Брендан,
2
Вы можете ввести нужные страницы для экспорта в PDF в диалоговом окне «Экспорт» ...
Используйте дефисы между числами для диапазона и запятые для разделения номеров отдельных страниц.
Вышесказанное исключает страницы с 11 по 14, 16, затем все, что после страницы 19.
Если вы хотите экспортировать в PDF, как если бы эти страницы отсутствовали в документе, поэтому номера страниц изменяются в соответствии с экспортом, тогда нет . Я не знаю ни одного способа переразметки нумерации страниц на основе экспортированных страниц. Сначала вам придется удалить страницы в документе Indesign.
Привет Скотт и спасибо за ответ. Я знаю о возможности экспорта определенных страниц, но это заставляет меня следить за тем, как растет и уменьшается размер страниц, что не идеально. То, что я действительно ищу, - это сделать саму страницу черновой, пока я над ней работаю, и иметь возможность публиковать PDF всех не черновиков.
Вы можете ввести нужные страницы для экспорта в PDF в диалоговом окне «Экспорт» ...
Используйте дефисы между числами для диапазона и запятые для разделения номеров отдельных страниц.
Вышесказанное исключает страницы с 11 по 14, 16, затем все, что после страницы 19.
Если вы хотите экспортировать в PDF, как если бы эти страницы отсутствовали в документе, поэтому номера страниц изменяются в соответствии с экспортом, тогда нет . Я не знаю ни одного способа переразметки нумерации страниц на основе экспортированных страниц. Сначала вам придется удалить страницы в документе Indesign.
источник