Поделиться через


Интерфейс IPicture (ocidl.h)

Управляет объектом рисунка и его свойствами. Объекты Picture обеспечивают не зависящий от языка абстракцию для растровых изображений, значков и метафайлов. Как и в случае со стандартным объектом шрифта, система предоставляет стандартную реализацию объекта picture. Его основными интерфейсами являются IPicture и IPictureDisp, которые являются производными от IDispatch для предоставления доступа к свойствам рисунка через автоматизацию. Объект picture создается с помощью OleCreatePictureIndirect.

Объект picture также поддерживает исходящий интерфейс IPropertyNotifySink, поэтому клиент может определить, когда изменяются свойства рисунка. Так как объект picture поддерживает по крайней мере один исходящий интерфейс, он также реализует IConnectionPointContainer и связанные с ним интерфейсы для этой цели.

Объект picture также поддерживает IPersistStream , что позволяет сохранять и загружать себя из экземпляра IStream. Объект, использующий объект рисунка внутри организации, обычно сохраняет и загружает рисунок в рамках собственной обработки сохраняемости объекта. Функция OleLoadPicture упрощает создание объекта рисунка на основе содержимого потока.

Наследование

Интерфейс IPicture наследуется от интерфейса IUnknown . IPicture также имеет следующие типы элементов:

Методы

Интерфейс IPicture содержит следующие методы.

 
IPicture::get_Attributes

Извлекает текущий набор битовых атрибутов рисунка.
IPicture::get_CurDC

Извлекает дескриптор текущего контекста устройства. Это свойство допустимо только для растровых рисунков.
IPicture::get_Handle

Извлекает дескриптор рисунка, управляемого в этом объекте рисунка, в указанное расположение.
IPicture::get_Height

Извлекает текущую высоту рисунка в объекте picture.
IPicture::get_hPal

Извлекает копию палитры, используемой в данный момент объектом рисунка.
IPicture::get_KeepOriginalFormat

Извлекает текущее значение свойства KeepOriginalFormat рисунка.
IPicture::get_Type

Извлекает текущий тип рисунка, содержащегося в объекте picture.
IPicture::get_Width

Извлекает текущую ширину рисунка в объекте picture.
IPicture::P ictureChanged

Уведомляет объект рисунка о том, что его ресурс рисунка изменился. Этот метод вызывает только IPropertyNotifySink::OnChanged с DISPID_PICT_HANDLE для всех подключенных приемников.
IPicture::p ut_KeepOriginalFormat

Задает значение свойства KeepOriginalFormat рисунка.
IPicture::Render

Отрисовывает (рисует) определенную часть рисунка, определяемую смещением (xSrc,ySrc) исходного рисунка и размерами для копирования (cxSrc,xySrc).
IPicture::SaveAsFile

Сохраняет данные рисунка в потоке в том же формате, что и в файле. Растровые изображения используют формат BMP-файла, метафайлы — формат WMF, а значки — формат ICO.
IPicture::SelectPicture

Выбирает точечный рисунок в заданном контексте устройства и возвращает контекст устройства, в котором рисунок был ранее выбран, а также дескриптор GDI рисунка. Этот метод работает в сочетании с IPicture::get_CurDC.
IPicture::set_hPal

Назначает палитру GDI для рисунка, содержащегося в объекте picture.

Комментарии

Каждое свойство в интерфейсе IPicture включает метод get_PropertyName , если свойство поддерживает доступ на чтение, и метод put_PropertyName , если свойство поддерживает доступ на запись.

Свойство Тип Доступ Описание
Handle OLE_HANDLE (int) R Дескриптор Windows GDI рисунка
hPal OLE_HANDLE (int) RW Дескриптор Windows палитры, используемой рисунком.
Тип short R Тип рисунка (см. PICTYPE).
Ширина OLE_XSIZE_HIMETRIC (long) R Ширина рисунка.
Высота OLE_YSIZE_HIMETRIC (long) R Высота рисунка.
CurDC HDC R Текущий контекст устройства.
KeepOriginalFormat BOOL RW Если задано значение TRUE, объект picture сохраняет все исходное состояние рисунка в памяти. При значении FALSE любое состояние, неприменимое к компьютеру пользователя, удаляется.
Атрибуты DWORD R Прочие битовые атрибуты рисунка.
 

Реализация OLE

Объекты Picture обеспечивают не зависящий от языка абстракцию для растровых изображений, значков и метафайлов. Как и в случае со стандартным объектом шрифта, система предоставляет стандартную реализацию объекта picture. Его основными интерфейсами являются IPicture и IPictureDisp. Объект picture создается с помощью OleCreatePictureIndirect и поддерживает интерфейсы IPicture и IPictureDisp .

Объект рисунка, предоставленный OLE, реализует полную семантику интерфейсов IPicture и IPictureDisp .

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header ocidl.h

См. также раздел

IPictureDisp