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

    你可能感兴趣的文章
    svn访问报错500
    查看>>
    sum(a.YYSR) over (partition by a.hy_dm) 不需要像group by那样需要分组函数。方便。
    查看>>
    ORCHARD 是什么?
    查看>>
    Struts2中使用Session的两种方法
    查看>>
    Stream API:filter、map和flatMap 的用法
    查看>>
    STM32工作笔记0032---编写跑马灯实验---寄存器版本
    查看>>
    ssm旅游信息管理系统的设计与实现bus56(程序+开题)
    查看>>
    order by rand()
    查看>>
    SSM(Spring+SpringMvc+Mybatis)整合开发笔记
    查看>>
    Orderer节点启动报错解决方案:Not bootstrapping because of 3 existing channels
    查看>>
    org.apache.axis2.AxisFault: org.apache.axis2.databinding.ADBException: Unexpected subelement profile
    查看>>
    sql查询中 查询字段数据类型 int 与 String 出现问题
    查看>>
    org.apache.commons.beanutils.BasicDynaBean cannot be cast to ...
    查看>>
    org.apache.dubbo.common.serialize.SerializationException: com.alibaba.fastjson2.JSONException: not s
    查看>>
    sqlserver学习笔记(三)—— 为数据库添加新的用户
    查看>>
    org.apache.http.conn.HttpHostConnectException: Connection to refused
    查看>>
    org.apache.ibatis.binding.BindingException: Invalid bound statement错误一例
    查看>>
    org.apache.ibatis.exceptions.PersistenceException:
    查看>>
    org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned
    查看>>
    org.apache.ibatis.type.TypeException: Could not resolve type alias 'xxxx'异常
    查看>>