我的应用程序将是一个绘图画布,用户可以单击“保存”按钮。然后,图像将保存在xap文件所在的服务器内。
我认为我不能使用对话框。如何保存图像?
我考虑过将图片转换为流,然后将其写入路径。这是正确的方法吗?
我尝试将图像转换为流并写入,但我遇到访问权限被拒绝错误。所以我现在正在使用Webclient。一切正常,没有错误,但即使没有错误,图像也不会覆盖。以下是我的代码,请赐教。谢谢!
//Code to create WriteableBitnap with InkPresenter named "strokeTest"//
WriteableBitmap wb = new WriteableBitmap(strokeTest, null);
//End...Code to create WriteableBitnap with InkPresenter named "strokeTest"//
//code used to convert WrtiteableBitmap to byte array//
int w = wb.PixelWidth;
int h = wb.PixelHeight;
int[] p = wb.Pixels;
int len = p.Length;
byte[] result = new byte[4 * w * h];
// Copy pixels to buffer
for (int i = 0, j = 0; i < len; i++, j += 4)
{
int color = p[i];
result[j + 0] = (byte)(color >> 24); // A
result[j + 1] = (byte)(color >> 16); // R
result[j + 2] = (byte)(color >> 8); // G
result[j + 3] = (byte)(color); // B
}
//End...code used to convert WrtiteableBitmap to byte array//
//Code to overwrite the file using Webclient//
WebClient wc = new WebClient();
Uri u = new Uri("/test/brush_shape.png", UriKind.Relative);
wc.OpenWriteAsync(u, null, result);
//End...Code to overwrite the file using Webclient//
答案 0 :(得分:0)
为什么你没有在这个控件上使用图像控件并使Source属性受益?那么你可以创建图像的字节数组并发送到服务器