zoukankan      html  css  js  c++  java
  • WPF 创建空白图片

    本文告诉大家如何在 WPF 创建空白图片,可以创建1像素图片

    可以使用 BitmapSource 的 Create 方法创建空白图片

                // 限制不能创建小于2x2的图片
                const int width = 2;
                const int height = width;
                
                BitmapSource.Create(width, height, 96, 96,
                    PixelFormats.Indexed1,
                    new BitmapPalette(new List<Color> { Colors.Transparent }),
                    new byte[width * height], 1);
    

    上面这个方法只有创建 2x2 的图片,而创建1像素图片可以使用下面方法

                const int width = 1;
                const int height = width;
                const double dpi = 96;
                // R G B 三个像素
                const int colorLength = 3;
    
                var image = BitmapSource.Create(width, height, dpi, dpi, PixelFormats.Bgr24, null, new byte[colorLength],
                    colorLength);
    

    空白图片保存到文件,使用png和jpg等几个格式里面,文件的大小如下

    .png byte count = 119
    .jpg byte count = 631
    .bmp byte count = 58
    .gif byte count = 41
    

    也就是说存放为 gif 对于这张图片最省文件体积

    以下是 bmp 文件的二进制

    0x42,0x4D,0x3A,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x36,0x00,0x00,0x00,0x28,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x00,0x18,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xC4,0x0E,0x00,0x00,0xC4,0x0E,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
    

    本文代码放在 github 欢迎小伙伴访问

  • 相关阅读:
    html5不能播放视频的方法
    mysql找出重复数据的方法
    jquery each循环遍历完再执行的方法
    Android:TextView跑马灯-详解
    日志处理(一) log4j 入门和详解(转)
    周记 2014.11.08
    周记 2014.11.01
    linux下解压命令大全
    关于Context []startup failed due to previous errors
    周记 2014.10.25
  • 原文地址:https://www.cnblogs.com/lindexi/p/13656976.html
Copyright © 2011-2022 走看看