Método Image::SaveAdd(constEncoderParameters*) (gdiplusheaders.h)

O método Image::SaveAdd adiciona um quadro a um arquivo ou fluxo especificado em uma chamada anterior ao método Save . Use esse método para salvar quadros selecionados de uma imagem de vários quadros em outra imagem de vários quadros.

Sintaxe

Status SaveAdd(
  const EncoderParameters *encoderParams
);

Parâmetros

encoderParams

Ponteiro para um objeto EncoderParameters que contém parâmetros exigidos pelo codificador de imagem usado pela operação save-add.

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

Exemplos

O exemplo a seguir cria um objeto Image com base em um arquivo TIFF que tem quatro quadros. O código chama o método Image::SelectActiveFrame para navegar até o segundo quadro na dimensão de página desse objeto Image. (A dimensão da página é a única dimensão nesse caso.) Em seguida, o código chama o método Save para salvar o segundo quadro em um novo arquivo chamado TwoFrames.tif. O código chama o método Image::SelectActiveFrame novamente para navegar até o quarto quadro do objeto Image. Em seguida, o código chama o método Image::SaveAdd para adicionar o quarto quadro a TwoFrames.tif. O código chama o método Image::SaveAdd uma segunda vez para fechar TwoFrames.tife desenha os dois quadros que foram salvos nesse arquivo.

VOID Example_SaveAdd(HDC hdc)
{
   Graphics graphics(hdc);
   EncoderParameters encoderParameters;
   ULONG parameterValue;
   GUID dimension = FrameDimensionPage;

   // An EncoderParameters object has an array of
   // EncoderParameter objects. In this case, there is only
   // one EncoderParameter object in the array.
   encoderParameters.Count = 1;

   // Initialize the one EncoderParameter object.
   encoderParameters.Parameter[0].Guid = EncoderSaveFlag;
   encoderParameters.Parameter[0].Type = EncoderParameterValueTypeLong;
   encoderParameters.Parameter[0].NumberOfValues = 1;
   encoderParameters.Parameter[0].Value = &parameterValue;

   // Get the CLSID of the TIFF encoder.
   CLSID encoderClsid;
   GetEncoderClsid(L"image/tiff", &encoderClsid);

   // Create an image object based on a TIFF file that has four frames.
   Image fourFrames(L"FourFrames.tif");

   // Save the second page (frame).
   parameterValue = EncoderValueMultiFrame;
   fourFrames.SelectActiveFrame(&dimension, 1);
   fourFrames.Save(L"TwoFrames.tif", &encoderClsid, &encoderParameters);

   // Save the fourth page (frame).
   parameterValue = EncoderValueFrameDimensionPage;
   fourFrames.SelectActiveFrame(&dimension, 3);
   fourFrames.SaveAdd(&encoderParameters);

   // Close the multiframe file.
   parameterValue = EncoderValueFlush;
   fourFrames.SaveAdd(&encoderParameters);

   // Draw the two frames of TwoFrames.tif.
   Image twoFrames(L"TwoFrames.tif");
   twoFrames.SelectActiveFrame(&dimension, 0);
   graphics.DrawImage(&twoFrames, 10, 10);
   twoFrames.SelectActiveFrame(&dimension, 1);
   graphics.DrawImage(&twoFrames, 150, 10);
}

Requisitos

   
Cabeçalho gdiplusheaders.h

Confira também

Imagem

Encoderparameter

Encoderparameters

Getimageencoders

Métodos Image::Save

Métodos Image::SaveAdd

Usando codificadores de imagem e decodificadores