| Рисунки в TRichView | |
Стандартные и дополнительные форматы графики в Delphi (VCL и LCL)
Документы TRichView могут содержать рисунки любого формата, поддерживаемого Delphi/C++Builder.
Стандартные графические форматы включают:
- битмапы (TBitmap),
- 16-битные и 32-битные метафайлы (TMetafile)
- значки (TIcon)
- изображения Jpeg (TJPEGImage)
- изображения Gif (TGifImage, с Delphi 2007)
- изображения Png (TPngImage, с Delphi 2009; TPortableNetworkGraphic в Lazarus)
- изображения Tiff (TWicImage, с Delphi 2010; TTiffImage в Lazarus)
- изображения Anymap (TPortableAnyMapGraphic, только в Lazarus).
- изображения Svg (TSkSvgGraphic, со Skia4Delphi).
- изображения WebP (TSkGraphic, со Skia4Delphi).
Если вы включите в свои приложения дополнительные классы графики (классы, унаследованные от TGraphic), реализованные другими разработчиками, то вы можете использовать их в документах.
Рисунки в FireMonkey
TRichView для FireMonkey использует TBitmap, который умеет работать с графикой различных форматов. При использовании Skia4Delphi добавляется поддержка изображений SVG.
Изменение размеров рисунков
Пользователь может растягивать и сжимать рисунки мышью. При этом меняется только их отображение — сами рисунки в документе остаются неизменными.
Анимация (VCL)
Возможна вставка следующих видов анимированных изображений:
- анимированные рисунки Gif;
- анимированные битмапы (один большой битмап делится на кадры).
Фоновые рисунки
Фоновое изображение размещается в центре, растягивается на всё окно или покрывает его как черепица. Такие повторяющиеся фоновые изображения либо неподвижны, либо прокручиваются вместе с документом.
Таблицы и их ячейки также могут иметь картинку на фоне.
Рисунки из Image Lists
Это — уникальная особенность TRichView.
Рисунки вставляются непосредственно из Image Lists. Это очень экономный по расходу памяти способ создать документы со множеством повторяющихся маленьких картинок (TRichView хранит в памяти только ссылку на TImageList и номер изображения в нём).
Демо 1 с рисунками из Image Lists: Demos\*\MultiDemo\
Демо 2 (пункт меню Insert | Bullet и Insert | Hot Spot): Demos\*\Editors\Editor 1\
«Учебное пособие» по типам элементов TRichView (tutorial 1, project 5): Demos\*\Tutorial\
Рисунки во вставленных компонентах
Ещё один способ вставки изображения — загрузить его в компонент Delphi/C++Builder (такой как TImage), а затем вставить этот компонент в документ TRichView.
Таким образом вставляются даже анимированные изображения.
Дополнительная информация с форума технической поддержки (на английском языке):
Самостоятельное рисование
Программист может написать код для рисования фонов и различных элементов документа.
Демо: Demos\*\Assorted\CustomDraw\
Рисунки и гипертекст
Рисунки могут служить гиперссылками. Если для гипертекстовых рисунков из Image List (hotspot в терминологии RichView) задать два разных изображения, то они меняются под курсором мыши.
Демо: Demos\*\MultiDemo\
Скомпилированный пример включён в демонстрационные проекты TRichView
Специальные эффекты
На рисунке справа изображён специальный дополнительный тип элемента документа TRichView — TRVBlendBitmapInfo, показывающий рисунки с заданной степенью прозрачности.
Пример: Demos\Addins\BlendBitmap\
Скомпилированный пример включён в демонстрационные проекты TRichView
Положение в тексте
Рисунки (как и другие нетекстовые объекты) могут находиться внутри текстовой строки, выравненные по центру, верху, низу строки, или по базовой линии текста;
или они могут быть выравнены по левому или правому краю документа, с обтеканием текста по противоположной стороне.
|