Image::SaveAdd(constEncoderParameters*)-Methode (gdiplusheaders.h)

Die Image::SaveAdd-Methode fügt einer Datei oder einem Stream einen Frame hinzu, der in einem vorherigen Aufruf der Save-Methode angegeben wurde. Mit dieser Methode speichern Sie ausgewählte Rahmen eines Bilds mit mehreren Rahmen in einem anderen Bild mit mehreren Rahmen.

Syntax

Status SaveAdd(
  const EncoderParameters *encoderParams
);

Parameter

encoderParams

Zeiger auf ein EncoderParameters-Objekt , das Parameter enthält, die für den Vom Save-Add-Vorgang verwendeten Bildencoder erforderlich sind.

Rückgabewert

Typ: Status

Wenn die Methode erfolgreich ist, gibt sie OK zurück, ein Element der Status-Enumeration .

Wenn die Methode fehlschlägt, gibt sie eines der anderen Elemente der Status-Enumeration zurück.

Bemerkungen

Beispiele

Im folgenden Beispiel wird ein Image-Objekt basierend auf einer TIFF-Datei mit vier Frames erstellt. Der Code ruft die Image::SelectActiveFrame-Methode auf, um zum zweiten Frame in der Seitendimension dieses Image-Objekts zu navigieren. (Die Seitendimension ist in diesem Fall die einzige Dimension.) Anschließend ruft der Code die Save-Methode auf, um den zweiten Frame in einer neuen Datei mit dem Namen TwoFrames.tifzu speichern. Der Code ruft erneut die Image::SelectActiveFrame-Methode auf, um zum vierten Frame des Image-Objekts zu navigieren. Dann ruft der Code die Image::SaveAdd-Methode auf, um den vierten Frame zu TwoFrames.tifhinzuzufügen. Der Code ruft die Image::SaveAdd-Methode ein zweites Mal auf, um zu schließen TwoFrames.tif, und zeichnet dann die beiden Frames, die in dieser Datei gespeichert wurden.

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);
}

Requirements (Anforderungen)

   
Kopfzeile gdiplusheaders.h

Weitere Informationen

Bild

Encoderparameter

Encoderparameters

GetImageEncoder

Image::Save-Methoden

Image::SaveAdd-Methoden

Verwenden von Bildencodern und -decodern