База данных MySQL в Adobe InDesign

Не совсем уверен, что это правильное место для публикации, но подумал, что у кого-то здесь может быть небольшой опыт в этом.

У нас есть база данных MySQL, содержащая ряд продуктов (на самом деле 3200). По очевидным причинам мы не хотим перепечатывать все в InDesign, чтобы подготовить наш каталог к ​​новому сезону. Есть ли у кого-нибудь опыт создания чего-то похожего на функцию Microsoft 'Mail Merge' в InDesign?

Есть еще одно предостережение. Элементы в БД имеют уникальный серийный номер длиной 5 цифр. Затем у нас есть три цветные полосы, которые имеют цветовую кодировку в соответствии с двумя последними цифрами серийного номера элемента. Например, у числа 12345 три вертикальные полосы будут окрашены в красный, зеленый и красный цвета (в нашей системе 5 соответствует красному цвету, а 4 — зеленому).

Кто-нибудь знает, доступны ли такие функции в InDesign? Я думал, что возможно создать файл PHP, который выводит все в формате PDF, но, поскольку нам может потребоваться отредактировать некоторые детали, в идеале мы хотели бы, чтобы эта информация была легко доступна и редактировалась в Adobe InDesign.

Если у кого-то есть опыт в этом, я, конечно, буду рад вашим комментариям.


person BenM    schedule 20.04.2011    source источник
comment
У Indesign нет возможности использовать Javascript? Может быть, это вариант для вас, чтобы заполнить свой документ?   -  person Ocaso Protal    schedule 20.04.2011


Ответы (7)


Сначала вы должны подготовить данные в формате XML, экспортировать в XML, а затем импортировать XML в проектный документ (Вид -> Структура; Импорт XML...), который ранее был подготовлен в InDesign.

InDesign работает с данными XML, экономя много времени

person Tihomir Budic    schedule 30.04.2011

Оба приведенных выше варианта будут работать для ввода ваших данных, но они пропускают ваш другой вопрос о цветах. Я предполагаю, что при импорте данных вы хотите автоматически отображать цвета в соответствии с уникальным серийным номером, верно?

Таким образом, ответ состоит из двух частей: 1. Да, вы можете импортировать данные в формате XML. Это будет самый простой и гибкий способ сделать это. Слияние данных подходит для коротких документов, но для большого количества данных это будет медведь. Слияние данных завершается созданием одного текстового фрейма для каждой записи данных. Это было бы много дополнительной работы.

С другой стороны, XML можно импортировать для автоматического заполнения документа и заполнения страниц, а также форматировать себя на основе стилей абзацев и символов. Книга: Руководство дизайнера по Adobe InDesign и XML научит вас импортировать XML.

Вопрос 2: «Как вы генерируете цветные фишки» немного сложнее. Вам придется написать XSLT для загрузки графики на основе чисел в серийном номере. Мы проделали нечто подобное со звездами в информационном бюллетене портфеля акций, используя процедуру xsl:choose для выбора правильного количества звезд на основе данных в XML. Такие как:

<xsl:choose> 
<xsl:when test="name()='stars'">
<!--    <xsl:copy><xsl:apply-templates/></xsl:copy><xsl:text></xsl:text>-->
<xsl:choose> 
<xsl:when test="current()[.=2]"><stars>&#72; &#72;</stars>
</xsl:when>
<xsl:when test="current()[.=3]"><stars>&#72; &#72; &#72;</stars>
</xsl:when>
<xsl:when test="current()[.=4]"><stars>&#72; &#72; &#72; &#72;</stars>
</xsl:when>
<xsl:when test="current()[.=5]"><stars>&#72; &#72; &#72; &#72; &#72;</stars>
</xsl:when>
<xsl:otherwise></xsl:otherwise> 
</xsl:choose> 

Вы можете создать аналогичную процедуру и даже вместо этого загружать графику с жесткого диска или сервера. При импорте XML в InDesign вы загружаете XSLT в диалоговом окне параметров импорта XML. Это может выполнить работу по загрузке цветных чипов на основе серийного номера.

Помимо возможности создавать графические чипы, XSLT также может помочь вам структурировать содержимое данных, вставляя по мере необходимости возвраты абзацев и другой шаблонный текст и пробелы. Мне нравится использовать <xsl:text></xsl:text> для вставки пробелов, которые мне нужны для InDesign. Он работает как чемпион.

Во многих случаях XML-файлы не содержат пробелов или их слишком много. Метод XSLT позволит вам добавлять, удалять и контролировать пробелы в результирующем макете по мере необходимости.

Надеюсь, это поможет.

person Jim Maivald    schedule 05.07.2012

InDesign имеет очень мощные встроенные функции XML. Вы можете сделать их более мощными с помощью XSLT.

Я подробно описал весь рабочий процесс XML в своей книге «Руководство для дизайнеров по Adobe InDesign и XML», доступной в Adobe Press. Или вы можете посмотреть мои записи Lynda.com для «Динамических рабочих процессов с использованием Adobe InDesign и XML».

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

Используя метод потокового импорта XML, вы можете создать один образец макета, используя соответствующую структуру XML, а затем импортировать импорт, используя параметры клонирования и фильтрации.

Если вам нужно переупорядочить элементы данных, вы можете использовать XSLT при импорте или сгенерировать другую структуру XML, создав запрос в MySQL и снова экспортировав данные в XML.

Используя XSLT при импорте, как описано выше, вы можете заменить числа графикой. Мы сделали это с информационным бюллетенем, в котором число, например 3, было заменено изображением с тремя звездочками.

person Jim Maivald    schedule 07.12.2012

Вы также можете попробовать функцию слияния данных InDesign из CSV-файла.

person Josh Voigts    schedule 30.06.2012

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

Например, используйте вышеупомянутый рабочий процесс XML, чтобы поместить серийный номер в том месте, где вам нужны цветные полосы. Примените стиль абзаца, назовем его «Цветные полосы», к тексту шаблона здесь, а в параметрах «GREP» стиля абзаца найдите цифру 3 и примените к нему стиль символов «Красный», где это в стиле символов используется формат подчеркивания, масштаб и стиль которого соответствуют вашим потребностям. И примените тот же красный цвет к цифре 3, чтобы она исчезла в подчеркивании.

Это основная идея: поиграйте со шрифтом (например, вам нужно использовать шрифт с фиксированной шириной), масштабированием и размером шрифта, чтобы получить нужный интервал и расположение.

И, возможно, используйте функцию «Вложенные стили» стиля абзаца, чтобы применить «белый» стиль символов к первым трем буквам, чтобы они исчезли на заднем плане.

person Stephen    schedule 31.01.2014

вы можете использовать www.porky.io для доступа к базе данных JavaScript.

И нет необходимости использовать формат файла обмена, такой как xml (но, конечно, это возможно), вы можете запрашивать напрямую через SQL.

Для доступа к базе данных есть образец, включенный через php pdo. MySQL должен легко интегрироваться...

person user4083394    schedule 26.09.2014

Вы можете попробовать iziDBConnect. Это дополнение для Adobe Indesign имеет пробную версию. Вы можете скачать его с Adobe Exchange. Он напрямую подключается к MySQL. http://www.izidbconnect.com/ Далее, возможно, вам понадобится небольшой скрипт для преобразования некоторых текстовые поля в изображение.

person XavierSC    schedule 09.07.2021