Método Graphics::D rawImage(Image*,constPoint*,INT,INT,INT,INT,INT,Unit,constImageAttributes*,DrawImageAbort,VOID*) (gdiplusgraphics.h)
O método Graphics::D rawImage desenha uma imagem.
Sintaxe
Status DrawImage(
[in] Image *image,
[in] const Point *destPoints,
[in] INT count,
[in] INT srcx,
[in] INT srcy,
[in] INT srcwidth,
[in] INT srcheight,
[in] Unit srcUnit,
[in] const ImageAttributes *imageAttributes,
[in] DrawImageAbort callback,
[in] VOID *callbackData
);
Parâmetros
[in] image
Tipo: Imagem*
Ponteiro para um objeto Image que especifica a imagem de origem.
[in] destPoints
Tipo: const Point*
Ponteiro para uma matriz de objetos Point que especificam a área, em um paralelismo, na qual desenhar a imagem.
[in] count
Tipo: INT
Inteiro que especifica o número de elementos na matriz destPoints .
[in] srcx
Tipo: INT
Número real que especifica a coordenada x do canto superior esquerdo da parte da imagem de origem a ser desenhada.
[in] srcy
Tipo: INT
Número real que especifica a coordenada y do canto superior esquerdo da parte da imagem de origem a ser desenhada.
[in] srcwidth
Tipo: INT
Número real que especifica a largura da parte da imagem de origem a ser desenhada.
[in] srcheight
Tipo: INT
Número real que especifica a altura da parte da imagem de origem a ser desenhada.
[in] srcUnit
Tipo: Unidade
Elemento da enumeração Unit que especifica a unidade de medida para a imagem. O valor padrão é UnitPixel.
[in] imageAttributes
Tipo: ImageAttributes*
Ponteiro para um objeto ImageAttributes que especifica os atributos de cor e tamanho da imagem a ser desenhada. O valor padrão é NULL.
[in] callback
Tipo: DrawImageAbort
Método de retorno de chamada usado para cancelar o desenho em andamento. O valor padrão é NULL.
[in] callbackData
Tipo: VOID*
Ponteiro para dados adicionais usados pelo método especificado pelo parâmetro de retorno de chamada . O valor padrão é NULL.
Valor retornado
Tipo: Status
Se o método for bem-sucedido, ele retornará Ok, que é um elemento da enumeração Status .
Se o método falhar, ele retornará um dos outros elementos da enumeração Status .
Comentários
O valor do parâmetro count deve ser igual a 3 para especificar os três cantos do parallelogram. O quarto canto do paralelismo é calculado usando os vetores da primeira e segunda coordenadas e a primeira e a terceira coordenadas. A parte da imagem de origem a ser desenhada é dimensionada para se ajustar ao parallelogram.
Exemplos
O exemplo a seguir desenha a imagem de origem original e desenha uma parte da imagem em um paralelismo especificado.
VOID Example_DrawImage2(HDC hdc)
{
Graphics graphics(hdc);
// Create an Image object.
Image image(L"pattern.png");
// Draw the original source image.
graphics.DrawImage(&image, 10, 10);
// Define the portion of the image to draw.
int srcX = 70;
int srcY = 20;
int srcWidth = 100;
int srcHeight = 100;
// Create an array of Point objects that specify the destination of the cropped image.
Point destPoints[3] = {
Point(230, 30),
Point(350, 50),
Point(275, 120)};
Point* pdestPoints = destPoints;
// Create an ImageAttributes object that specifies a recoloring from red to blue.
ImageAttributes remapAttributes;
ColorMap redToBlue;
redToBlue.oldColor = Color(255, 255, 0, 0);
redToBlue.newColor = Color(255, 0, 0, 255);
remapAttributes.SetRemapTable(1, &redToBlue);
// Draw the cropped image.
graphics.DrawImage(
&image,
pdestPoints,
3,
srcX,
srcY,
srcWidth,
srcHeight,
UnitPixel,
&remapAttributes,
NULL,
NULL);
}
A ilustração a seguir mostra a saída do código anterior.
Requisitos
Cliente mínimo com suporte | Windows XP, Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | gdiplusgraphics.h (inclua Gdiplus.h) |
Biblioteca | Gdiplus.lib |
DLL | Gdiplus.dll |
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de