private voID UIElementTofile(UIElement ui_element)
{
//保存InkPresenter涂鸦板内绘画的图
WriteableBitmap _bitmap = new WriteableBitmap(ui_element,null);
// this.showIP.source = _bitmap;
SavefileDialog sfd = new SavefileDialog();
sfd.Filter = "PNG files (*.png)|*.png|All files (*.*)|*.*";
sfd.DefaultExt = ".png"; sfd.FilterIndex = 1;
if ((bool)sfd.ShowDialog())
{
using (Stream fs = sfd.Openfile())
{
int wIDth = _bitmap.PixelWIDth;
int height = _bitmap.PixelHeight;
EditableImage ei = new EditableImage(wIDth,height);
for (int i = 0; i < height; i++)
{
for (int j = 0; j < wIDth; j++)
{
int pixel = _bitmap.Pixels[(i * wIDth) + j];
ei.SetPixel(j,i,(byte)((pixel >> 16) & 0xFF),(byte)((pixel >> 8) & 0xFF),(byte)(pixel & 0xFF),(byte)((pixel >> 24) & 0xFF));
}
}
//获取流 Stream png = ei.GetStream(); int len = (int)png.Length; byte[] bytes = new byte[len]; png.Read(bytes,len); fs.Write(bytes,len); MessageBox.Show("图片保存成功!"); } } }
总结以上是内存溢出为你收集整理的把silverlight的控件使用图像保存起来之(二)全部内容,希望文章能够帮你解决把silverlight的控件使用图像保存起来之(二)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)