(1)图片从文件导入

  BitmapImage image = new BitmapImage();

  image.BeginInit();

  image.UriSource = new Uri(filename);

  image.EndInit();

  (2)图片从Binary导入

  //已知Binary binary

  MemoryStream ms = new MemoryStream(binary.ToArray());

  BitmapImage image = new BitmapImage();

  image.BeginInit();

  image.StreamSource = ms;

  image.EndInit();

  (3)保存图片文件

  //已知BitmapImage image

  JpegBitmapEncoder encoder = new JpegBitmapEncoder();

  encoder.Frames.Add(BitmapFrame.Create(image));

  FileStream fileStream = new FileStream(imageFileName, FileMode.Create, FileAccess.ReadWrite);

  encoder.Save(fileStream);

  fileStream.Close();

  (4)图片应用到材质

  //已知BitmapImage image

  ImageBrush imageBrush = new ImageBrush(image);

  DiffuseMaterial material = new DiffuseMaterial();

  material.Brush = imageBrush;

  本文来自David博客,转载请标明出处:http://blog.csdn.net/wmjcom/archive/2010/12/10/6068130.aspx

WPF中使用BitmapImage处理图片文件(转)的更多相关文章

  1. wpf中内置资源文件

    wpf中包含三种文件类型 资源文件:编译到可执行或库 WPF 程序集中的数据文件. 内容文件:与可执行 WPF 程序集具有显式关联的独立数据文件. 源站点文件:与可执行 WPF 程序集没有关联的独立数 ...

  2. WPF中使用OpenFileDialog打开文件

    添加Microsoft.Win32程序集 private void OnOpenFile(object sender, EventArgs e) { OpenFileDialog openFileDi ...

  3. WPF中实现图片文件转换成Visual对象,Viewport3D对象转换成图片

    原文:WPF中实现图片文件转换成Visual对象,Viewport3D对象转换成图片 1.图片文件转换成Visual对象 private Visual CreateVisual(string imag ...

  4. WPF中查看PDF文件

    需要打开PDF文件时,我们第一印象就是使用Adobe Reader.在开发中,经常会遇到需要展示PDF文件的需求.我们会借助于Adobe Reader的Active控件来实现.不过这需要客户的机器上安 ...

  5. 在WPF中使用文件夹选择对话框

    开发中有时会想实现"选择某个文件夹"的效果: 在WPF中,使用Microsoft.Win32.OpenFileDialog只能选择文件,FolderBrowserDialog只能用 ...

  6. WPF中使用文件浏览对话框的几种方式

    原文:WPF中使用文件浏览对话框的几种方式 WPF本身并没有为我们提供文件浏览的控件, 也不能直接使用Forms中的控件,而文件浏览对话框又是我们最常用的控件之一. 下面是我实现的方式 方式1: 使用 ...

  7. WPF 中的 Pack URI地(资源文件加载)

    参考资源网http://msdn.microsoft.com/zh-cn/library/aa970069.aspx#Absolute_vs_Relative_Pack_URIs 在 Windows ...

  8. 4:WPF中查看PDF文件

    引用连接:https://www.cnblogs.com/yang-fei/p/4885570.html 在Github上看到一个非常好的WPF中承载PDF文件的类库. https://github. ...

  9. WPF中TextBox文件拖放问题

    在WPF中,当我们尝试向TextBox中拖放文件,从而获取其路径时,往往无法成功(拖放文字可以成功).造成这种原因关键是WPF的TextBox对拖放事件处理机制的不同,具体可参考这篇文章Textbox ...

随机推荐

  1. 用Rails.5.2+ Vue.js做 vue-todolist app

    Rails5.2+Vue.js完成Lists(curd) 注意: Edit/update使用SPA(single-page Application单页面程序)的方法完成.点击文字出现一个输入框和按钮. ...

  2. python-day64--web框架

    http协议. 一.HTTP简介 1.HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输 ...

  3. 68. Text Justification *HARD*

    Given an array of words and a length L, format the text such that each line has exactly L characters ...

  4. Python的数据类型1数值和字符串

    Python的交互器 在讲这个之前,我要先讲一下python的交互器,之后讲解代码(除了做简单项目)都在交互器上进行,这样可能比较直接一些,有利于刚接触python的人理解代码 python在命令行自 ...

  5. duilib 实现列表头任意拖动

    1.表头(xml) <List name="List_records" padding="5,10,5,5" bkcolor="#FFFFFFF ...

  6. laravel 连接同一服务器上多个数据库操作 、 连接多个不同服务器上的不同数据库操作以及多个数据库操作的事务处理

    !注意:标红的要注意区分开 第一步.配置.env文件(同一服务器上多个数据库) DB_CONNECTION=pgsqlDB_HOST=IP(例如:127.0.0.1)DB_PORT=端口号(例如:54 ...

  7. learning uboot support web http function in qca4531 cpu

    reference :https://forum.openwrt.org/viewtopic.php?id=43237 reference :http://blog.chinaunix.net/uid ...

  8. ASP.NET的MVC中Model对象字段的数…

    ASP.NET的MVC中Model对象字段的常用数据说明属性: Required——该字段不允许为空. MaxLength——设置数组或字符串最大长度. StringLength——设置字符串最小和最 ...

  9. System.out.println(i++); System.out.println(++i);的区别

    之前一直对i++和++i很模糊,这次通过两个小demo来探究下. 例1: public static void main(String[] args) { int i=2; System.out.pr ...

  10. DBGridEh 在粘贴中文时出现乱码和错位 100zhx_888]

    http://www.fx114.net/qa-29-3439.aspx 回复于: -- :: unit DBGridEh; 把下面这个函数替换成这样 procedure TDBGridInplace ...