Гость
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / MS Word. Половина листа А4 / 19 сообщений из 19, страница 1 из 1
29.05.2014, 08:45
    #38655255
tamerlan00
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
День добрый товарищи.
Лист А4 программно заполняется из Delphi-приложения в MS Word. После заполнения страницы документом (который строится динамически на основе данных) я должен узнать, влезло ли его содержимое на пол листа А4 или нет.
Если инфа влезает на пол листа, то я смогу заполнять вторые пол листа на этой же странице второй копией документа.

На данный момент я эмпирически решаю эту проблему считаю количество строк и возможные переносы, и это с учетом того что есть и таблица. Поэтому частенько алгоритм работает неверно (да и вообще ужасное решение).

Нигде не нашел информации о том как определить положение текстового курсора в точках XY.

P.S. Моя задача печатать на одном листе А4 два экземпляра документа, если он влезает на половину листа.
...
Рейтинг: 0 / 0
29.05.2014, 08:47
    #38655257
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
вставь две копии и посмотри количество получившихся страниц
...
Рейтинг: 0 / 0
29.05.2014, 09:42
    #38655315
tamerlan00
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
Shocker.Proвставь две копии и посмотри количество получившихся страниц
Спасибо. Этот вариант помогает узнать влезет ли две копии документа на одну страницу А4.

Но я забыл упомянуть в первом сообщении, что при печати двух копий документа на одном листе нужно бы делать срез по середине листа, чтобы получалось два листа А5.

Вот я, например, знаю, что документ влезет на лист А4 дважды.
Как мне определить позицию текстового курсора для начала заполнения второй копии на листе, чтобы он был в начале второй половины листа?
...
Рейтинг: 0 / 0
29.05.2014, 09:44
    #38655317
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
сделать предварительно нужную разметку на листе с помощью разделов, колонок, текстовых фреймов, таблицы и т.п.
...
Рейтинг: 0 / 0
29.05.2014, 09:56
    #38655331
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
tamerlan00,

авторВот я, например, знаю, что документ влезет на лист А4 дважды.
я улучшения понимания задачи, хотелось бы увидеть шаблон документа или сам документ
...
Рейтинг: 0 / 0
29.05.2014, 09:56
    #38655332
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
tamerlan00Как мне определить позицию текстового курсора?
Код: vbnet
1.
2.
Selection.Start 
Selection.End
...
Рейтинг: 0 / 0
29.05.2014, 09:57
    #38655333
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
странно на форуме выделяет старт и конец))
...
Рейтинг: 0 / 0
29.05.2014, 10:08
    #38655349
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
tamerlan00,

таблица с невидимыми границами и мин высотой строки=12,8 и не разрывать ячейку
...
Рейтинг: 0 / 0
29.05.2014, 10:09
    #38655352
tamerlan00
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
ПЕНСИОНЕРКАtamerlan00,

авторВот я, например, знаю, что документ влезет на лист А4 дважды.
я улучшения понимания задачи, хотелось бы увидеть шаблон документа или сам документ
Увы, не предоставлю. Но документ этот это типовой договор на оказание услуг физическому лицу, и, в зависимости от их разнообразия и названия услуг, документ может "гулять". Шаблона документа нет, документ полностью динамически создается из программы.
...
Рейтинг: 0 / 0
29.05.2014, 10:12
    #38655359
tamerlan00
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
Shocker.Proсделать предварительно нужную разметку на листе с помощью разделов, колонок, текстовых фреймов, таблицы и т.п.
Я бы и рад все это сделать, но не совсем понял что вы имеете ввиду. Шаблона документа у меня нет. Документ полностью генерится из приложения, вплоть до таблиц.
...
Рейтинг: 0 / 0
29.05.2014, 10:17
    #38655370
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
Ну так и генери предварительно разметку. Один из конкретных советов дала Пенсионерка.
tamerlan00Увы, не предоставлю.Увы, не можем дать более дельных советов
...
Рейтинг: 0 / 0
29.05.2014, 10:18
    #38655372
