Image::SaveAdd (constEncoderParameters*) 方法 (gdiplusheaders.h)
Image::SaveAdd方法會將框架新增至先前呼叫Save方法中指定的檔案或資料流程。 使用這個方法以從多重框架影像儲存選取框架至另一個多重框架影像。
語法
Status SaveAdd(
const EncoderParameters *encoderParams
);
參數
encoderParams
EncoderParameters物件的指標,該物件會保存儲存新增作業所使用之影像編碼器所需的參數。
傳回值
類型: 狀態
如果方法成功,它會傳回 Ok,這是 Status 列舉的元素。
如果方法失敗,它會傳回 Status 列舉的其他其中一個專案。
備註
範例
下列範例會根據具有四個畫面格的 TIFF 檔案建立 Image 物件。
程式碼會呼叫 Image::SelectActiveFrame 方法,以巡覽至該 Image 物件的頁面維度中的第二個框架。
(頁面維度在此案例中是唯一的維度。) 然後程式碼會呼叫 Save 方法,將第二個框架儲存到名為 TwoFrames.tif
的新檔案。
程式碼會再次呼叫 Image::SelectActiveFrame 方法,以巡覽至 Image 物件的第四個框架。
然後程式碼會呼叫 Image::SaveAdd 方法,將第四個框架新增至 TwoFrames.tif
。
程式碼第二次呼叫 Image::SaveAdd 方法以關閉 TwoFrames.tif
,然後繪製儲存在該檔案中的兩個畫面格。
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);
}
需求
標頭 | gdiplusheaders.h |