TCustomRichView.OnRVFPictureNeeded

<< Нажмите, чтобы показать Содержание >>

TCustomRichView.OnRVFPictureNeeded

Происходит при чтении изображения из файла или потока RVF, если оно было сохранены без содержимого.

type

  TRVFPictureNeededEvent = procedure (Sender: TCustomRichView

    const ItemName: TRVUnicodeString; Item: TRVNonTextItemInfo

    Index1, Index2: Integer; var gr: TRVGraphicof object;

 

property OnRVFPictureNeeded: TRVFPictureNeededEvent;

По умолчанию изображения хранятся внутри документов формата RVF.

Если исключить rvfoSavePicturesBody из RVFOptions, содержимое изображений не сохраняется. Сохраняются только имя элемента (значение, возвращаемое GetItemText) и тег (значение, возвращаемое GetItemTag). Эти значения позволяют идентифицировать изображение при загрузке. При чтении таких RVF-файлов для каждого изображения вызывается OnRVFPictureNeeded.

Данное событие вызывается для следующих объектов:

рисунков и интерактивных рисунков;

фоновых изображений таблиц  (даже если сохранённая таблица изначально не имела фонового изображения)

фоновых изображений ячеек таблиц (для каждой ячейки, даже если сохранённая ячейка изначально не имела фонового изображения)

Входные параметры:

Name имя элемента документа (это значение, возвращаемое GetItemTextW). Если событие вызывается для ячейки таблицы, этот параметр имеет пустое значение.

Item элемент документа, использующий изображение. Это объект одного из следующих классов: TRVGraphiItemInfo, TRVHotGraphiItemInfo, TRVTableItemInfo.

Index1, Index2 целочисленные значения, позволяющие идентифицировать изображение внутри элемента. При вызове для рисунка, интерактивного рисунка, таблицы они принимают значения (-1, -1). При вызове для ячейки таблицы Index1 содержит номер строки, Index2 – номер столбца.

Выходной параметр:

gr изображение, которое нужно вставить в документ. Создайте его в обработчике этого события. Не уничтожайте его (TRichView уничтожит его при необходимости).

Следующие значения могут быть полезны:

Item.Tag

если Item является TRVGraphicItemInfo: TRVGraphicItemInfo(Item).ImageWidth и TRVGraphicItemInfo(Item).ImageHeight (размер растянутого изображения)

если Item iявляется TRVGraphicItemInfo: TRVGraphicItemInfo(Item).ImageFileName

если Item является TRVTableItemInfo: TRVTableItemInfo(Item).BackgroundImageFileName

См. также:

Обзор RVF, содержит пример.