tamerlan00
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
ПЕНСИОНЕРКАtamerlan00,

таблица с невидимыми границами и мин высотой строки=12,8 и не разрывать ячейку
хм. Это интересный вариант. К тому же не требует содержания шаблона, так как я могу данную таблицу с нужной высотой и невидимостью создать. Думаю данный вариант наиболее приемлемый на текущий момент.

Единственное что мне не нравится так это то, что таблица должна быть фиксированная, а значит документы в этих ячейках останутся и я не смогу узнать влезают таки они на один лист или нет =)
Для этого мне придется предварительно использовать метод предложенный Shocker.Pro, затем, получив результат о том, что две копии документа влезут на один лист, стереть все, генерировать таблицу с двумя фиксированными ячейками и уже туда рисовать документы.
...
Рейтинг: 0 / 0
29.05.2014, 10:19
    #38655373
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
tamerlan00таблица должна быть фиксированнаячитайте внимательноПЕНСИОНЕРКАтаблица с .... мин высотой
...
Рейтинг: 0 / 0
29.05.2014, 10:21
    #38655378
tamerlan00
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
Shocker.ProНу так и генери предварительно разметку. Один из конкретных советов дала Пенсионерка.
tamerlan00Увы, не предоставлю.Увы, не можем дать более дельных советов
Ваши советы и советы ПЕНСИОНЕРКА должны помочь решить мою задачу. Спасибо вам за помощь.
...
Рейтинг: 0 / 0
29.05.2014, 10:23
    #38655383
tamerlan00
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
Shocker.Protamerlan00таблица должна быть фиксированнаячитайте внимательноПЕНСИОНЕРКАтаблица с .... мин высотой
хм. Кажется у меня еще могут возникнуть вопросы =)
Я вернусь к этой теме, когда предварительно изменю код по вашему алгоритму.
...
Рейтинг: 0 / 0
29.05.2014, 11:36
    #38655506
Сын вождя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
Есть функция Window.GetPoint - получение позиции курсора.

Есть функция Range.Information - получение номера страницы области. Можно изначально выстовить А5 формат страницы, и следить за номером страницы, а в конце переключить на A4. Или банально поднять нижнюю границу страницы.
...
Рейтинг: 0 / 0
29.05.2014, 11:54
    #38655543
tamerlan00
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
Сын вождяЕсть функция Window.GetPoint - получение позиции курсора.

Есть функция Range.Information - получение номера страницы области. Можно изначально выстовить А5 формат страницы, и следить за номером страницы, а в конце переключить на A4. Или банально поднять нижнюю границу страницы.

А функция GetPoint точно возвращает позицию текстового курсора в XY? (не мыши!) Вроде как я читал про это и это было про мышь, но может быть я и ошибаюсь.
Интересные два последних варианта, по поводу А5 я ранее думал, но не дошел до него сам =)

И сразу еще один вопрос, банальней некуда: Как определить номер страницы на который установлен текстовый курсор?
Я удивлен, но не смог найти синтаксиса в Интернете.
...
Рейтинг: 0 / 0
29.05.2014, 12:21
    #38655598
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
Selection.Information - там много всякого
...
Рейтинг: 0 / 0
29.05.2014, 12:21
    #38655601
Сын вождя
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MS Word. Половина листа А4
tamerlan00...GetPoint точно возвращает позицию текстового курсора в XY? (не мыши!)...
Точно, точно. Код из справки:
Код: vbnet
1.
ActiveWindow.GetPoint pLeft, pTop, pWidth, pHeight, Selection.Range


tamerlan00...определить номер страницы на который установлен текстовый курсор...
Один из вариантов:
Код: vbnet
1.
N = Selection.Information(wdActiveEndPageNumber)
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / MS Word. Половина листа А4 / 19 сообщений из 19, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]