博客
关于我
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/

    你可能感兴趣的文章
    Please install 'webpack-cli' in addition to webpack itself to use the CLI
    查看>>
    Ploly Dash,更新一个Dash应用程序JJJA上的实时人物
    查看>>
    Ploly烛台的定制颜色
    查看>>
    Ploly:如何在Excel中嵌入完全交互的Ploly图形?
    查看>>
    plotloss记录
    查看>>
    Plotly (Python) 子图:填充构面和共享图例
    查看>>
    Plotly 中的行悬停文本
    查看>>
    Plotly 停用 x 轴排序
    查看>>
    Plotly 域变量解释(多图)
    查看>>
    Plotly 绘制表面 3D 未显示
    查看>>
    Plotly-Dash 存在未知问题并创建“加载依赖项时出错“;通过使用 Python-pandas.date_range
    查看>>
    Plotly-Dash:如何过滤具有多个数据框列的仪表板?
    查看>>
    Plotly:如何为 x 轴上的时间序列设置主要刻度线/网格线的值?
    查看>>
    Plotly:如何从 x 轴删除空日期?
    查看>>
    Plotly:如何从单条迹线制作堆积条形图?
    查看>>
    Plotly:如何以 Root 样式绘制直方图,仅显示直方图的轮廓?
    查看>>
    Plotly:如何使用 Plotly Express 组合散点图和线图?
    查看>>
    Plotly:如何使用 plotly.graph_objects 和 plotly.express 定义图形中的颜色?
    查看>>
    Plotly:如何使用 Python 对绘图对象条形图进行颜色编码?
    查看>>
    Plotly:如何使用 updatemenus 更新一个特定的跟踪?
    查看>>