ConverterRtfToHtml v1.1

Программа для конвертирования (преобразования) текстовых файлов формата RTF в файлы HTML.
Конвертирование производится по коду RTF-файла с учетом атрибутов текста. После конвертирования HTML файл максимально (насколько это возможно) похож на оригинал и практически готов для публикации в Интернете.

Я взялся за эту программу по причине отсутствия аналогичных программ (я не говорю о программах, которые выделяют из RTF чистый текст и затем конвертируют его как текстовый файл TXT, что не является конвертированием RTF) и по просьбе заинтересованных в такой программе специалистов. Трудность задачи я понял после того, как столкнулся с разными вариантами кодирования RTF. Дело не в том, что используются разные форматы RTF, а в том, что внутри одного формата имеется разные варианты написания кода, которые никак не идентифицируются и в спецификациях это обстоятельство никак не отражено. Если бы были единые правила написания кода RTF, то сделать конвертер не представляло бы особого труда.

К сожалению большинство редакторов не соблюдает эти правила, что, впрочем, не очень сказывается при выводе информации в редакторах RTF, так как сама организация вывода последовательная, код за кодом. Но HTML использует блочную конструкцию кодирования, то есть надо знать начало и конец, например, списка или абзаца, иначе возникнут искажения при выводе текста (искажения не текста, а его атрибутов). И именно найти, где начинается влияние того или иного атрибута текста и где заканчивается, является проблемой. Пример - ключевое слово "\pard" в RTF означает начало абзаца. Аналогично "p" в HTML. Но если "p" отменяет все ранее установленные атрибуты текста и создает новые, то в разных вариантах RTF "\pard" может отменить атрибуты, а может и не отменить. И таких примочек в RTF масса.

Поэтому я стал ориентироваться на файлы, созданные в Word97, Word2000 и WordXP, то есть в самых распространенных редакторах файлов RTF. Но даже в них я обнаружил три основных варианта написания RTF-кода. В зависимости от не знаю чего эти редакторы по разному формируют код. Поэтому ConverterRtfToHtml состоит из трех основных подпрограмм, для запуска которых используются косвенные методы определения варианта кодировки.

Описание программы

  • Так как форматы RTF и HTML принципиально различны, пришлось отказаться от поддержки некоторых элементов форматирования, сохранив только атрибуты шрифта (цвет, размер, стиль).
  • Также программа не поддерживает встроенные рисунки и графику. Если документ содержит их, лучше отказаться от конвертирования этого документа. Отсутствие поддержки рисунков компенсируется возможностью вставки рисунков уже в HTML документ.
  • Программа поддерживает колонки, списки, сноски, подстрочные и надстрочные символы, таблицы (не слишком сложные), http и e-mail-адреса.
  • Программа обрабатывает основные виды сносок, выводя их в конце страницы. Все сноски приводятся к единому виду и нумеруются по-порядку, каждая сноска маркируется цифрой в виде надстрочного цифрового символа. При этом ссылающее слово выделяется. Цвет выделения ссылающего слова и сносок можно настроить в меню "Установки".
  • Программа распознает ссылки, e-mail-адреса, надстрочные и подстрочные тексты. (Если ссылки только в виде текста, они будут выведены как обычный текст).
  • Колонки формируются с помощью таблиц с невидимой рамкой.
  • В меню "Установки" можно настроить внешний вид выходной HTML-страницы, подобрать цвет или рисунок фона, сделать рисунок фона неподвижным при скроллинге текста, установить отступы текста от краев листа, ввести имя автора документа.

В архиве программы кроме исполняемого файла содержится файл \"convrtf.chm\" - справка по программе. Кроме этого при первом же запуске генерируется файл crtfh.ini, в котором запоминаются последние установки программы.

Внимание! Пока программа не содержит ограничений. Но в будущем я намерен сделать ее платной, так как потратил на нее много времени и сил. Естественно, кто поможет дельными советами и замечаниями, будут получать различные версии программы бесплатно.

Программа создана в Delphi6 с применением кодоэкономичной библиотеки KOL и MCK (http://xcl.cjb.net, http://bonanzas.rinet.ru).

Если Вы заинтересовались, то скачать программу можете по этой ссылке:

Скачать программу ConverterRtfToHtml v1.1 - размер архива 70 кб.
Сама программа 114 кб + файл справки.

20.02.2003 - 30.04.2003

На главную страницу