Пример |
В следующем примере при запуске программы создается начальная палитра с 16 оттенками серого (от белого до черного). Когда пользователь выбирает пункт меню Test!, палитра расширяется на 16 элементов, которые заполняются оттенками синего. Затем отображается образец каждого цвета в палитре, как показано на рис. 16.3. |
См. \local-sources\chapl6\16-05.txtРисунок 16.3. Пример применения функции CreatePalette
DeleteColorSpace • Windows 98 • Windows 2000 |
|||||
Описание |
Функция DeleteColorSpace удаляет цветовое пространство и освобождает все связанные с ним внутренние ресурсы. Эту функцию следует вызывать, как только исчезает необходимость в использовании ранее созданного цветового пространства. |
||||
Синтаксис |
BOOL DeleteColorSpace( HCOLORSPACE hColorSpace ) |
||||
Параметры |
|||||
hColorSpace |
HCOLORSPACE. Дескриптор удаляемого цветового пространства, возвращенный в результате предыдущего вызова функции CreateColorSpace. |
||||
Возвращаемое значение |
BOOL. В случае успешного выполнения возвращаемое значение — TRUE; в ином случае возвращаемое значение — FALSE. |
||||
Включаемый файл |
wingdi.h |
||||
См. также |
CreateColorSpace, GetLogColorSpace |
||||
Пример |
См. пример для функции CreateColorSpace. |
||||
EnumlCMProfiles • Windows 98 • Windows 2000 |
|||||
Описание |
Функция EnumlCMProfiles перечисляет различные цветовые профили, которые система поддерживает для контекста устройства, передавая имя файла каждого цветового профиля функции обратного вызова, определяемой приложением. |
||||
Синтаксис |
int EnumICMProfiIes( HDC hdc, ICMENUMPROC IpICMEnumFunc, LPARAM IParam) |
||||
Параметры |
|||||
hdc |
HDC. Контекст устройства. |
||||
IpICMEnumFunc |
ICMENUMPROC. Адрес функции обратного вызова, определяемой приложением. Описание функции обратного вызова приведено ниже. |
||||
IParam |
LPARAM. Данные, поступающие из приложения. Данные передаются функции обратного вызова для каждого цветового профиля. |
||||
Возвращаемое значение |
int. Последнее значение, возвращенное функцией обратного вызова, которое равно 0, если функция обратного вызова прерывала перечисление. В ином случае возвращаемое значение равно -1, если нет ни одного цветового профиля, подлежащего перечислению, или согласование цветов изображения не разрешено. |
||||
Включаемый файл |
wingdi.h |
||||
См. также |
GetlCMProfile, SetlCMProfile |
||||
Синтаксис обратного вызова |
|||||
int CALLBACK EnumICMProfilesProc( LPTSTR IpszFilename, LPARAM Iparam) |
|||||
Параметры обратного вызова |
|||||
IpszFilename |
LPTSTR. Указатель на строку с нулевым символом в конце, которая указывает имя файла цветового профиля. |
||||
IParam |
LPARAM. Поступающие из приложения данные, переданные функцией EnumlCMProfiles. |
||||
Возвращаемое з\ |
начение обратного вызова |
||||
int. Положительное значение для продолжения перечисления или 0 для прекращения перечисления. Функция не должна возвращать отрицательное значение. |
|||||
Пример |
В следующем примере при запуске программы на всю ширину клиентской области создается список. Когда пользователь выбирает пункт меню Test!, функция EnumlCMProfiles вносит в этот список все установленные профили ICM. |
||||
См. \local-sources\chapl6\16-06. txt |
|||||
GetBValue • Windows 98 • Windows 2000 |
|||||
Описание |
Функция GetBValue реализована как макрокоманда, которая позволяет получить значение интенсивности компонента синего цвета кода RGB. |
||||
Синтаксис |
BYTE GetBValue( COLORREF rgb ) |
||||
Параметры |
|||||
rgb |
COLORREF. Код RGB цвета. |
||||
Возвращаемое значение |
|||||
BYTE. Интенсивность компонента синего цвета указанного кода RGB. |
|||||
Включаемый файл |
wingdi.h |
||||
См. также |
GetRValue, GetGValue |
||||
Пример |
См. пример для функции GetNearestColor. |
||||
GetGValue • Windows 98 • Windows 2000 |
|||||
Описание |
Функция GetGValue реализована как макрокоманда, которая позволяет получить значение интенсивности компонента зеленого цвета кода RGB. |
||||
Синтаксис |
BYTE GetGValue( COLORREF rgb ) |
||||
Параметры |
|||||
rgb |
COLORREF. Код RGB цвета. |
||||
Возвращаемое значение |
|||||
BYTE. Интенсивность компонента зеленого цвета указанного кода RGB. |
|||||
Включаемый файл |
wingdi.h |
||||
См. также |
GetRValue, GetBValue |
||||
Пример |
См. пример для функции GetNearestColor. |
||||
GetRValue • Windows 98 * Windows 2000 |
|||||
Описание |
Функция GetRValue реализована как макрокоманда, которая позволяет получить значение интенсивности компонента красного цвета кода RGB. |
||||
Синтаксис |
BYTE GetRValue( COLORREF rgb ) |
||||
Параметры |
|||||
rgb |
COLORREF. Код RGB цвета. |
||||
Возвращаемое значение BYTE. Интенсивность компонента красного цвета указанного кода RGB. |
|||||
Включаемый файл |
wingdi.h |
||||
См. также |
GetGValue, GetBValue |
||||
Пример |
См. пример для функции GetNearestColor. |
||||
GetColorAdjustment • Windows 98 • Windows 2000 |
|||||
Описание |
Функция GetColorAdjustment позволяет определить коэффициенты цветокоррекции для указанного контекста устройства. Коэффициенты цветокоррекции используются для корректировки первоначального цвета исходного растрового изображения при вызове функций StretchBlt и StretchDIBits, если установлен режим HALFTONE |
||||
Синтаксис |
BOOL GetCoIorAdjustment( HDC hDC, LPCOLORADJUSTMENT Ipca ) |
||||
Параметры HDC |
HDC. Контекст устройства, для которого необходимо определить коэффициенты цветокоррекции. |
||||
Ipca |
LPCOLORADJUSTMENT. Указатель на структуру COLORADJUSTMENT,в которой должны храниться значения коэффициентов цветокоррекции. Определение структуры COLORADJUSTMENT приведено в описании функции SetColorAdjustment далее в этой главе. |
||||
Возвращаемое значение |
BOOL. В случае успешного выполнения — TRUE; в ином случае — FALSE. |
||||
Включаемый файл |
wingdi.h |
||||
См. также |
SetColorAdjustment, SetStretchBItMode |
||||
Пример |
Пример применения этой функции приведен в описании функции SetColorAdjustment. |
||||
GetColorSpace • Windows 98 • Windows 2000 |
|||||
Описание |
Функция GetColorSpace позволяет получить текущий дескриптор логического цветового пространства из контекста устройства. |
||||
Синтаксис |
HLOGCOLORSPACE GetCoIorSpace( HDC hdc ) |
||||
Параметры |
|||||
hdc |
HDC. Контекст устройства. |
||||
Возвращаемое значение |
HLOGCOLORSPACE. В случае успешного выполнения функция возвращает текущий дескриптор логического цветового пространства; в ином случае возвращаемое значение — NULL. |
||||
Включаемый файл |
wingdi.h |
||||
См. также |
GetLogColorSpace, CreateColorSpace, SetColorSpace |
||||
Пример |
В следующем примере функция GetColorSpace используется для проверки того, установлено ли цветовое пространство для контекста устройства клиентской области окна, когда пользователь выбирает пункт меню Test!. Если цветовое пространство установлено, с помощью функции GetLogColorSpace выбираются данные цветового пространства. |
||||
См. \local-sources\chapl6\16-07. txt |
|||||
GetDeviceGammaRamp • Windows 98 • Windows 2000 |
|||||
Описание |
Функция GetDeviceGammaRamp позволяет определить гамма-характеристику видеоплаты с непосредственным отображением цветов. В режимах непосредственного отображения цветов, обычно с 16-, 24- или 32-разрядным представлением цвета, кодовые таблицы цветов не используются. Не все видеоплаты с непосредственным отображением цветов поддерживают загружаемые гамма-характеристики, поэтому функция выполняется успешно только на тех компьютерах, аппаратное обеспечение которых поддерживает загружаемые гамма-характеристики. |
||||
Синтаксис |
BOOL GetDe\iceGammaRamp( HDC hdc, LPVOID IpRamp ) |
||||
Параметры |
|||||
hdc |
HDC. Контекст устройства. |
||||
lp Ramp |
LPVOID. Указатель на набор из трех массивов цветов (красного, зеленого и синего), состоящих из 256 элементов типа WORD. Эти массивы устанавливают взаимосвязь между кодами цветов в буфере изображения и коэффициентами цифро-аналогового преобразования. |
||||
Возвращаемое значение |
BOOL. В случае успешного выполнения — TRUE; в ином случае — FALSE. |
||||
Включаемый файл |
wingdi.h |
||||
См. также |
SetDeviceGammaRamp |
||||
Пример |
См. пример для функции SetDeviceGammaRamp. |
||||
GetlCMProfile Windows 98 * Windows 2000 |
|||||
Описание |
Функция GetlCMProfile позволяет определить имя файла цветового профиля для устройства, связанного с контекстом устройства. Функция не может быть выполнена, если для контекста устройства не было разрешено согласование цветов изображения. |
||||
Синтаксис |
BOOL GetICMProfile( HDC hdc, LPDWORD IpcbName, LPTSTR IpszRlename ) |
||||
Параметры |
|||||
hdc |
HDC. Контекст устройства. |
||||
IpcbName |
LPDWORD. Указатель на переменную типа DWORD, которая содержит размер буфера, указанного параметром IpszFilename. Если функция была |
||||
выполнена успешно, то после возвращения из функции этот параметр содержит размер фактически используемого буфера. Если буфер оказался недостаточным, функция возвращает FALSE, а функция GetLastError возвращает ошибку ERROR_INSUFFICIENT_BUFFER В конечном итоге возвращаемое значение содержит размер, необходимый для буфера Ipszfilename. |
|||||
Ipszfilename |
LPTSTR. Указатель на буфер, который принимает строку с нулевым символом в конце, содержащую полный путь файла цветового профиля. |
||||
Возвращаемое значение |
BOOL. В случае успешного выполнения — TRUE; в ином случае — FALSE. Для получения дополнительных сведений об ошибках применяется функция GetLastError. |
||||
Включаемый файл |
wingdi.h |
||||
См. также |
SetlCMProfile, SetlCMMode |
||||
Пример |
См. пример для функции SetlCMProfile. |
||||
GetLoqColorSpace • Windows 98 • Windows 2000 |
|||||
Описание |
Функция GetLogColorSpace позволяет получить информацию о логическом цветовом пространстве, обозначенном заданным дескриптором. Эта функция копирует в буфер такой объем информации, сколько он может вместить. Для уточнения размера используемого буфера в приложении необходимо проверить член IcsSize структуры LOGCOLORSPACE. |
||||
Синтаксис |
BOOL GetLogColorSpace( HLOGCOLORSPACE hColorSpace, LPLOGCOLORSPACE Ipbuffer, DWORD dwSize ) |
||||
Параметры |
|||||
h Color Space |
HLOGCOLORSPACE. Дескриптор логического цветового пространства. |
||||
IpBuffer |
LPLOGCOLORSPACE. Указатель на структуру LOGCOLORSPACE, которая принимает данные логического цветового пространства. Определение структуры LOGCOLORSPACE приведено в описании функции Create-ColorSpace. |
||||
dwSize |
DWORD. Максимальный размер (в байтах) буфера, указанного параметром IpBuffer |
||||
Возвращаемое значение |
BOOL. В случае успешного выполнения — TRUE; в ином случае — FALSE. |
||||
Включаемый файл |
wingdi.h |
||||
См. также Пример |
CreateColorSpace, DeleteColorSpace, GetColorSpaceСм. пример для функции GetColorSpace. |
||||
GetNearestColor • Windows 98 • Windows 2000 |
|||||
Описание |
Функция GetNearestColor возвращает код цвета системной палитры, который будет отображен вместо цвета с указанным кодом. |
||||
Синтаксис |
COLORREF GetNearestColor( HDC hdc, COLORREF crColor) |
||||
Параметры |
|||||
hdc |
HDC. Контекст устройства. |
||||
crColor |
COLORREF. Код указанного цвета. |
||||
Возвращаемое значение |
COLORREF. В случае успешного выполнения — цвет из системной палитры, который соответствует данному коду цвета; в ином случае — CLR_INVALID. |
||||
Включаемый файл |
wingdi.h |
||||
См. также |
GetNearestPalettelndex, GetDeviceCaps |
||||
Пример |
В следующем примере (рис. 16.4) функция GetNearestColor применяется для согласования затребованных цветов с цветами системной палитры. |
||||
См. \local-aources\chapl6\16-08. txt |
|||||
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.