Clase CImage

CImage proporciona compatibilidad mejorada del mapa de bits, incluida la capacidad de cargar y guardar imágenes en JPEG, GIF, BMP, y los formatos de (PNG) de gráficos de red de Portable.

Nota importanteImportante

Esta clase y sus miembros no se pueden utilizar en las aplicaciones que se ejecutan en Windows en tiempo de ejecución.

class CImage

Members

bwea7by5.collapse_all(es-es,VS.110).gifConstructores públicos

Name

Descripción

CImage::CImage

el constructor.

bwea7by5.collapse_all(es-es,VS.110).gifMétodos públicos

Name

Descripción

CImage::AlphaBlend

Muestra los mapas de bits que tienen píxeles transparentes o semitransparentes.

CImage::Attach

Asocia HBITMAP a un objeto de CImage .Se puede utilizar con los mapas de bits de mapas de bits de la sección de no DIB o la sección DIB.

CImage::BitBlt

Copia un mapa de bits de contexto del dispositivo de origen a este contexto actual del dispositivo.

CImage::Create

Crea un mapa de bits de la sección del archivo DIB y lo asocia al objeto previamente construido de CImage .

CImage::CreateEx

Crea un mapa de bits de la sección del archivo DIB (con parámetros adicionales) y lo asocia al objeto previamente construido de CImage .

CImage::Destroy

Desasocia el mapa de bits del objeto de CImage y destruye el mapa de bits.

CImage::Detach

Desasocia el mapa de bits de un objeto de CImage .

CImage::Draw

Copia un mapa de bits de un rectángulo de origen en un rectángulo de destino.Dibujo ajusta o comprime el mapa de bits para ajustarse las dimensiones del rectángulo de destino en caso necesario, y controlar la mezcla alfa y colores transparentes.

CImage::GetBits

Recupera un puntero a los valores de píxel de mapa de bits.

CImage::GetBPP

Recupera los bits por píxel.

CImage::GetColorTable

Recupera el rojo, verde, valores de color azul de (RGB) de un intervalo de entradas en la paleta de colores.

CImage::GetDC

Recupera el contexto de dispositivo en el que se selecciona el mapa de bits actual.

CImage::GetExporterFilterString

Busque los formatos de imágenes disponibles y sus descripciones.

CImage::GetHeight

Recupera el alto de la imagen actual en píxeles.

CImage::GetImporterFilterString

Busque los formatos de imágenes disponibles y sus descripciones.

CImage::GetMaxColorTableEntries

Recupera el número máximo de entradas en la paleta de colores.

CImage::GetPitch

Recupera el paso de la imagen actual, en bytes.

CImage::GetPixel

Recupera color de píxel especificado x e y .

CImage::GetPixelAddress

Recupera la dirección de un píxel determinado.

CImage::GetTransparentColor

Recupera la posición del color transparente en la paleta de colores.

CImage::GetWidth

Recupera el ancho de la imagen actual en píxeles.

CImage::IsDIBSection

Determina si el mapa de bits asociado es una sección DIB.

CImage::IsIndexed

Indica que los colores de un mapa de bits están asignados a una paleta indizada.

CImage::IsNull

Indica si un mapa de bits de origen está cargado actualmente.

CImage::IsTransparencySupported

Indica si la aplicación admite mapas de bits transparentes y fue compilado para Windows 2000 o posterior.

CImage::Load

Carga una imagen del archivo especificado.

CImage::LoadFromResource

Carga una imagen de recursos especificado.

CImage::MaskBlt

Combina los datos de color de mapas de bits de origen y de destino utilizando la operación especificada de máscara y la trama.

CImage::PlgBlt

Realiza una transferencia de bloque de bits de un rectángulo en un contexto del dispositivo de origen en un paralelogramo en un contexto del dispositivo de destino.

CImage::ReleaseDC

Libera el contexto del dispositivo que se ha recuperado con CImage::GetDC.

CImage::ReleaseGDIPlus

Libera los recursos utilizados por GDI+.Debe llamar a para liberar los recursos creados por un objeto de CImage .

CImage::Save

Guarda una imagen como el tipo especificado.Guardar no puede especificar opciones de la imagen.

CImage::SetColorTable

Establece rojo, verde, los valores de color azul RGB) de un intervalo de entradas en la tabla de colores de la sección DIB.

CImage::SetPixel

Establece el píxel en las coordenadas especificadas al color especificado.

CImage::SetPixelIndexed

Establece el píxel en las coordenadas especificadas al color en el índice especificado de la paleta.

CImage::SetPixelRGB

Establece el píxel en las coordenadas especificadas en rojo especificado, verde, azul valor de (RGB).

CImage::SetTransparentColor

Establece el índice del color que se tratará como transparente.Sólo un color de una paleta puede ser transparente.

CImage::StretchBlt

Copia un mapa de bits de un rectángulo de origen en un rectángulo de destino, estirando o comprima el mapa de bits para ajustarse las dimensiones del rectángulo de destino, en caso necesario.

