Вставка разрыва страницы в текстовый файл путем вставки символа 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" для более универсального решения.

Другие вопросы по тегам