Как используя XML сделать спуск?

Spirit412

Топикстартер
15 лет на форуме
Сообщения
870
Реакции
128
Нужно используя XML с данными (название файла макета, размер макета, расположение макета на листе) сделать спуск
Стандартными средствами S&R это сделать не выйдет, т.к. : файлы разного размера, есть порядок размещения (в строку, в столбец, змейкой с заданным кол-ом столбцов)

Знаю что используя таск Export to nested layout, можно на выходе получить XML вида:
XML:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<LAYOUT>
<LAYOUTNAME>123456_Dgen_115gr_LAYOUT</LAYOUTNAME>
<CUTFILE>\\MyFileServer\Data\12. Esko\iCut\123456_Dgen_115gr.cut</CUTFILE>
<PDFFILE>\\caldera-1\Public\hotfolder\Dgen\123456_Dgen_115gr.pdf</PDFFILE>
<TotalLength>151114.9</TotalLength>
<WIDTH>3200</WIDTH>
<HEIGHT>20960.49</HEIGHT>
<COPIES>1</COPIES>
<SUBSTRATE>Flag 115gr</SUBSTRATE>
<YIELD number="5.755446E7"/>
<JOBS>
      <JOB>
         <JOBNAME>14_04_16_1749405_OnlineOrder.pdf</JOBNAME>
         <NUMBERUP>3</NUMBERUP>
         <REMAINING>0</REMAINING>
         <VSIZE>2366.28</VSIZE>
         <HSIZE>759.0</HSIZE>
         <POSITIONS>
            <POSITION>
               <V>13611.11</V>
               <H>42.82</H>
               <SCALE>10.0</SCALE>
               <ANGLE>0.0</ANGLE>
            </POSITION>
            <POSITION>
               <V>15977.4</V>
               <H>1580.82</H>
               <SCALE>10.0</SCALE>
               <ANGLE>180.0</ANGLE>
            </POSITION>
            <POSITION>
               <V>13611.11</V>
               <H>1600.82</H>
               <SCALE>10.0</SCALE>
               <ANGLE>0.0</ANGLE>
            </POSITION>
         </POSITIONS>
         <CustomerId/>
         <ExtId>ba7d086a-287f-431e-b25d-fbe28dac4b08</ExtId>
         <Folder>\\MyFileServer\Data\12. Esko\Dgen_gangrun</Folder>
         <GroupingKey1/>
         <GroupingKey2>F0306</GroupingKey2>
         <GroupingKey3/>
         <GroupingKey4>Dgen</GroupingKey4>
         <Id>5dca4cd9-9dae-49e9-a99c-84281e5d4c55</Id>
         <PageCount number="1"/>
         <PageNr number="1"/>
         <Rotation>any</Rotation>
         <Substrate>Flag 115gr</Substrate>
      </JOB>
      <JOB>
         <JOBNAME>14_04_16_1749401_OnlineOrder.pdf</JOBNAME>
         <NUMBERUP>3</NUMBERUP>
         <REMAINING>0</REMAINING>
         <VSIZE>2366.28</VSIZE>
         <HSIZE>759.0</HSIZE>
         <POSITIONS>
            <POSITION>
               <V>15768.16</V>
               <H>42.82</H>
               <SCALE>10.0</SCALE>
               <ANGLE>0.0</ANGLE>
            </POSITION>
            <POSITION>
               <V>18134.45</V>
               <H>1580.82</H>
               <SCALE>10.0</SCALE>
               <ANGLE>180.0</ANGLE>
            </POSITION>
            <POSITION>
               <V>15883.71</V>
               <H>3157.2</H>
               <SCALE>10.0</SCALE>
               <ANGLE>180.0</ANGLE>
            </POSITION>
         </POSITIONS>
         <CustomerId/>
         <ExtId>2569cec2-68e8-490a-a353-c1a5cc8e950c</ExtId>
         <Folder>\\MyFileServer\Data\12. Esko\Dgen_gangrun</Folder>
         <GroupingKey1/>
         <GroupingKey2>F0305</GroupingKey2>
         <GroupingKey3/>
         <GroupingKey4>Dgen</GroupingKey4>
         <Id>11bc910b-a7f6-4e2a-86f8-975c76dc1d1c</Id>
         <PageCount number="1"/>
         <PageNr number="1"/>
         <Rotation>any</Rotation>
         <Substrate>Flag 115gr</Substrate>
      </JOB>
