Вставка разрыва страницы в текстовый файл путем вставки символа FormFeed. Это универсальное решение?
Вставка разрыва страницы в текстовый файл путем вставки символа FormFeed с использованием Java.
Является ли мое решение универсальным или оно вызовет какие-либо проблемы?
Sample Code:
PrintWriter bof = response.getWriter(); // Obtained Writer from HTTP Response
bof.write("Para 1"); // Write 1st Para to printWriter
bof.write(new Character((char) 12).toString()); // Write Form Feed Character for Page Break
bof.write("Para 1"); // Write 2nd Para to printWriter
Мои проблемы: решение работает, но ниже моих 2-х уровней:
Пункт 1: есть ли способ скрыть неизвестный символ, показанный для символа FormFeed в блокноте?
Пункт 2: я в настоящее время открываю текстовый файл с Word и проверяю предварительный просмотр:
Форм формы фактически делает разрыв страницы, как и ожидалось.
Но есть ли какие-либо последствия для этого решения, или оно будет работать универсально со всеми принтерами?
1 ответ
Факторы, влияющие на отображение и печать:
Display
FormFeed при открытии TXT-файла программой зависит от:
- Программа Интерпретация характера FormFeed.
Но Print operation
результат зависит от:
- Программа используется для открытия и печати текстового файла
- Принтер, который мы используем.
Обработка символов в форме подачи различными программами:
1)NotePad:
- Блокнот является только текстовым редактором и не интерпретирует символ подачи страницы как страничный макет.
Следовательно, когда текстовый файл содержит символ FormFeed:
при открытии с помощью блокнота >> отображается как нечитаемый символ
При печати после открытия с помощью блокнота: тот же нечитаемый символ печатается на бумаге.
2) некоторые WordProcessors like WordPad/ Microsoft Word
/ Другие сторонние редакторы:
- Правильно отображает символ FormFeed как pageBreak.
- При открытии с ними txt файла Отображает его как pageBreak, а при печати также выполняет функцию разрыва страницы.
- Мы также можем видеть подачу форм в виде PageBreak в опции PrintPreview в таких программах, как WordPag/MS Word.
Универсальное решение для получения PageBreak:
Некоторые принтеры не поддерживают разрыв страницы по символу formFeed и просто игнорируют ее независимо от программы, используемой для ее открытия / печати.
Использование
"/page" with RichTextFile(RTF) File is more Reliable/Universal solution
и работает с большинством принтеров.
С помощью Rtf Files мы можем указать:
"/page" вместо "/f" для разрыва страницы и /par для lineBreak.
Rtf файл открывается по умолчанию с помощью программы Wordpad в Windows.
Additional format control is possible
используя Rtf файл как:Например: можно указать конкретный шрифт и размер шрифта (например, Times New Roman, размер 10).
В моем случае используется следующее решение:
Точка 1:
- при открытии с помощью блокнота отображается нечитаемый символ, поскольку блокнот не может отображать символ FormFeed.
Пункт 2:
- Я получил PageBreak в режиме предварительного просмотра, так как я использовал MS Word, который правильно отображает formFeed в качестве разрыва страницы.
- Но, как уже говорилось, некоторые принтеры могут игнорировать это, хотя MS Word правильно его интерпретирует и отправляет на печать.
Поэтому я использовал rtf-файл вместо txt-файла и поэтому использовал "/page" вместо "/f" для более универсального решения.
Ниже Гиперссылка указывает информацию о том, как создать Rtf-файл и использовать /apge для разрыва страницы:
RTF Создание файла и использование его для шрифта и функции разрыва страницы