[ID CS4-CS6] Привязка рисунков к тексту.

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

Vlx

Участник
Топикстартер
Сообщения
4
Реакции
1
Всем, привет. Давненько я не брал в руки шашек.
Вроде бы типовая задача, но что-то с ходу не могу разобраться и ни хелп, ни гуглеж не помог.
Есть длинная книжка в которой встречаются достаточно крупные иллюстрации. Необходимо разместить рисунок внизу страницы на которой находится ссылка на него (первый скриншот), а если рисунок не умещается на этой странице ниже ссылки, то его необходимо поместить на следующей странице (второй скриншот). Индиз же автоматом делает то что на третьем скрине. Конечно, можно вручную сместить высокие картинки на соседнюю страницу, но при переверстке, если ссылка оказывает выше рисунка, он автоматом не подтягивается на ту же страницу к ссылке. Ну и совсем безвыходная ситуация, если ссылка переезжает в нижнюю часть правой страницы, то разместить рисунок на левой странице следующего разворота (не разрывая связь) не получается.
У Индиза действительно с эти проблема или я что-то пропустил в настройках привязки?
Единственное более-менее приемлемое обходное решение мне удалось найти размещая рисунки в сносках (footnote): пустая строка + рисунок. Тут всё работает как надо: если рисунок не умещается ниже ссылки на него он переезжает на следующую страницу, в том числе и на следующий разворот. Но у этого решения есть существенный недостаток, так как настройки сносок общие на весь документ, то пытаясь выставить настройки так, что бы первая пустая строка сноски не уменьшала высоту поля набора становится невозможно использовать сноски там где они нужны, да и приходится отказаться от линейки отбивающей сноску (или можно изменить эти настройки для конкретной сноски и я просто не нашел как?).

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

2024-07-21_152450.png

2024-07-21_152747.png

2024-07-21_152556.png
 
Спорный дизайн - вы не показали как должна выглядеть страница если на ней располагается и картинка, и сноска. Причем, возможны варианты (см. Война и Мир Толстого), когда сноска так велика, что не помещается на одной странице...
Тут надо понимать, что сложные работы всегда требуют творческого ручного труда. Зато, потом можно заслуженно гордиться своей работой.
Но если не хотите гордиться, то копайте дальше - может кто-то и подскажет, как это сделать без участия головы и рук.
 
Есть ли какое-то решения этой проблемы без ручного контроля
откуда ж ему взяться?
Кнопки "сделайся само и красиво" еще не придумали.
Само заякорение объектов, он никак не ваш случай.
 

Тут надо понимать, что сложные работы всегда требуют творческого ручного труда. Зато, потом можно заслуженно гордиться своей работой.
Но если не хотите гордиться, то копайте дальше - может кто-то и подскажет, как это сделать без участия головы и рук.
Спорный дизайн, сложная работа? Мне казалось, что это типовое размещение иллюстраций. Хочется гордиться не ручным многократным перелопачиванием текста, а тем что приложил голову и сделал максимальную автоматизацию процесса.
 
если рисунок не умещается на этой странице ниже ссылки, то его необходимо поместить на следующей странице (второй скриншот).

Есть ли какое-то решения этой проблемы без ручного контроля всех иллюстраций каждый раз после того как идет переверстка, добавляется текст/страницы?
Если вы на странице со второго скриншота добавите достаточное количество символов перед символом якоря, чтобы этот символ сместился на правую сторону разворота, то иллюстрация у вас на следующий разворот не перескочит. Контейнер может располагаться только на том развороте, где стоит символ привязки, и никак иначе.
 
приложил голову и сделал максимальную автоматизацию процесса.
Здесь могут помочь только скрипты. Алгоритм работы примерно следующий.
1) Нужно разметить отдельным символьным стилем все текстовые ссылки на рисунки: Рис. 1, Рис. 2 и т.д.
2) Присвоить каждому якорному объекту, который идет после этой ссылки, Script Label, который соответствует тексту, которому присвоен символьный стиль из п. 1. - Рис. 1, Рис. 2 и т.д. Это нужно выполнить вручную или скриптом.
3) Сделать всем якорным объектам "отвязку" - Object - Anchored Object - Release. Есть скрипт, который отвязывает якорные объекты только с указанным в скрипте объектным стилем.
4) Убрать все рисунки на Pasteboard, оставив в цепочке текстовых фреймов только текст. Есть скрипт, который, в зависимости от количества объектов на странице и расположения на развороте, может смещать их в определенные координаты x и y, опционально сгруппировав. Несложно его исправить, чтобы он смещал только объекты с нужным объектным стилем (только рисунки).
5) И тут начинается самое главное. Скрипт ищет ссылки на рисунки, которым присвоен символьный стиль, затем ищет в документе фрейм с аналогичным Script Label, и сравнивает координаты Insertion point этой ссылки и вертикальный размер фрейма с соответствующим Script Label. Если расстояние от Insertion point ссылки до нижнего края фрейма основной текстовой цепочки больше, чем вертикальный размер фрейма с рисунком, то фрейм с рисунком переносится на страницу, на которой располагается ссылка на этот рисунок. Если расстояние от Insertion point ссылки до нижнего края фрейма основной текстовой цепочки меньше, чем вертикальный размер фрейма с рисунком, то фрейм с рисунком переносится на страницу с номером на единицу больше, чем номер страницы, на которой расположена ссылка на этот рисунок.
Проще некуда.
 
Мне казалось, что это типовое размещение иллюстраций.
Я верстал книгу в которой было до 5 картинок на страницу и текст в три колонки. Соответственно, были подготовлены 8 шаблонов страниц и приходилось заверстывать по одной странице с расположением картинок в зависимости от их числа, размера и ориентации на странице. Получилось очень прилично - шаблоны создавали строгость расположения картинок, а их количество - некоторое разнообразие. Сноски тоже присутствовали с оформлением по ГОСТу.
 
  • Спасибо
Реакции: zollinger