zoukankan      html  css  js  c++  java
  • C#绘图表面

      任何绘图表面都有三个主要特性:界面的大小,像素分辨率和颜色深度。如果有一个分辨率非常高的位图,要把它绘制到一个低分辨率的绘图表面上,该位图就会进行放大,显得相当大。

    绘图表面的颜色深度定义了每个像素可以存储多少种颜色。在GDI+中,每个像素都描述了一种颜色。

    在GDI+上,默认的绘图模型使用24为颜色深度。如果绘图表面不允许使用24位颜色深度,GDI+有时会限制可以执行的图形操作类型,有时则与颜色的转换不兼容--这个过程称为抖动。在抖动过程中,GDI+在临近的像素中使用其他颜色,以获得与不能显示的那种颜色最接近的效果。为了避免抖动,可以调用Graphics类的一个方法GetNearestColor,它会返回一种显示器能显示出来、且未经抖动的颜色。

    在GDI+中,颜色封装在color结构中。使用color结构有三种方式。一:把RGB值传送给color结构中的一个静态函数,创建color结构的一个新实例。color c = Color。FromArgb(100,100,255)定义RGB模式中3种颜色成分的亮度。二:按照名称引用141中预定义的颜色,Color c = Color.Red。三:HSB模型。色调(Hue)--这是根据波长制定的实际颜色,色调用0到360之间的一个浮点数值定义。饱和度(Saturation)--颜色亮度,级别是用一个0到1之间的浮点数表示。亮度(Brightness)--颜色的相对亮度或暗度,用一个0(黑)到1(白)之间的浮点数表示。

    GDI+中的所有颜色都有Alpha成分,它常常设置为255,所以颜色是完全不透明的。但屏幕本身不包含Alpha成分,打印机亦然,但在绘制图像时,总是可以使用alpha成分来混合颜色,也可以简单地把颜色的alpha值传送给图像,这样图像就包含了alpha成分。

    GDI+简单地把所有显示设备的像素分辨率都定义为96DPI。

  • 相关阅读:
    织梦开发——相关阅读likeart应用
    织梦标签教程
    织梦专题调用代码
    HIT 2543 Stone IV
    POJ 3680 Intervals
    HIT 2739 The Chinese Postman Problem
    POJ 1273 Drainage Ditches
    POJ 2455 Secret Milking Machine
    SPOJ 371 Boxes
    HIT 2715 Matrix3
  • 原文地址:https://www.cnblogs.com/ttssrs/p/2396489.html
Copyright © 2011-2022 走看看