zoukankan      html  css  js  c++  java
  • C#减少图片文件大小和尺寸

    有一个员工管理,需要在数据库字段中保存员工的照片,但已有的照片非常巨大,1024*768, 2M左右,这么大的数据存入数据库,不管是对管理或是传输都是问题,而实际上登记照只要很小就行了,下面进行减肥(C#):


    //可以读取一些常用的格式,如jpg,bmp等
    Bitmap myBitmap = new Bitmap("c:\\t.bmp"); 

    //生成80*100的缩略图
    Image myThumbnail = myBitmap.GetThumbnailImage(80, 100, null, IntPtr.Zero);
    System.IO.MemoryStream ms = new System.IO.MemoryStream();

    //把生成的缩略图按jpg格式写入到流ms,把这个流转到byte[]并写到数据库就行了,
    //如果有需要,也可以把ms流写入到文件
    myThumbnail.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);

    另外:从数据库中读取的照片也可以不存到文件,而直接与Windows控件PictureBox直接绑定显示
    //PictureBox控件可以直接显示从数据库中读取byte[]的图片, 见下例
    System.IO.MemoryStream ms_p = new System.IO.MemoryStream(byte[] b);
    Bitmap bmp = new Bitmap(ms_p);
    this.pictureBox1.Image = bmp;

    经过以上减肥后,一张照片只有5K左右,程序效率得到提高。

  • 相关阅读:
    TypesScript+Webpack
    TypeScript 类型
    git操作
    kafka
    java: cannot find symbol symbol: variable log
    Angular结构型指令,模块和样式
    Angular 自定义拖拽指令
    Angular changeDetction
    Angular 依赖注入
    RXJS Observable的冷,热和Subject
  • 原文地址:https://www.cnblogs.com/81/p/477143.html
Copyright © 2011-2022 走看看