【发布时间】:2020-07-18 20:27:07
【问题描述】:
我可以使用以下方法在我的应用程序中获取网格图像:
RenderTargetBitmap rtb_grid = new RenderTargetBitmap();
await rtb_grid.RenderAsync(grid);
var grid_pixel_buffer = await rtb_grid.GetPixelsAsync();
var grid_pixels = grid_pixel_buffer.ToArray();
而且我知道我可以使用以下方法将其保存到外部文件(在本例中为流):
var encoder = await BitmapEncoder.CreateAsync(BitmapEncoder.PngEncoderId, stream);
encoder.SetPixelData(BitmapPixelFormat.Bgra8,
BitmapAlphaMode.Premultiplied,
(uint)rtb_grid.PixelWidth,
(uint)rtb_grid.PixelHeight,
displayInformation.RawDpiX,
displayInformation.RawDpiY,
grid_pixels);
但在我的场景中,现在我在不同的地方有两个不同的网格以及它们对应的像素(字节 [])。那么如何将这些图像(从左到右)合并为一个,以执行第二步,只保存一个更大的图像,前两个在里面?
【问题讨论】:
-
我对“执行第二步只保存一个更大的图像,前两个在里面”有点困惑。联系这两张图片后,要保存合并的一张吗?您能否提供有关您预期行为的更多详细信息?
-
我的意思是一个更大的图像,里面有另外两个。就像创建一个适合双方的更大图片。