2014-12-08 3 views
0

Ситуация:Почему позиция позиции испортилась после переопределения?

My Script создает weekplanner с MasterPage в качестве шаблона.

Что происходит в скрипте:

  • Создать страницу
  • Применить Masterpage
  • Override каждый элемент
  • Изменить содержание каждого элемента
  • сделать это по всей длине даты-массива

Проблема:

Позиция masterPageItems после переопределения перепуталась. Я сделал два скриншота в качестве демонстрации.

Теперь реальный странность об этом в том, что он испортится на «нестандартного размера» документ, но он не получает перепутались на А4-формат ...

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

Вы знаете, что может быть причиной такого поведения?

Masterpage:http://i.imgur.com/T0ApzZj.png?1

Перепутался после переопределения:http://i.imgur.com/Lx6rZup.png?1


EDIT: В качестве доказательства, что восстановление geometricBounds не работает, я сделал следующее:

function OverrideMasterItems(currPage) { 
    var allItems = currPage.masterPageItems; 
    var itemPos; 
    for(var i=0;i<allItems.length;i++){ 
    try{ 
     itemPos = allItems[i].geometricBounds; 
     allItems[i].override(currPage); 
     allItems[i].geometricBounds = itemPos; 
     $.writeln("Original itemPos: " + itemPos); 
     $.writeln("New itemPos: " + allItems[i].geometricBounds); 
     if(itemPos == allItems[i].geometricBounds) { 
      $.writeln("same position"); 
     } 
    } 
    catch(e){} 
    } 
} 

Как вы видите, я снова назначаю элементы оригинальной геометрической границы, и в консоли говорится, что это одно и то же значение, но оно похоже на скриншоты. Также он не пишет «то же положение», что означает, что if-statement не соответствует действительности ...

ответ

0

Я решил это! Для дальнейшего использования:

Это не программирование ошибки, но некоторая неловкое InDesign «ошибка (?!)», которые приводят к этому странному поведению:

Я скопировал элементы Masterpage из другого документа , которые имели разные размеры, и я просто изменил размер текстовых полей, чтобы они соответствовали новому формату.

Вот что вызвало это поведение - похоже, что текстовые поля по-прежнему имеют некоторую информацию из другого документа, из которого я получил его, и что эта информация не была удалена/редактируема.

Потому что даже удаление стилей абзаца и т. Д. Не изменило странное поведение ...

Как я довольно новыми для InDesign сценариев я, если это обычная вещь, которую вы, ребята, знаете о не знаю, но это дало мне головные боли ...;)

EDIT 1: Я не сделал реши это! Все еще не работает!

Хорошо, это все-таки происходит, и я просто не понимаю, почему ... Так как скрипт выполняет «переопределение» на элементе, элемент получает приложен к совершенно неправильному положению ...