Показать или спрятать менюTRichView.ru
English | Deutsch | Español | Русский

  Импорт и экспорт в TRichView

  • TRichView экспортирует DocX, RTF, HTML, Markdown, PDF*, текстовые файлы.
  • TRichView импортирует DocX, RTF, HTML, Markdown, текстовые файлы.
  • TRichView сохраняет и загружает** документы в своём формате (RVF — RichView Format) и XML (при использовании RichViewXML).

* с помощью дополнительных компонентов
** под сохранением и загрузкой понимаются операции, которые на 100% сохраняют содержимое и оформление документа; экспортированные, а затем вновь импортированные документы могут отличаться от оригинала.


Тест, скопированный из Microsoft Word

RTF (Rich Text Format)

RTF (Rich Text Format) — это формат файлов, который позволяет различным текстовым процессорам в различных операционных системах обмениваться между собой форматированным текстом и графикой.

Преимущества RTF:

  • это широко распространённый формат; множество приложений поддерживает его, включая WordPad и Microsoft Word;
  • в этом формате можно хранить сложное форматирование, картинки, таблицы, сноски, текстовые поля, гиперссылки, юникодный текст.

Недостатки RTF:

  • файлы этого формата обычно занимают много места (потому что содержат несколько различных представлений одних и тех же фрагментов документа, картинки закодированы текстом, неэкономно записываются неанглийские символы);
  • он не может хранить некоторую информацию, специфическую для TRichView; картинки не всех графических форматов могут быть сохранены в RTF — они преобразуются в метафайлы, битмапы или Png.

TRichView читает, сохраняет и вставляет файлы RTF, копирует и вставляет RTF в/из буфера обмена, обменивается RTF через перетаскивание выделенного фрагмента (drag and drop).
TRichView даёт возможность программистам написать свой код для сохранения в RTF элементов управления (controls), вставленных в документ, а также для чтения и записи гиперссылок.
TRichView импортирует файлы RTF с битмапами, изображениями Png, 16- и 32-битными метафайлами, картинками Jpeg, внешними изображениями (из отдельных файлов).
TRichView импортирует файлы RTF с таблицами.
Вы можете определить некоторые текстовые стили как коды RTF и использовать их для вставки ключевых слов (команд) в RTF.



Документы Microsoft Word: DocX (Office Open XML)

Файлы DocX содержат документы в формате Office Open XML (известном также как OOXML или OpenXML). Это современный формат, используемый главным образом Microsoft Word (начиная с Microsoft Office 2007), но офисные продукты других разработчиков тоже могут работать с этим форматом.

Технически, файл DocX представляет собой набор файлов XML и рисунков, упакованных в один архив ZIP. Он содержит практически ту же информацию, что и файлы RTF, с небольшими отличиями: например, поддерживается больше графических форматов.

Файлы DocX относительно небольшие, потому что содержат меньше избыточной информации, содержат изображения в исходном формате, и потому что всё содержимое заархивировано.

TRichView может читать, сохранять и вставлять файлы DocX.
Вы можете определить некоторые текстовые стили как коды DocX и использовать их для вставки XML-тегов в DocX.

Документ Microsoft Word, открытый в редакторе TRichView

Минимальные требования к компиляторам для чтения и вставки DocX: Delphi 2009 и новее, C++Builder 2009 и новее, Lazarus.


HTML (Hypertext Markup Language)

HTML — это язык Интернета.
TRichView сохраняет красивый и компактный код HTML в двух режимах: традиционном «старомодном» (с тегами <B>,<FONT>) и с использованием каскадных таблиц стилей (Cascading Style Sheet — CSS)
CSS — это современный механизм таблиц стилей, который позволяет авторам задавать стили (т.е. шрифты, цвета, размеры элементов) в документах HTML, не меняя их внутренней структуры.
HTML с CSS выглядит практически точно так же, как исходный документ TRichView, если отображается в новых браузерах.

В зависимости от настроек, HTML, сохранённые RichView, соответствуют стандартам HTML 4.01 Transitional или HTML 4.01 Strict. Кроме того, возможно сохранение XHTML.

