Método Image::Save(constWCHAR*,constCLSID*,constEncoderParameters*) (gdiplusheaders.h)
O método Image::Save salva essa imagem em um arquivo.
Sintaxe
Status Save(
const WCHAR *filename,
const CLSID *clsidEncoder,
const EncoderParameters *encoderParams
);
Parâmetros
filename
Ponteiro para uma cadeia de caracteres terminada em nulo que especifica o nome do caminho para a imagem salva.
clsidEncoder
Ponteiro para um CLSID que especifica o codificador a ser usado para salvar a imagem.
encoderParams
Opcional. Ponteiro para um objeto EncoderParameters que contém parâmetros usados pelo codificador. O valor padrão é NULL.
Retornar valor
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 GDI+ não permite salvar uma imagem no mesmo arquivo que você usou para construir a imagem.
O código a seguir cria um objeto Image passando o nome MyImage.jpg
do arquivo para um construtor Image .
Esse mesmo nome de arquivo é passado para o método Image::Save do objeto Image, portanto, o método Image::Save falha.
Image image(L"myImage.jpg");
// Do other operations.
// Save the image to the same file name. (This operation will fail.)
image.Save(L"myImage.jpg", ...);
Exemplos
O exemplo a seguir cria um objeto Image de um arquivo PNG e, em seguida, cria um objeto Graphics com base nesse objeto Image . O código desenha a imagem, altera a imagem e desenha a imagem novamente. Por fim, o código salva a imagem alterada em um arquivo.
O código depende de uma função auxiliar, GetEncoderClsid, para obter o identificador de classe para o codificador PNG. A função GetEncoderClsid é mostrada em Recuperando o identificador de classe para um codificador.
A técnica de construir um objeto Graphics com base em uma imagem funciona apenas para determinados formatos de imagem. Por exemplo, você não pode construir um objeto Graphics com base em uma imagem que tenha uma profundidade de cor de 4 bits por pixel. Para obter mais informações sobre quais formatos são compatíveis com o construtor Gráficos , consulte Gráficos.
VOID Example_SaveFile(HDC hdc)
{
Graphics graphics(hdc);
// Create an Image object based on a PNG file.
Image image(L"Mosaic.png");
// Draw the image.
graphics.DrawImage(&image, 10, 10);
// Construct a Graphics object based on the image.
Graphics imageGraphics(&image);
// Alter the image.
SolidBrush brush(Color(255, 0, 0, 255));
imageGraphics.FillEllipse(&brush, 20, 30, 80, 50);
// Draw the altered image.
graphics.DrawImage(&image, 200, 10);
// Save the altered image.
CLSID pngClsid;
GetEncoderClsid(L"image/png", &pngClsid);
image.Save(L"Mosaic2.png", &pngClsid, NULL);
}
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | gdiplusheaders.h |