Как определить на какой странице находится текст?

  • Автор темы Автор темы dimon15
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

dimon15

Участник
Топикстартер
Сообщения
8
Реакции
0
Как определить на какой странице находится текст?
Программирую скрипт на VBA.
Как можно зная объект TextFrame и номер строки
определить на какой странице находится эта строка?
 
Ответ: Как определить на какой странице находится текст?

В поиск. Обсуждалось сто тысяч миллионов раз.
 
Ответ: Как определить на какой странице находится текст?

Oleg Butrin сказал(а):
В поиск. Обсуждалось сто тысяч миллионов раз.
Ну не преувеличиваем... :-)
P.S. Одна непонятка - как перейти от номера абзаца в тексте к фрейму и потом к странице? Тоже через Parent?
 
Ответ: Как определить на какой странице находится текст?

хочется прийти к конструкции вида:


Dim P As Long
For i = 1 To tf.ParentStory.Paragraphs.Count
P = tf.ParentStory.Paragraphs(i).Parent.Name ' ?????
next i
 
Ответ: Как определить на какой странице находится текст?

Объясняю сто тысяч миллионов первый, надеюсь он же и последний раз.
Если присмотреться повнимательнее, то можно заметить, что любой текстовый объект уровня line-paragraph-word-character-insertionPoint и т.п. имеет свойство parentTextFrames (parentTextFrame в версии 3). Это ссылка на массив родительских текстовых фреймов. Вот из этого массива выбираем нужный фрейм и по его родительскому объекту определяем нужную страницу.
Вопрос, как определить родительскую страницу текстового фрейма обсуждался даже не сто тысяч миллионов, а гораздо больше раз.
 
Ответ: Как определить на какой странице находится текст?

ok.
Единственный оставшийся вопрос - что считать страницей для абзаца, который не влез в последний фрейм. Для него ссылка на parent дает nothing. Но это уже логика приложения....
 
Ответ: Как определить на какой странице находится текст?

dimon15 сказал(а):
ok.
Единственный оставшийся вопрос - что считать страницей для абзаца, который не влез в последний фрейм. Для него ссылка на parent дает nothing. Но это уже логика приложения....
Это уже вам решать, что делать с текстом, который не влез в последний фрейм.
TextFrameOverset так сказать.
либо добавлять страницы и размещать, либо молиться, что бы все влезло.
 
Статус
Закрыто для дальнейших ответов.