TRichView экспортирует HTML как текстовый файл с кодом HTML и набор файлов с изображениями. По умолчанию, все картинки преобразуются в Jpeg (кроме изображений Gif и Png). Можно задать список дополнительных графических форматов, которые не следует преобразовывать, а также полностью изменить процесс сохранения с помощью обработки событий компонента (и, например, сохранить все картинки в формате Png).
С помощью специального события TRichView позволяет сохранять в HTML вставленные в документ элементы управления. TRichView может сохранять HTML в потоки (TStream) вместо файла. Более того, можно записать только содержимое тела (body) HTML, что позволяет использовать их как часть больших HTML при создании сложных программ редактирования и генерации HTML.
Вы можете определить некоторые текстовые стили как коды HTML и использовать их для вставки тегов в HTML.

TRichView может загружать и вставлять в документ файлы HTML, может вставлять данные в формате HTML из буфера обмена.


Markdown

Markdown — это облегчённый язык разметки, созданный с целью написания наиболее читаемого и удобного для правки текста, пригодного для преобразования в языки для продвинутых публикаций (HTML, Rich Text и других).

Документы в формате Markdown очень похожи на простые текстовые файлы. Хотя несложно создавать файлы Markdown с использованием простого текстового редактора (такого как Блокнот), полезна и возможность создания документов Markdown с использованием редакторов форматированного текста (таких как наш компонент TRichView).

Markdown широко используется как формат статей и заметок в CMS, системах отслеживания ошибок, вебсайтах (включая GitHub, Stackoverflow, Jira).


Текстовые файлы

TRichView пишет и читает текстовые файлы в традиционной (ANSI) кодировке или Юникоде. Также можно копировать и вставлять эти форматы из буфера обмена.


RVF (RichView Format)

TRichView имеет свой собственный формат для записи документов. Этот формат компактен, прост и может хранить всю возможную информацию о документе TRichView.
Имеется ряд настроек для чтения и записи RVF. Например, форматирование (т.е. коллекции стилей текста и абзацев) может быть сохранено вместе с документами RVF или отдельно от них (и использоваться несколькими документами).
TRichView может копировать и вставлять RVF из буфера обмена.


XML (Extensible Markup Language)

См. страницу RichViewXML.


PDF (Adobe Portable Document Format)

TRichView не имеет своих методов для сохранения документов PDF, однако может использовать для этого компоненты других производителей (см. страницу ресурсов).

Для версии VCL:

Для версии FireMonkey:

  • Skia4Delphi

Текстовые конвертеры Microsoft Office

TRichView может использовать текстовые конвертеры Microsoft Office при помощи компонента TRVOfficeConverter.
Конвертеры для импорта преобразуют файлы различных форматов в RTF, который затем читает TRichView. Конвертеры для экспорта преобразуют сохранённый RichView RTF в файлы различных форматов.

Конвертеры – это устаревшая технология. Мы рекомендуем использовать их только для форматов файлов, которые нельзя прочитать и записать другими методами.

Демо: Demos\​*\​OfficeConverters\


Базы данных и LiveBindings

TDBRichView и TDBRichViewEdit — компоненты для отображения и редактирования документов в базе данных в форматах RTF, RVF, DocX, HTML, текстовом или других, заданных программистом, форматах (VCL и LCL).

Существует и другой способ: связь компонентов TRichView или TRichViewEdit с полями баз данных с помощью LiveBindings (VCL и FireMonkey).

Demos: Demos\*\DB Demo\

Демонстрационные проекты:

  • Примеры работы с БД:
    • Demos\​*\​DB Demos\ (версия с Borland Database Engine)
    • Demos\​*\​DB Demos.BDE\ (версия с Borland Database Engine)
    • Demos\​*\​DB Demos.FireDAC_IB\ (версия с FireDAC + таблица Interbase)
    • Demos\​Lazarus\​DB Demos\ (версия с DBF )
  • Примеры с заменой полей в документе значениями из БД:
    • Demos\​*\​Assorted\​Fields\​MailMerge\ (версия с Borland Database Engine)
    • Demos\​*\​Assorted\​Fields\​MailMerge2.​BDE\ (версия с Borland Database Engine)
    • Demos\​*\​Assorted\​Fields\​MailMerge2.​FireDAC_IB\ (версия с FireDAC + таблица Interbase)
    • Demos\​Lazarus\​Assorted\​Fields\​MailMerge2\ (версия с DBF)