// Сначала проверяем наличие файлов с расширением emf // (такова специфика подготовки публикации), если нет - ищем eps fname = listFolder + '/' + next + '.emf' if (!File(fname).exists){

fname = listFolder + '/' + next + '.eps'

}

if (File(fname).exists) {

for (var i=2; i<pS.length; i++){ switch(pS[i].name){

case 'Diagram Header': pSA[ aS[0] ] = i; break;

case 'Diagram': pSA[ aS[l] ] = i; break;

case 'Diagram Footer': pSA[ aS[2] ] = i; break;

case 'Spacer': pSA[ aS[3] ] = i; break;

}

}

// В зависимости от того или иного выбора пользователя // в дальнейшем будем использовать ссылки на разные объекты target = (ask==0) ? free_tF : inline_tF

//He привязанный к тексту контейнер if(target==free_tF){

// Позицию для контейнера выбираем так, чтобы он находился //по вертикали на том же уровне, что и курсор.

// Фактически зто эквивалент in-line-графики,

// но только без привязки к тексту.

top = (mySelection.baseline < textF.geometricBounds[2] PREF_HIGHT)? mySelection.baseline : (textF.geometricBounds[2] - ^ PREF_HIGHT) target. add ({geometricBounds: Array (top,

mySelection.parentTextFrames[0].geometricBounds[1], top + PREF_HIGHT+10, _WIDTH +

mySelection.parentTextFrames[0].geometricBounds[1])})

)else{

// Контейнер, встроенный в текст target.add() with(target[0]) {

// Обновляем содержимое родительского объекта parent.recompose();

// Устанавливаем минимально необходимые размеры для фрейма geometricBounds =

[geometricBounds [0] , geometricBounds [1],

geometricBounds[0]+PREF_HIGHT, geometricBounds[1]+_WIDTH] }

}

// Вставляем в контейнер заголовок и подрисуночную подпись,

// оставляем пустой абзац для вставки в него иллюстрации

with(target[0]){

contents = startP.contents +'\r'+ endP.contents.substr(0, endP.contents.length-1)

// Сразу же форматируем текст

paragraphs[0].appiystyle(pS [pSA [ aS[0]]], true)

// В пустой абзац вставляем контейнер для иллюстрации paragraphs[1].rectangles.add({fillColor: aD.swatches[0], strokeWeight: 0})

// Стандартная процедура при внедрении в текст графических объектов paragraphs[1].recompose()

// Вставляем иллюстрацию with(paragraphs[1].rectangles[0]){ place(File(fname))

w = aiiGraphics [0] . geometricBounds [3] -aiiGraphics[0].geometricBounds[1] h = aiiGraphics [0] . geometricBounds [2] -aiiGraphics[0].geometricBounds[0]

// В зависимости от размеров иллюстрации принимаем решение:

// если они меньше, чем у контейнера, то содержимое центрируем;

// если больше - расширяем размеры контейнера до размеров // иллюстрации, чтобы ничего не осталось скрытым if (w < _WIDTH-1 || h < PREF_HIGHT-1) { geometricBounds = [geometricBounds[0],


⇐ вернуться назад | | далее ⇒