и т.д.

Но я не нашел ни одного таска, позволяющего используя XML, сделать лейоут.
Возможно, требуется конвертировать XML -> JDF.
Прошу помощи
 

ACTPOHOM

12 лет на форуме
Сообщения
2 981
Реакции
1 133
Увы, но XML вверху это выходной документ, сопровождающий готовый спуск из GangRun
 

Spirit412

Топикстартер
15 лет на форуме
Сообщения
870
Реакции
128
Т.е. АЕ может выдать XML готового спуска, но при наличии XML, разместить по нему PDF на листе не сможет?
 

ACTPOHOM

12 лет на форуме
Сообщения
2 981
Реакции
1 133
ну типа это репорт, а не задание на верстку.можно закинуть им идею, может внедрят.
 

Spirit412

Топикстартер
15 лет на форуме
Сообщения
870
Реакции
128
Хорошо бы они добавили такую возможность.

А пока я вижу несколько решений:
1. Генерируем PS файл (он в текстовом формате, тут проблем нет), и дальше его нормализуем.
2. Генерируем PDF через Python.
 

romyk

10 лет на форуме
Сообщения
1 353
Реакции
247

Не по теме:
А не перебор ли это уже?
Ну есть же софт для спуска сборных тиражей, не проще из него PDF готовый брать? Я понимаю и полностью разделяю идею работы в АЕ через XML, но тут проблем больше вылазит, чем приобретений. Если, конечно, нет нормально работающей схемы под такие вещи, тогда я полностью поменяю свое мнение ;]=

 
Последнее редактирование:

romyk

10 лет на форуме
Сообщения
1 353
Реакции
247
А вообще, такой вопрос стоит запостить на их dashboard, интересно бы было услышать ответ.
 

Spirit412

Топикстартер
15 лет на форуме
Сообщения
870
Реакции
128
Дело в том, что мне это нужно для формированния специфического бланка на согласование.
На бланке дизайны(части одного дизайна). Снизу штамп с тех.инфой. В шапке логотип и пр. инфа.
Проблема с самими дизайнами
1. На бланке n-е кол-во макетов (лицо, оборот, схема лака, тиснения и тт.п.)
2. Макеты отличаются по размеру. Фронтальная этикетка отличается от оборотной и т.п.
3. Расположение макетов может быть: в строку, в столбец, Z-змейкой с указанием количества столбцов.

Наверное, если задаться целью, можно и стандартными средствами такое провернуть. Используя циклы и пр.
Например, если размещение дизайнов в строку.
1. Вычислит максимальную ширину и максимальную длину среди макетов.
2. Изменить trimbox всех дизайнов. Т.е. привести PDF файлы к одному размеру.
3. Используя S&R сделать спуск.
Не самый красивый вариант т.к. если у нас один макет размера 200х200 а второй 100х100. То у второго тримбокс увеличится до 200х200 и разместив их рядом будет большой пробел между макетами.

Самая жесть, если нужно змейкой сделать.

Я прикинул что даже при минимальных знаниях Python, будет не сложно написать функцию по вичислению координат для размещения в нужном мне порядке дизайнов на странице.
 

Spirit412

Топикстартер
15 лет на форуме
Сообщения
870
Реакции
128

Не по теме:
А не перебор ли это уже?
Ну есть же софт для спуска сборных тиражей, не проще из него PDF готовый брать? Я понимаю и полностью разделяю идею работы в АЕ через XML, но тут проблем больше вылазит, чем приобретений. Если, конечно, нет нормально работающей схемы под такие вещи, тогда я полностью поменяю свое мнение ;]=

А если у вас нейросеть на питоне делает спуск сборника формируя на выходе XML файл с данными (формат листа, положение дизайнов на листе). Ну не нравится вам ганг например )
Хотелось бы иметь возможность обработать XML, вставить смартметки и получить на выходе PDF файл для печати.
 

romyk

10 лет на форуме
Сообщения
1 353
Реакции
247
А если у вас нейросеть на питоне делает спуск сборника формируя на выходе XML файл с данными (формат листа, положение дизайнов на листе). Ну не нравится вам ганг например )
Хотелось бы иметь возможность обработать XML, вставить смартметки и получить на выходе PDF файл для печати.
Ну это уже высший уровень, я тут пас. Может, тогда стоит в сторону JDF смотреть?

