博客
关于我
c# 数字图像处理 基础
阅读量:694 次
发布时间:2019-03-16

本文共 953 字,大约阅读时间需要 3 分钟。

Bitmap类

Bitmap类是GDI+中的一个核心对象,它封装了系统中的位图资源。一个位图由像素数据和相关属性组成,允许开发者通过像素操作进行图像处理。

Bitmap类的主要方法与属性

  • GetPixel 和 SetPixel

    • 通过这些方法可以获取和设置指定像素的颜色,允许对图像进行局部修改。
  • PixelFormat属性

    • 返回图像的像素格式,决定了如何解释像素的颜色信息。
  • Palette属性

    • 如果图像是索引色彩图( Palette '), 这个属性可以返回对应的调色板信息。
  • Height和Width属性

    • 表示图像的高度和宽度。
  • LockBits 和 UnlockBits 方法

    • LockBits用于锁定位图所占用的系统内存,允许对位图像素进行批量操作。 UnlockBits则负责解锁内存以释放资源。
    • locks于指定矩形区域的位图内存,允许开发者逐行或逐列处理像素数据,提高了处理效率。

  • BitmapData类

    BitmapData类是一个与Bitmap类相关的辅助类,它提供了有关位图的详细属性信息。

    BitmapData的主要属性

  • Height和Width

    • 表示被锁定位图的高度和宽度。
  • PixelFormat

    • 指定被锁定位图的像素格式。
  • Scan0

    • 表示被锁定内存中的第一个字节的起始地址。
  • Stride

    • 也称为扫描宽度,表示每行的字节数。由于系统要求每行的字节数必须是4的倍数,Stride的值会根据图像尺寸和像素格式进行计算。

  • Graphics类

    Graphics类是GDI+中最核心的绘图对象之一。它允许开发者向画布上绘制图形、填充颜色和进行其他图形操作。

    使用Graphics对象的示例

    Graphics g = pic1.CreateGraphics();g.DrawLine(Pens.Blue, point1, point2);

    关键点总结

    • Bitmap类封装了位图资源,提供了像素级别的控制。
    • BitmapData类定义了位图的详细属性,例如高度宽度、像素格式和锁定的内存布局。
    • LockBits/UnlockBits方法允许对位图内存进行高效操作。
    • Graphics类是绘图核心,允许创建和操作绘图上下文。

    通过合理利用这些类和方法,开发者可以高效地进行图像处理和绘图操作。

    转载地址:http://lglqz.baihongyu.com/

    你可能感兴趣的文章
    Notepad ++ 安装与配置教程(非常详细)从零基础入门到精通,看完这一篇就够了
    查看>>
    Notepad++在线和离线安装JSON格式化插件
    查看>>
    notepad++最详情汇总
    查看>>
    notepad如何自动对齐_notepad++怎么自动排版
    查看>>
    Notification 使用详解(很全
    查看>>
    NotImplementedError: Cannot copy out of meta tensor; no data! Please use torch.nn.Module.to_empty()
    查看>>
    Now trying to drop the old temporary tablespace, the session hangs.
    查看>>
    nowcoder—Beauty of Trees
    查看>>
    np.arange()和np.linspace()绘制logistic回归图像时得到不同的结果?
    查看>>
    np.power的使用
    查看>>
    NPM 2FA双重认证的设置方法
    查看>>
    npm build报错Cannot find module ‘webpack/lib/rules/BasicEffectRulePlugin‘解决方法
    查看>>
    npm build报错Cannot find module ‘webpack‘解决方法
    查看>>
    npm ERR! ERESOLVE could not resolve报错
    查看>>
    npm ERR! fatal: unable to connect to github.com:
    查看>>
    npm ERR! Unexpected end of JSON input while parsing near '...on":"0.10.3","direc to'
    查看>>
    npm ERR! Unexpected end of JSON input while parsing near ‘...“:“^1.2.0“,“vue-html-‘ npm ERR! A comp
    查看>>
    npm error Missing script: “server“npm errornpm error Did you mean this?npm error npm run serve
    查看>>
    npm error MSB3428: 未能加载 Visual C++ 组件“VCBuild.exe”。要解决此问题,1) 安装
    查看>>
    npm install CERT_HAS_EXPIRED解决方法
    查看>>