在Windows应用商店中将两个画布保存为单个图像

时间:2014-03-23 08:20:50

标签: c# windows-store-apps

我将画布保存为我的Windows商店应用程序中的图像,如下所示:

RenderTargetBitmap renderTargetBitmap = new RenderTargetBitmap();
 await renderTargetBitmap.RenderAsync(canvas1);
var pixelBuffer = await renderTargetBitmap.GetPixelsAsync();
var savePicker = new FileSavePicker();
savePicker.DefaultFileExtension = ".png";
savePicker.FileTypeChoices.Add(".png", new List<string> { ".png" }); 
savePicker.FileTypeChoices.Add(".jpg", new List<string> { ".jpg" });
savePicker.FileTypeChoices.Add(".bmp", new List<string> { ".bmp" }); 
savePicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
savePicker.SuggestedFileName = "image1.png";
 var saveFile = await savePicker.PickSaveFileAsync();
if (saveFile == null)
return;
 using (var fileStream = await saveFile.OpenAsync(FileAccessMode.ReadWrite))
 {
var encoder = await BitmapEncoder.CreateAsync(BitmapEncoder.PngEncoderId, fileStream);
encoder.SetPixelData(
BitmapPixelFormat.Bgra8,
BitmapAlphaMode.Ignore,
(uint)renderTargetBitmap.PixelWidth,
(uint)renderTargetBitmap.PixelHeight,
DisplayInformation.GetForCurrentView().LogicalDpi,
DisplayInformation.GetForCurrentView().LogicalDpi,
pixelBuffer.ToArray());
await encoder.FlushAsync();
}

现在我想将两个画布i.e canvas1 and canvas2保存为单个图像。怎么做?

0 个答案:

没有答案
相关问题