Не по теме:
А серьезно, вы не против, если я ваш вопрос на эско задам?
 
Последнее редактирование:

ACTPOHOM

12 лет на форуме
Сообщения
2 981
Реакции
1 133
А вообще, такой вопрос стоит запостить на их dashboard, интересно бы было услышать ответ.
туда постят сами эсковцы, частые вопросы и четкие ответы. это вики а не форум. Форум в другом месте, там надо иметь эско айДи
 

Spirit412

Топикстартер
15 лет на форуме
Сообщения
870
Реакции
128
Ну это уже высший уровень, я тут пас. Может, тогда стоит в сторону JDF смотреть?

Не по теме:
А серьезно, вы не против, если я ваш вопрос на эско задам?
Я не против если вы от своего имени зададите вопрос на эско
JDF - не проблема. Только есть ли в АЕ инструменты, по поступившему на входе JDF разместить на листе PDF файлы по координатам?
Я почему заостряю момент - размещение PDF на странице по координатами (x и Y)
 

Spirit412

Топикстартер
15 лет на форуме
Сообщения
870
Реакции
128
Есть два решения:
1. Идея такая: Циклами вставляем поочерёдно файлы. На каждой итерации меняем координаты изменяя поля. Т.е. если файл вставляется с привязкой к левому полю. Мы на след. итерации его меняем и опять вставляем файл и т.д.

2. Использовать Python и библиотеку PyPDF2
The PageObject Class — PyPDF2 1.26.0 documentation

Я склоняюсь ко второму варианту.
 

ACTPOHOM

12 лет на форуме
Сообщения
2 981
Реакции
1 133
Можно клеить заготовки друг к другу смартметками. Привзяка к visble object. потом уменьшать до нужного размера и помещать куда требуется теми же метками
 

Spirit412

Топикстартер
15 лет на форуме
Сообщения
870
Реакции
128
PyPDF2 - небольшая библиотека.
Документация

Пример кода на Python.
Достаточно оформить его в класс для удобства, и использовать.

Python:
from PyPDF2 import PdfFileReader, PdfFileWriter
from PyPDF2.pdf import PageObject

reader = PdfFileReader(open("in.pdf",'rb'))
#получим первую страницу
min_page = reader.getPage(0)
#Создадим пустую страницу 700*500
big_page = PageObject.createBlankPage(None, 700, 500)
# пример кода как получить высоту страницы min_page.mediaBox.getHeight()

#https://pythonhosted.org/PyPDF2/PageObject.html
#mergeScaledTranslatedPage(page2, scale, tx, ty, expand=False)
big_page.mergeScaledTranslatedPage(reader.getPage(0), 1, 0, 0)

writer = PdfFileWriter()
writer.addPage(big_page)

with open('out.pdf', 'wb') as f:
  writer.write(f)
 

romyk

10 лет на форуме
Сообщения
1 353
Реакции
247
Вот и мне теперь приходится биться с похожей задачей.:(
Размещение в столбец, файл один и тот же, только расстояния между единичками берутся из XML. Вроде все просто, а сообразить, как сделать, не могу :(*[[
 

Spirit412

Топикстартер
15 лет на форуме
Сообщения
870
Реакции
128
Размещение в столбец, файл один и тот же, только расстояния между единичками берутся из XML. Вроде все просто, а сообразить, как сделать, не могу :(*[[
Тогда вам проще использовать S&R, где можно смартнеймами задавать значения расстояний между единичками. Если в XML данные уже все есть, то не составит труда считать их в смарт.
 

AM Labs Solutions

ESKO | Enfocus | Tilia Labs | ColorLogic | Callas
Сообщения
389
Реакции
197
Вот и мне теперь приходится биться с похожей задачей.:(
Размещение в столбец, файл один и тот же, только расстояния между единичками берутся из XML. Вроде все просто, а сообразить, как сделать, не могу :(*[[
Это должен быть только AE? Другие решения не рассматриваются?
 

Spirit412

Топикстартер
15 лет на форуме
Сообщения
870
Реакции
128
Это должен быть только AE? Другие решения не рассматриваются?
Эта ветка посвящена обсуждению вопросов АЕ.
У romyk уже используется АЕ. Судя по вопросу - в связке с какой-то ERP т.к. на входе готовый XML.
Вы же не думаете что из-за столь тривиального вопроса, человек (организация) будет менять АЕ на аналог? )))