[ID CC-CC2022] Вопрос по импорту XML в Индизайн

  • Автор темы Автор темы bughard
  • Дата начала Дата начала

bughard

Участник
Топикстартер
Сообщения
24
Реакции
0
Добрый день! Подскажите в какую сторону искать.
Есть Текст в XML размеченный тегами. Есть документ состоящий из одного разворота, в котором есть "Не линкованные" текстовые фреймы, размеченные тегами.
При импорте xml в этот документ, текст заливается как надо, но только в существующий разворот. Вся остальная информация остается в структуре (в правильном виде).

Что нужно сделать и возможно ли это (где почитать об этом), чтобы при импорте xml в индизайн создавались новые страницы, так же как, если бы текстовые фреймы были слинкованы между собой?
 
При импорте xml в этот документ, текст заливается как надо, но только в существующий разворот.
И это логично. Но! Если структура несуществующих разворотов идентична существующему, они извлекаются посредством DataMerge. При этом появится новый документ.

1572772435528.png
 
почитать в help

редко пользуюсь, по-моему предпочтительнее чтобы все импортировалось в одну story, тогда страницы добавятся для всего контента. значительно более гибко можно сделать скриптом, конечно
 
Work with repeating data
XML is repeating if the same configuration of elements appears multiple times in a row, but contains unique data in each instance. For example, database records are repeating. Addresses in a database table contain repeated information—name, street address, city, state, postal code—for a variety of individuals.
When you import XML content, you can select Clone Repeating Text Elements in the XML Import Options dialog box. Selecting this option tells InDesign to clone the repeated elements in the structure. Cloning allows you to merge repeating XML data into a document without having to create placeholder elements in the Structure pane (or placeholder text in a frame) for every single record. For example, to import an XML address list with 25 entries, create a matching element structure for one entry in the Structure pane. When you import the complete list, InDesign clones that structure to create elements for all 25 entries.
Repeating XML content is flowed as a single story when it is merged into the document. If placeholder frames have been threaded together, the content is flowed from one frame to the next. If there isn’t enough room in the placeholder frame(s) to accommodate the XML content, you can autoflow the remaining content by creating and threading more frames; you don’t have to manually drag elements from the Structure pane into individual frames.
 
почитать в help

редко пользуюсь, по-моему предпочтительнее чтобы все импортировалось в одну story, тогда страницы добавятся для всего контента. значительно более гибко можно сделать скриптом, конечно
Он и заливается сейчас в одну Story. Но по некоторым причинам это не очень удобно. Поэтому и хочется чтоб бы заливался в нелинкованные фреймы. Хелп я почитал, но ответа не увидел, либо не понял, к сожалению.
 
Он и заливается сейчас в одну Story. Но по некоторым причинам это не очень удобно. Поэтому и хочется чтоб бы заливался в нелинкованные фреймы. Хелп я почитал, но ответа не увидел, либо не понял, к сожалению.

так не получится (по-моему).
 
Обучающее видео выложу чуть позже.

обучающее чему именно? я не пользуюсь нативным импортом в силу его ограниченности. как недавно обсуждали с коллегами, этот импорт как добавили в какой-то ранней версии (cs2?), так и не меняли в нем ни капли по сей день. предпочитаю распарсить xml в скрипте, затем заполнить документ из кода
 
Последнее редактирование:
индизайн умеет добавлять новые страницы при переполнении фрейма, об этом в другом разделе help есть 'hz'
У меня на полосе 5 фреймов каждый под свой тег, которые могут переполниться. И галочка Smart text Reflow включена, но никак не помогает. И мне нужно ни при переполнении текстового фрейма, а дублирование разворота под следующую такую же инфу из Структуры. Развороты по структуре не отличаются. Различие только в текстовом наполнении. Теговая структура на разворотах так же одинакова.
 
Не смотрите. В чем проблема. ТСу будет полезно. Может ещё кому.
 
И мне нужно ни при переполнении текстового фрейма, а дублирование разворота под следующую такую же инфу из Структуры.
1) импортируете XML
2) открываете палитру DataMerge
3) находите меню как на моем скриншоте
4) жмете ОК

Или потерпите, сейчас не могу выложить видео. Я когда-то делал каталог подобным образом, остались исходники.
 
1) импортируете XML
2) открываете палитру DataMerge
3) находите меню как на моем скриншоте
4) жмете ОК

Или потерпите, сейчас не могу выложить видео. Я когда-то делал каталог подобным образом, остались исходники.

Конечно подожду. Рад буду любой помощи.
 
1) импортируете XML
2) открываете палитру DataMerge
3) находите меню как на моем скриншоте
4) жмете ОК

Или потерпите, сейчас не могу выложить видео. Я когда-то делал каталог подобным образом, остались исходники.

это меню нельзя выбрать без data source

Screenshot 2019-11-03 20.08.08.png

а xml как data source не поддерживается 'hz'
 
У меня на полосе 5 фреймов каждый под свой тег, которые могут переполниться. И галочка Smart text Reflow включена, но никак не помогает. И мне нужно ни при переполнении текстового фрейма, а дублирование разворота под следующую такую же инфу из Структуры. Развороты по структуре не отличаются. Различие только в текстовом наполнении. Теговая структура на разворотах так же одинакова.

ну да, нативным импортом этого добиться будет сложно (можно как-то через якоренные фреймы (все в одну story) и модификацию xml попробовать, но не всегда получится)

через data merge можно, но он xml не поддерживает, надо конвертить в csv

залейте свой макет и xml посмотреть
 
ну да, нативным импортом этого добиться будет сложно (можно как-то через якоренные фреймы (все в одну story) и модификацию xml попробовать, но не всегда получится)

через data merge можно, но он xml не поддерживает, надо конвертить в csv

залейте свой макет и xml посмотреть
Ссылка на тестовые файлы
 
через data merge можно, но он xml не поддерживает, надо конвертить в csv
Да, конечно, вы правы. Шесть лет прошло как я решал подобную задачу, подзабыл уже детали.

1) Исходный XML открываем в Excel и сохраняем в CSV или TXT с табуляцией. Я пользуюсь TXT. Кириллицу нужно пересохранить, например в Блокноте, в кодировке UTF-16.
1572815842466.png
2) Подгружаем файл в DataMerge.
3) Раскидываем теги по соответствующим фреймам (достаточно оставить одну страницу)
1572815992923.png
4) Размножаем остальное.
1572816664124.png

Кина не будет.

P.S. Здесь мне попалась реализация непосредственно с XML.

Заканчивается статья так:
If anyone wants to take this script and polish it (maybe a user interface that lets you pick the XML and enter the dummy-page-count or even some script that calculates the number of pages necessary) you are of course free to do so!
 

Вложения

  • 1572816644447.png
    1572816644447.png
    23.8 КБ · Просм.: 326
  • Спасибо
Реакции: Skvoznyak