Что мне следует настроить, чтобы при печати я получал точное содержимое на странице a4, похожее на приложение WordPad? - PullRequest
0 голосов
/ 19 сентября 2018

Я изо всех сил пытался разработать процессор текстовых документов.Это похоже на приложение Word-Pad (Примечание: не Блокнот).Я не мог понять, какой тип макета должен быть, чтобы он печатался точно на бумаге формата А4.

Чего я достиг к настоящему моменту?

Я смог добиться всех функций, кроме печатной части.Мое текущее приложение имеет панель стека с расширенным текстовым полем в качестве дочернего элемента.Когда заполненное текстовое поле заполняется, под ним появляется новая панель стека, и появляется новое расширенное текстовое поле как дочерний элемент для новой панели стека, и пользователь непрерывно печатает текст в новом поле расширенного текста.И процесс непрерывный, пока пользователь хочет.Я разработал это в приложении winform, используя c #.

Часть проблемы:

Я застрял с печатью.Когда я печатаю, он теряет формат текста, выравнивание и поля текста из поля расширенного текста.Так что я думаю, что мой макет установлен неправильно.Если в приложении имеется десять панелей стека, то в печатном документе появляется 16 страниц формата а4 (файл PDF)

(для печати я использую e.Graphics.DrawString и e.hasMorePages)

Что я хочу:

Моя главная цель - разработать приложение, похожее на приложение Word-Pad.Первоначально появляется пустая страница.Пользователь печатает на странице, как только она достигает нижней части страницы, появляется новая страница, и пользователь непрерывно печатает на следующей странице.И самая важная часть, когда пользователь печатает, он получает точное содержание текста с точным форматированием, полями, выравниванием на напечатанной бумаге формата a4.А также, если пользователь набрал десять страниц, печатный документ (PDF) также должен содержать 10 страниц.

Пожалуйста, ведите меня.Я также хорош в C, C ++ и Java.Если какой-либо другой язык может решить мое требование, я готов следовать.Пожалуйста, помогите мне.Благодарю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...