myEndCharacter).contents = "Новое содержимое второго абзаца" Почему мы вычли два символа, ведь перевод с троки в процессе верстки рассматривается как один? На самом деле, давайте посмотрим па ситуацию с другой стороны. Для задания абзацев несколькими строчками ранее мы использовали комбинацию \г - а ведь это как раз и есть два символа, поэтому вполне логично вычитание именно такого количества символов.
5.5. Импорт текста
Редко когда в публикацию помещается совсем неформатированный текст - как правило, он сначала проходит определенную первичную обработку, в том числе и форматирование, а уже в публикации проводятся лишь точечные исправления. В такой ситуации без импорта документов (метод placet)) из текстовых редакторов не обойтись. Рассмотрим вопрос размещения в публикации содержимого одного из таких частично подготовленных документов.
Метод place о при использовании к странице имеет следующие параметры:
place(File[, PlacePoint] [, DestinationLayer] [, ShowingOptions]
[, Autoflowing])
Здесь:
rile- ссылка на импортируемый файл;
piacepoint- массив координат по осям х, у\
DestinationLayer- при необходимости - определенный слой:
showingOptions- отображать окно с параметрами импорта или нет;
Autoflowing- использовать автоматическое добавление необходимого количества текстовых фреймов для размещения всего содержимого импортируемого документа или ограничиться только текущей страницей.
Рассмотрим скрипт из листинга 5.7.
Листинг 5.7. Подготовка к импорту
// Начало - традиционное
var myDocument = арр.documents.add();
myDocument.viewpreferences.horizontalMeasurementUnits - ^
MeasurementUnits.points; myDocument.viewpreferences.verticalMeasuremcntUnits =
MeasurementUnits.points;
// Установка координат, в которые будет помещаться текст // из импортированного документа
var myX = myDocument.pages.item(0).marginPrefcrences.left; var myY = myDocument.pages.item(O).marginPreferences . top; Проводим сам импорт (листинг 5.8).
I Листинг 5.8. Импорт текста с заданием положения фрейма
var myStory = myDocument.pages [0] .place (File ("/с/test. txt") ,'Ъ [myX, myY], undefined, false, true)[0]; Замечание по поводу установки массива координат: если в качестве места вставки выбрана определенная колонка уже существующего фрейма, то позицию по горизонтали задавать не нужно - ширина для импортируемого текста будет ограничена шириной этой колонки.
А вот как происходит импорт документа в уже существующий фрейм (листинг 5.9).
\ Листинг 5.9: Импорт документа в уже существующий фрейм
var myDocument = арр.documents.addt);
myDocument.viewPreferences.horizontalMeasurementUnits =•
MeasurementUnits.points; myDocument.viewPreferences.verticalMeasurementUnits =
MeasurementUnits.points;
// Создаем фрейм назначения var myTextFrame =
myDocument.pages.item(O).textFrames.add({geometricBounds: myGetBounds(myDocument, myDocument.pages.item(0))}); Параметры метода placet) при использовании к фрейму несколько отличаются: