Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Графический инстументарий Delphi.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
235.64 Кб
Скачать

1.5. Класи tGraphic і tPicture

TGraphic – це абстрактний клас, що інкапсулює загальні властивості й методи своїх нащадків, таких як піктограми (TIcon), метафайл (TMetafile), растрове зображення (TBitmap), а також TClipboard, TYPEGImage, TOLEGraphic, TPicture і т.ін. Зазвичай нащадки зберігаються у файлах визначеного формату. Піктограми – це невеликі растрові зображення з регульованою їхньою прозорістю ( .ICO). Метафайл – це зображення, побудоване на графічному пристрої за допомогою спеціальних команд ( .WMF або .EMF). Растрові зображення – це довільні графічні зображення ( .BMP).

Таблиця 1.8. Властивості класу TGraphic

Empty: Boolean;

Містить True, якщо з об'єктом не пов'язане графічне зображення

Height: Integer;

Містить висоту зображення в пік селях

Modified: Boolean;

Містить True, якщо графічний об'єкт змінювався

Palette: HPALETTE;

Містить палітру кольорів графічного об'єкту

PaletteModified: Boolean;

Містить True, якщо змінювалася палітра кольорів графічного об'єкту

Transparent: Boolean;

Містить True, якщо об'єкт прозорий для фону, на якому він зображений

Width: Integer;

Містить ширину зображення в пікселях

Таблиця 1.9. Методи класу TGraphic

procedure LoadFromClipboardFormat (AFormat: Word; AData: THandle; APalette: HPALETTE);

Шукає в буфері міжпрограмного обміну Clipboard зареєстрований формат AFormat і, якщо формат знайдений, завантажує з буфера зображення AData і його палітру APalette

procedure LoadFromFile (const FileName: String);

Завантажує зображення з файлу FileName

procedure SaveToClipboardFormat (Var AFormat: Word; var AData: THandle; var APalette: HPALETTE);

Розташовує графічне зображення AData і його палітру кольорів APalette у буфері міжпрограмного обміну у форматі AFormat

procedure LoadFromStream (Stream: TStream);

Завантажує зображення з потоку даних Stream

procedure SaveToFile (const FileName: String);

Зберігає зображення у файлі FileName

procedure SaveToStream (Stream: TStream);

Зберігає зображення в потоці Stream

Клас TPicture інкапсулює у собі все необхідне для роботи з готовими графічними зображеннями – піктограмою, метафайлом, растром або картинкою користувача. Його властивість Graphic може містити об'єкт кожного з цих типів, забезпечуючи потрібний поліморфізм методів класу.

Таблиця 1.10. Властивості класу TPicture

Bitmap: TBitmap;

Інтерпретує графічний об'єкт як растрове зображення

Graphic: TGraphic;

Містить графічний об'єкт

Height: Integer;

Містить висоту зображення в пікселях

Icon: ТIcon;

Інтерпретує графічний об'єкт як піктограму

Metafile: TMetafile;

Інтерпретує графічний об'єкт як метафайл

Width: Integer;

Містить ширину зображення в пікселях

Таблиця 1.11. Методи класу TPicture

procedure Assign(Source: TPersistent);

Зв'язує власний графічний об'єкт Graphic з об'єктом Source

procedure LoadFromClipboardFormat (Format: Word; AData: THandle; APalette: HPALETTE);

Шукає в буфері міжпрограмного обміну Clipboard зареєстрований формат AFormat і, якщо формат знайдений, завантажує з буфера зображення AData і його палітру APalette

procedure LoadFromFile(const FileName: String);

Завантажує зображення з файлу FileName

class procedure RegisterClipboardFormat (AFormat: Word; AGraphicClass: TGraphicClass);

Використовується для реєстрації в Clipboard нового формату зображення

class procedure RegisterFileFormat (const AExtension, ADescription: String; AGraphicClass: TGraphicClass);

Використовується для реєстрації нового файлового формату

class procedure RegisterFileFormatRes(const AExtension: String; ADescriptionResID: Integer; AGraphicClass: TGraphicClass);

Використовується для реєстрації нового формату ресурсного файлу

procedure SaveToClipboardFormat (var AFormat: Word; var AData: THandle; var APalette: HPALETTE);

Розташовує графічне зображення AData і його палітру кольорів APalette у буфері міжпрограмного обміну у форматі AFormat

procedure SaveToFile(const FileName: String);

Зберігає зображення у файлі FileName

class function SupportsClipboardFormat (AFormat: Word): Boolean;

Повертає True, якщо формат AFormat зареєстрований у буфері міжпрограмного обміну Clipbord

class procedure UnregisterGraphicClass (AClass: TGraphicClass);

Робить недоступними будь-які графічні об'єкти класу Aclass