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 欢迎小伙伴访问

  • 相关阅读:
    int、bigint、smallint 和 tinyint
    我的fedora9安装后配置
    系统引导设置与管理EasyBCD与VistaBootPRO
    从Xml文档内部引用Xml Schema验证
    linux开机顺序
    OS引导-笔记
    Logic Volume笔记
    Service笔记
    python中若类属性与实例属性同名
    解析JavaScript中的null与undefined
  • 原文地址:https://www.cnblogs.com/lindexi/p/13656976.html
Copyright © 2011-2022 走看看