[ID CC-CC2021] Разбиение многострочного фрейма

kuplumosk

Участник
Топикстартер
Сообщения
544
Реакции
127
Есть куча текста типа:
КОРОБКА НАГРЕВАТЕЛЯ[Enter]
РАЗЪЕДИНИТЕЛЬ ЛЕВОГО БОРТА[Enter]
ЗУМПФОВЫЙ НАСОС[Enter]

2017-07-11_23-19-43.png
Нужно залить этот текст во фрейм, потом разбить этот фрейм на много фреймов, которые начинаются с начала строки и заканчиваются там, где [Enter], т.е 1 строка = 1 фрейм по размеру текста, при этом оставить фреймы соединенные друг с другом по цепочке текста.
2017-07-11_23-21-08.png
Подскажите как можно это сделать? Скриптинг?
Сейчас это уныло и вручную выглядит так, двигать естественно я их буду сам...

2017-07-11_23-22-12.png
 

azz

alexey
15 лет на форуме
Сообщения
711
Реакции
359

Не по теме:
есть все-таки тот, кто согласен работать на переводчиков ))
 

Dmitrij M

15 лет на форуме
Сообщения
11 046
Реакции
5 944

Не по теме:
kupili taki mosk :)
 
  • Спасибо
Реакции: _MBK_

Nikita.Kachaev

Участник
Сообщения
23
Реакции
3
Если вы объясните для достижения какого результата нужен этот подход, то, возможно вам подскажут альтернативую методу.
 

azz

alexey
15 лет на форуме
Сообщения
711
Реакции
359
Не понятно зачем оставлять связь во фреймах...

Можно и без скриптинга в принципе руками быстро сделать.
Нарисовать кучу связанных фреймов с помощью размножения стрелками во время создания фрейма.
Keep options - next frame для параграфа + auto size для фрейма.
 
  • Спасибо
Реакции: LeonidB

azz

alexey
15 лет на форуме
Сообщения
711
Реакции
359
а вот кстати я даже когда тоже так и делал для abbyy
Код:
#target Indesign

    var doc = app.activeDocument;
    var mySel = doc.selection[0];
    
for (var i = 0; i < mySel.paragraphs.length; i++) {
    var myPar = mySel.paragraphs[i];
    var myText = myPar.contents;
    var myTextFrame = myPar.textFrames.add();

    myPar.contents = "\r";
    myTextFrame.insertionPoints[0].contents = myText;   
    myTextFrame.fit(FitOptions.frameToContent);
    myTextFrame.appliedObjectStyle = doc.objectStyles.item('Text Eng 8 pt');
    myTextFrame.paragraphs[0].contents = myTextFrame.paragraphs[0].contents.substring(0, myTextFrame.paragraphs[0].contents.length - 1);
}
выделять только нужно фрейм, и не забыть object style нужный вписать