Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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.tif
zu 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.tif
hinzuzufü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 = ¶meterValue;
// 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 |