CImage::TransparentBlt

Copia un mapa de bits con un color transparente de contexto del dispositivo de origen a este contexto actual del dispositivo.

bwea7by5.collapse_all(es-es,VS.110).gifOperadores públicos

Name

Descripción

CImage::operator HBITMAP

Devuelve el identificador de Windows asociado al objeto de CImage .

Comentarios

CImage toma los mapas de bits que son secciones de (DIB) de mapa de bits independiente del dispositivo o no; sin embargo, puede utilizar cree o CImage::Load con sólo las secciones del archivo DIB.Puede adjuntar un mapa de bits de la sección de no DIB a un objeto de CImage mediante Asociar, pero después no puede utilizar los siguientes métodos de CImage , que solo admiten mapas de bits de la sección del archivo DIB:

Para determinar si un mapa de bits asociado es una sección del archivo DIB, llame a IsDibSection.

[!NOTA]

Note en Visual Studio .NET 2003, esta clase mantiene un recuento del número de objetos de CImage creado.Siempre que el recuento vaya a 0, la función GdiplusShutdown automáticamente se denomina para liberar los recursos utilizados por GDI+.Esto asegura que cualquier objeto de CImage creado directa o indirectamente por los archivos DLL se destruirá siempre correctamente y que GdiplusShutdown no se llama de DllMain.

[!NOTA]

Mediante CImage global los objetos de DLL no se recomienda.Si necesita utilizar un objeto de CImage en un archivo DLL, la llamada CImage:: ReleaseGDIPlus explícitamente para liberar los recursos utilizados por GDI+.

CImage no se puede seleccionar en el nuevo CDC.CImage crea su propio HDC para la imagen.Dado que HBITMAP puede seleccionarse solo en un HDC al mismo tiempo, HBITMAP asociado a CImage no puede seleccionarse en otro HDC.Si necesita CDC, recupere HDC de CImage y darle a CDC::FromHandle.

Ejemplo

// Get a CDC for the image
CDC* pDC = CDC::FromHandle(m_myImage.GetDC());

// Use pDC here
pDC->Rectangle(0, 40, 100, 50);

m_myImage.ReleaseDC();

Cuando se utiliza CImage en un proyecto MFC, la nota que las funciones miembro del proyecto espera recibir un puntero a un objeto de CBitmap .Si desea utilizar CImage con esta función, como CMenu::AppendMenu, el uso CBitmap::FromHandle, para pasar el CImageHBITMAP, y utilizar **CBitmap***devuelto.

void CMyDlg::OnRButtonDown(UINT nFlags, CPoint point)
{
   UNREFERENCED_PARAMETER(nFlags);

   CBitmap* pBitmap = CBitmap::FromHandle(m_myImage);
   m_pmenuPop->AppendMenu(0, ID_BMPCOMMAND, pBitmap);
   ClientToScreen(&point);
   m_pmenuPop->TrackPopupMenu(TPM_RIGHTBUTTON | TPM_LEFTALIGN, point.x, 
      point.y, this);
}

Con CImage, tiene acceso a los bits reales de una sección DIB.Puede utilizar un objeto de CImage dondequiera que utilizó anteriormente HBITMAP de Win32 o la sección DIB.

[!NOTA]

Los siguientes métodos de CImage tienen limitaciones en el uso:

Método

Limitación

PlgBlt

Trabajos sólo con Windows NT 4.0 o posterior.No funcionará en aplicaciones ejecutándose en Windows 95 /98 o posterior.

MaskBlt

Trabajos sólo con Windows NT 4.0 o posterior.No funcionará en aplicaciones ejecutándose en Windows 95 /98 o posterior.

AlphaBlend

Trabajos sólo con Windows 2000, Windows 98, y sistemas posteriores.

TransparentBlt

Trabajos sólo con Windows 2000, Windows 98, y sistemas posteriores.

Dibujo

Admite la transparencia solo con Windows 2000, Windows 98, y sistemas posteriores.

Vea CImage Limitaciones con sistemas operativos anteriores para obtener información detallada sobre las limitaciones de estos métodos.

Puede utilizar CImage MFC o ATL.

[!NOTA]

Cuando se crea un proyecto mediante CImage, debe definir CString antes de que incluye atlimage.h.Si el proyecto usa ATL sin MFC, incluyen atlstr.h antes de que incluye atlimage.h.Si el proyecto utiliza MFC (o si es un proyecto ATL con compatibilidad con MFC), incluya afxstr.h antes de que incluye atlimage.h.

Igualmente, debe incluir atlimage.h antes de que incluye atlimpl.cpp.Para realizarlo fácilmente, incluya atlimage.h en su stdafx.h.

Requisitos

Header: atlimage.h

Vea también

Referencia

Device-Independent Bitmaps

CreateDIBSection

Conceptos

Ejemplo MMXSwarm

Ejemplo SimpleImage

Otros recursos

Componentes de escritorio COM ATL