Función GetObject (wingdi.h)
La función GetObject recupera información del objeto gráfico especificado.
Sintaxis
int GetObject(
[in] HANDLE h,
[in] int c,
[out] LPVOID pv
);
Parámetros
[in] h
Identificador del objeto gráfico de interés. Puede ser un identificador de uno de los siguientes: un mapa de bits lógico, un pincel, una fuente, una paleta, un lápiz o un mapa de bits independiente del dispositivo creado mediante una llamada a la función CreateDIBSection .
[in] c
Número de bytes de información que se va a escribir en el búfer.
[out] pv
Puntero a un búfer que recibe la información sobre el objeto gráfico especificado.
En la tabla siguiente se muestra el tipo de información que recibe el búfer para cada tipo de objeto gráfico que puede especificar con hgdiobj.
Tipo de objeto | Datos escritos en el búfer |
---|---|
|
|
|
DIBSECTION, si cbBuffer está establecido |
|
Recuento de PALABRAs del número de entradas de la paleta lógica |
|
|
|
|
|
|
|
Si el parámetro lpvObject es NULL, el valor devuelto de la función es el número de bytes necesarios para almacenar la información que escribe en el búfer para el objeto gráfico especificado.
La dirección de lpvObject debe estar en un límite de 4 bytes; De lo contrario, Se produce un error en GetObject .
Valor devuelto
Si la función se ejecuta correctamente y lpvObject es un puntero válido, el valor devuelto es el número de bytes almacenados en el búfer.
Si la función se ejecuta correctamente y lpvObject es NULL, el valor devuelto es el número de bytes necesarios para contener la información que la función almacenaría en el búfer.
Si la función no se realiza correctamente, el valor devuelto es cero.
Comentarios
El búfer al que apunta el parámetro lpvObject debe ser suficientemente grande para recibir la información sobre el objeto gráfico. Dependiendo del objeto gráfico, la función usa una estructura BITMAP, DIBSECTION, EXTLOGPEN, LOGBRUSH, LOGFONT o LOGPEN , o un recuento de entradas de tabla (para una paleta lógica).
Si hgdiobj es un identificador de un mapa de bits creado llamando a CreateDIBSection y el búfer especificado es lo suficientemente grande, la función GetObject devuelve una estructura DIBSECTION . Además, el miembro bmBits de la estructura BITMAP contenida en la DIBSECTION contendrá un puntero a los valores de bits del mapa de bits.
Si hgdiobj es un identificador de un mapa de bits creado por cualquier otro medio, GetObject devuelve solo la información de formato de ancho, alto y color del mapa de bits. Puede obtener los valores de bits del mapa de bits llamando a la función GetDIBits o GetBitmapBits .
Si hgdiobj es un identificador de una paleta lógica, GetObject recupera un entero de 2 bytes que especifica el número de entradas de la paleta. La función no recupera la estructura LOGPALETTE que define la paleta. Para recuperar información sobre las entradas de paleta, una aplicación puede llamar a la función GetPaletteEntries .
Si hgdiobj es un identificador de una fuente, el LOGFONT que se devuelve es el LOGFONT que se usa para crear la fuente. Si Windows tuviera que realizar alguna interpolación de la fuente porque no se pudo representar el LOGFONT preciso, la interpolación no se reflejará en logfont. Por ejemplo, si solicita una versión vertical de una fuente que no admite la pintura vertical, LOGFONT indica que la fuente es vertical, pero Windows lo pintará horizontalmente.
Ejemplos
Para obtener un ejemplo, consulte Almacenamiento de una imagen.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows 2000 Professional [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows 2000 Server [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | wingdi.h (incluye Windows.h) |
Library | Gdi32.lib |
Archivo DLL | Gdi32.dll |
Consulte también
Funciones de contexto de dispositivo