Скрипты никто не ругает, они наооброт помагают упростить и ускорить работу, по сортировке листов "при условии, что они одного формата..." (и правильно сохраннены заказчиками).Кстати, если уж на то пошло, то после SplitBypageSize странички остаются в том же порядке, что и в исходном файле, т.е. страница 3 всегда раньше страницы 5, при условии, что они одного формата...
Просто отвечу, печатали, что проходилось вызывать газель, чтобы отдать заказчику все коробки, при этом все делалось оперативно даже без скриптов.Просто спрошу - а вы когда-то массово чертежи печатали?
Простите, я все равно не понимаю, что значит "при условии, что они одного формата...". Там вся суть, что страницы разных форматов, в этом смысл. "(и правильно сохраннены заказчиками)" - ну так а какая разница, выделите вы диапазоны или нет, если вам все равно глазами просматривать? Конечно, если у вас формат листа A3, а это, на самом деле, ужатый А1, вам ничто особо не поможет, хотя...Скрипты никто не ругает, они наооброт помагают упростить и ускорить работу, по сортировке листов "при условии, что они одного формата..." (и правильно сохраннены заказчиками).
Вам наверное везет, когда приносят в большенстве правильно сохранные форматы, но эти чертежи делают проектировщики, очень многие ГОСТЫ при сохраннеие особенно не стандартных форматов особо не соблюдают.
Поэтому после автоматизированного определения форматов листов, помогла бы ручная доработка, чтобы исправить ошибки заказчиков при сохраннеии форматов и сохранить последовательность листов для последуйщей раскладки.
Просто отвечу, печатали, что проходилось вызывать газель, чтобы отдать заказчику все коробки, при этом все делалось оперативно даже без скриптов.
Понимаю что работу по подготовке можно очень сильно ускорить, но только все скриптом не решить к сожалению...
А вы все на одном устройстве печатаете, что ли? иначе я опять же не понимаю, если с нескольких устройств печатать, вам же все равно руками раскладывать? Мы, например, А4/А3 на МФУшках 60-100 копий в минуту гоним, а большие форматы - на рулон. 45 м рулон поставили и погнали, потом подбираем, естественносохранить последовательность листов для последуйщей раскладки.
Сел вечером, сделал, добавил в комплект еще один скрипт Split to ranges same format. Он делит файл на последовательно идущие диапазоны одинаковых форматов, в имени файла указывает диапазон страниц и формат. Спасибо, @dastin , за идею... тем, что не нарушается порядок, а создается цепочка из фрагментов одного формата, с обозначением начала и конца
... к вашему скрипту никаких претензий - всякий раз кланяюсь и поминаю добрым словом
и где-то, уже точно не помню, читал что у вас есть более продвинутые nonFree варианты - оттого и предложил
Кстати, закладки тоже сделал. Теперь в начале списка закладок появляется список форматов и вложенные закладки - диапазоны страниц этих форматов. Т.е. можно гонять по определенным форматам, не нарушая порядка в файле. Как-то так. Спасибо за идею, @_MBK_Да, наверное можно с помощью закладок (и/или комментариев) попробовать как-то удобно реализовать, выделение (отображение), того, что определилось программным путем, а затем как-то путём снятие и добавления (закладок/комментариев) уточнять список нужных листов (страниц)...
... как до него добраться?добавил в комплект еще один скрипт
Ну он в платном комплекте же... так-то добраться несложно... как до него добраться?
ну так-то да...Дастину как тестеру выдать нахаляву можно. От таких товарищей лучше не прятать
Причешу, выложу, подарю. Чать не обеднею Киньте в личку адрес почтовый... как до него добраться?
Где узнать о содержимом комплекта, как его купить?платном комплекте же...
Да, имеено из-за таких проблем и хотелось скриптом сначала выделить миниатюры, и визуально исправить подобные ошибки, т.к. такие вещи не редкость, могут быть чертежи сохранены в масштабе 1:1, но при этом иметь большие поля или чертежи высотой 297/420мм сохраннёные высотой 594мм (соответветсвенно, скрипт не верно определит размер листа и поместит его не в тот файл), много проблем с отсканированыим листами А4 (у которых размеры пляшут от 190х280мм до А0), А1 сохранен как А2, А0 как А1 или на оборот и т.п.Конечно, если у вас формат листа A3, а это, на самом деле, ужатый А1, вам ничто особо не поможет, хотя...
Мы, например, А4/А3 на МФУшках 60-100 копий в минуту гоним, а большие форматы - на рулон. 45 м рулон поставили и погнали, потом подбираем, естественно
так вот тут же.Где узнать о содержимом комплекта, как его купить?
Все равно непонятно, как вам помогут выделенные миниатюры. По миниатюре искать, где слишком широкие поля? Но, в общем и целом, js в акробате практически не имеет доступа к интерфейсу, поэтому ваша хотелка это сильно вряд ли.Да, имеено из-за таких проблем и хотелось скриптом сначала выделить миниатюры, и визуально исправить подобные ошибки, т.к. такие вещи не редкость, могут быть чертежи сохранены в масштабе 1:1, но при этом иметь большие поля или чертежи высотой 297/420мм сохраннёные высотой 594мм (соответветсвенно, скрипт не верно определит размер листа и поместит его не в тот файл), много проблем с отсканированыим листами А4 (у которых размеры пляшут от 190х280мм до А0), А1 сохранен как А2, А0 как А1 или на оборот и т.п.
Люди просто ошибаются при сохраннеии, и все ошибки лучше отловить перед печатью, т.к. всё это увеличивает процесс раскладки и количество стопок в том числе. Бороться с заказчиками в этом плане бесполезно, просто решаем все эти проблемы самостоятельно, бесплатно.
Более того после сортировки чертежей, испраляются многие ошибки размеров листов, т.к. стараемся соблюдать при печати отступы (20, 5, 5, 5 мм), и печаталась основная рамка, чертежи высотой 297мм, например компонуются на рулон в зависимости от количества экзепляров.
После исправлений, чертежи печатаются на стандартных форматах рулонов, 594мм и 841мм, не на увеличенных (610, 620, 900мм), чтобы не тратить время на резку.
Да, примерно по такому же принцепу работаем, только печатаем на рулонах 175м.
Выделить миниатюры нельзя. А если попробовать вот так и создать другие миниатюры, по вашему списку?Здравтсвуйте.
Имеется похожая задача, как у автора.
Решение необходимо для Acrobat Pro XI (т.к. лицензия на лицензии win7).
Можно ли программным путем (javascript) выделить/выбрать миниатюры страниц (Pages Thumbnails)?
Номера страниц известны их нужно только выбрать/выделить, что бы они были подсвечены синим как при ручном выделении.
В Acrobat Pro XI нет поля (Acrobat Pro DC и выше) в которое, можно вводить номера страниц.
Спасибо.
// (C) SergeySoft 2023 z-print@bk.ru
const psProcs1 = [
["Create Miniatures", "CreateMiniatures()"],
];
const MMPRATIO = 2.834; // ratio to convert pt to mm
if (app.viewerVersion < 10) {
for (proc of psProcs1)
app.addMenuItem({ cName: proc[0], cUser: proc[0], cParent: "Tools", cExec: proc[1], cEnable: "event.rc = (event.target != null);"});
} else {
for (proc of psProcs1)
app.addToolButton({ cName: proc[0], cLabel: proc[0], cExec: proc[1], cEnable: "event.rc = (event.target != null);"});
};
function mm2pt(mm) {
return mm * MMPRATIO;
};
function pt2mm(pt) {
return pt / MMPRATIO;
}
function getBtnPos(btnNum) {
col = btnNum % 3;
row = Math.floor(btnNum / 3);
var aRect = [];
[aRect[0], aRect[1], aRect[2], aRect[3]] = [mm2pt(10 * (col + 1) + 56 * col),
mm2pt(297 - (10 * (row + 1) + 86 *row)),
mm2pt(10 * (col + 1) + 55 * (col + 1)),
mm2pt(297 - (10 * (row + 1) + 86 *(row + 1)))];
return aRect;
};
CreateMiniatures = app.trustedFunction(function() {
var cResponse = app.response({
cQuestion: "Input page list (via semocolon, no more than 9 page numbers)",
cTitle: "Page list",
cDefault: "1",
cLabel: "Page list to miniatures"
});
if ((cResponse == null) || (cResponse === "")) {
app.alert("Empty list. Exiting");
return;
};
pageList = cResponse.replace(/ /g,'').split(",");
btnCount = pageList.length <= 9 ? pageList.length : 9;
app.beginPriv();
this.newPage({nWidth : (mm2pt(210)), nHeight : mm2pt(297)});
for (var i = 0; i < btnCount; i++) {
var aRect = getBtnPos(i);
var f = this.addField("P_"+i, "button", this.numPages - 1, aRect);
f.buttonImportIcon(this.path, pageList[i] - 1);
f.setAction("MouseUp", "this.pageNum =" + (pageList[i] - 1));
pRect = this.getPageBox("Media", (pageList[i] - 1));
w = pt2mm(pRect[2] - pRect[0]);
h = pt2mm(pRect[1] - pRect[3]);
f.buttonSetCaption(util.printf("page %0d - %0d x %0d", pageList[i], w, h));
f.buttonPosition = position.iconTextV;
};
this.pageNum = this.numPages -1;
app.endPriv();
}
)
на Acrobat DC x64 - всё ОКВчерашних обновлений
Не сложно, просто а) это набросок и б) непонятно, нужно ли это кому-то вообще. Также как и требование "не более девяти", также как и имена в виде нормальных названий форматов, также как и всякие проверки на выход из диапазона страниц...по поводу ...
на Acrobat DC x64 - всё ОК
одна вялая хотелка для миниатюр - "смягчить" требование указывать диапазон стараниц ЧЕРЕЗ ЗАПЯТУЮ - стандартный способ {1-5,9,11-13} сложно реализовать?
Это после какого именно? А если addMiniatures.js только поставить? Какая-то несовместимость. Интересно, что в консоли, если Ctrl-J нажать? Ставить себе 11 Acrobat я не горю желанием, нет смысла особоготе же скрипты помещённые в c:\Program Files (x86)\Adobe\Acrobat 11.0\Acrobat\Javascripts\
перестают быть видны, в панели исчезает строка AddOn Tools
Посмотреть вложение 161701
прежний diffsizepageutils виден и работает - как в 11 версии, так и в DC
пункта нетесли addMiniatures.js только поставить?
что в консоли, если Ctrl-J нажать?