hktloveme Ответов: 3

как установить richtextbox в формате A4


Пожалуйста, скажите мне, как установить richtextbox в размер A4

Sandeep Mewara

Что?

3 Ответов

Рейтинг:
22

Abhinav S

Может быть, это обсуждение[^] может помочь вам.


Рейтинг:
2

Craig P Williams Sr

Итак, я попробовал это сегодня, и вот вам обходной путь. Форматированное текстовое поле не имеет настройки, но RTF имеет теги для этого в версии 1.5.

RTF-файл-это формат с тегами, созданный много лет назад для работы с 7-битными ASCII и * - битными компьютерами mac.

Все теги написаны в ASCII, так что вы можете открыть файл и вставить настройки, которые вы хотите иметь в файле с вашим любимым методом синтаксического анализа файлов.
Windows использует 1440 Твипов на дюйм, так что А4-это округление вниз
Ширина 8,27 * 1440=11,908
Высота-11,69 * 1440= 16,833
Я установил поля по умолчанию
Мы можем вставить это в любую строку тега \line, поэтому мы ищем \line и вставляем новые теги. большинство в любом месте будет работать в большинстве случаев.

Чтобы сделать это легко, я сделаю это по старинке, используя FILEOPEN

Дим Страницы В Виде Строки
- Прокомментируйте один
- Портрет
размер страницы = "
\paperw12240\paperh15840\margl1440\margr1440\margt1800\margb1800 "

- Пейзаж
PageSize = " \paperw16834\paperh11909\margl1440\margr1900\margt1800\margb1800\landscape "
Теперь откройте файл вставьте его в коллекцию
Дим Линий Как Новый Stringcollection Доступным
Дим Анкета Заполняется Как Строка
FileOpen(1, "C:\FILENAME.rtf", OpenMode.Ввод)
Do Until EOF(1)< & gt; False
InData = LineInput(1)
Линий.Добавить (InData)
Петля
FileClose(1)
- Теперь запишите данные обратно
FileOpen(1, "C:\FILENAME.rtf", OpenMode.Выход)
Dim найден как Boolean = vbFalse
Dim Найти Как Целое Число
Для Каждого Анкета Заполняется В Линий
Если не найдется то
Find = InStr(InData, "\line", CompareMethod.Текст)
Если найти > 0, то
'работа идет полным ходом здесь мы нашли \line добавление тегов
Анкета Заполняется = Анкета Заполняется.Вставить (Найти + 5, Размер Страницы)
найдено = vbTrue
Конец, Если
Конец, Если
Print (1, InData)
Следующий
FileClose(1)
Я проверил это в офисе и у меня были некоторые проблемы с ландшафтом, но это работает для меня
другой тег, который также работает для ландшафта, - это \lndscpsxn
Если вы использовали размер буквы, сделайте математику, и вы можете посвятить статью использованию \ltrsect for letter и
\ltrsect\lndscpsxn
для пейзажного письма.
Это обходной путь, но он действительно работает.
Вы можете создать свой собственный класс, унаследовать richtextbox и добавить к нему это.


Graeme_Grant

Почему вы отвечаете на вопрос 6-летней давности, который уже принял ответ? Пожалуйста, не делайте этого, так как это считается респектабельным фермерством, и если его не остановить, то вас могут забанить.

Сосредоточьтесь только на текущем вопросе - всегда есть много желающих получить помощь.

Craig P Williams Sr

Извиняюсь.....Я опубликую статью об этом вопросе.

Рейтинг:
0

Dave Kreskowiak

В RichTextBox такого нет.

Размер и ориентация бумаги-это строго печатные понятия, которые не имеют ничего общего с самим RTB. Единственный раз, когда это применимо, - это когда ваш код идет на печать содержимого RTB. Эти параметры задаются не в документе RTB, а в вашем коде печати.

Если ваш код не выполняет печать, это должно быть оставлено на усмотрение приложения, которое выполняет печать. Это то, что ваш код не может контролировать в другом приложении.


Craig P Williams Sr

Это неверно. Стандартные настройки RTF страницы помечены в твипах
\paperwN
\paperhN
RTF действительно содержит исходный размер страницы для документа

Kats2512

за вопрос, который был задан и на который был дан ответ 6 лет назад!