Python Imaging Library: ImageWin Module(图像Windows模块)

ImageWin模块支持在Windows上创建和显示图像。

ImageWin可以与PythonWin或其他用户界面工具包一起使用,这些工具包可以提供对Windows设备上下文或窗口句柄的访问。

例如,Tkinter让窗口可以通过winfo_id方法获得:

    dib = ImageWin.Dib(...)
    hwnd = ImageWin.HWND(widget.winfo_id())
    dib.draw(hwnd, xy)

Dib类

Dib

ImageWin.Dib(image) ⇒ Dib instance

ImageWin.Dib(mode, size) ⇒ Dib instance

这个构造函数从一个PIL图像中创建一个Windows位图,或者根据给定模式和大小创建一个Windows位图。

图像模式可以是“1”、“L”或“RGB”。

如果显示需要一个调色板,这个构造函数会创建一个合适的调色板,并将其与图像关联起来。

对于一个“L”图像,将分配128个灰色级别。对于一个“RGB”图像,使用一个6x6x6的彩色立方体,共计20个灰色级别。

为了确保调色板在Windows下正常工作,您必须在Windows的某些事件上调用调色板方法。请参阅下面的方法描述。

Helper类

HDC

HDC(dc)

包装(Wraps)一个HDC整数。所得到的对象可以传递给drawexpose方法。

HWND

HWND(dc)

包装(Wraps)一个HWND整数。所得到的对象可以传递给draw和expose方法,而不是DC。

方法

expose

dib.expose(hdc)

使用给定的设备上下文句柄曝光(绘制)图像。

句柄是一个表示Windows HDC句柄或HDC或HWND对象的整数。

在PythonWin中,您可以使用CDC类的GetHandleAttrib方法获得一个合适的句柄。

draw

dib.draw(hdc, destination)

dib.draw(hdc, destination, source)

与曝光(绘制)图像(expose)相同,但是允许您指定在哪里绘制图像,以及绘制它的哪一部分。

目标区域和源区域使用4元组矩形指定。如果省略了源区域,那么整个图像就会被复制。

如果源区域和目标区域大小不同,则图像根据需要调整大小。

palette

dib.palette(handle)

在给定的设备上下文中安装与图像相关联的调色板。

句柄参数是一个表示Windows HDC句柄的整数。

应该调用这个方法来响应来自Windows的QUERYNEWPALETTEPALETTECHANGED事件。

如果该方法返回一个非零值,那么在上一次更新后,一个或多个显示面板条目将被更改,并且应该重新绘制该图像。

paste

dib.paste(image, bbox)

将图像粘贴到位图图像中。

bbox参数是一个4元组,它定义了左、上、右和下像素坐标。

如果没有使用一个元组,那么整个图像将被复制。

在所有情况下,粘贴图像的大小必须与该区域的大小匹配。

如果图像模式与位图模式不匹配,则自动应用转换。

Python Imaging Library: ImageWin Module(图像Windows模块)相关推荐

  1. Python Imaging Library: ImageFile Module(图像文件模块)

    Python Imaging Library: ImageFile Module(图像文件模块) ImageFile模块为图像打开和保存功能提供了支持函数. 此外,它还提供了一个解析器类,可以被用来对 ...

  2. Python Imaging Library: ImageEnhance Module(图像增强模块)

    Python Imaging Library: ImageEnhance Module(图像增强模块) # 图像增强模块(ImageEnhance Module) PilImg_Enhance = I ...

  3. Python Imaging Library: ImageSequence Module(图像序列模块)

    Python Imaging Library: ImageSequence Module(图像序列模块) ImageSequence模块包含一个包装器类,可以让您遍历图像序列中的所有帧. Functi ...

  4. Python Imaging Library: ImageTk Module(图像Tkinter模块)

    Python Imaging Library: ImageTk Module(图像Tkinter模块) ImageTk模块支持从图片中创建和修改Tkinter位图图像和PhotoImage对象. 例如 ...

  5. Python Imaging Library: ImageQt Module(图像QT模块)

    Python Imaging Library: ImageQt Module(图像QT模块) (版本1.1.6) ImageQt 模块支持从图片中创建PyQt4 QImage对象. 注意:如果你使用的 ...

  6. Python Imaging Library: ImagePath Module(图像路径模块)

    Python Imaging Library: ImagePath Module(图像路径模块) ImagePath模块用于存储和操作二维向量数据.路径对象可以在 ImageDraw 模块中传递方法. ...

  7. Python Imaging Library: ImagePalette Module(图像调色板模块)

    Python Imaging Library: ImagePalette Module(图像调色板模块) FIXME: 这个部分不太符合当前现状.现在,将调色板添加到图像的最安全的方法是在字符串中使用 ...

  8. Python Imaging Library: ImageOps Module(图像运算模块)

    Python Imaging Library: ImageOps Module(图像运算模块) (版本1.1.3) ImageOps模块包含许多"现成的"图像处理操作.这个模块是实 ...

  9. Python Imaging Library: ImageMath Module(图像数学运算模块)

    Python Imaging Library: ImageMath Module(图像数学运算模块) (新版本1.1.6)可以使用ImageMath模块来评估"图像表达式".这个模 ...

最新文章

  1. ArcGIS问题小记
  2. JAVA四圣降临,和平精英四圣降临模式攻略
  3. 020_Vue非父子组件之间数据交互
  4. AtCoder AGC043D Merge Triplets (DP、组合计数)
  5. 量子计算机完整的图片,记者带你走近世界首台超越早期经典计算机的光量子计算机(组图)...
  6. BF533和触摸屏接口芯片TSC2200调试日志
  7. ssm整合 durid数据源 报错java.sql.SQLException: Access denied for user ‘xxx‘@‘localhost‘
  8. OCP-052考试题库汇总(58)-CUUG内部解答版
  9. 三星Galaxy S22系列国行版获3C认证:依旧祖传25W快充
  10. html5小游戏需求分析,2015年HTML5就业需求走势总结分析
  11. 计算机替换规定文字颜色,改Windows系统字体颜色的方法
  12. firefly-rk3288开发板Linux驱动——LED驱动
  13. 零基础入门数据挖掘之金融风控-贷款违约预测
  14. 计算机专业铁路局面试题目,铁路局招聘面试
  15. 简单明了的区分C++ C语言中声明(declaration)、定义(definition)、签名(signature)的区别
  16. linux下cppcheck用法,CppCheck介绍与使用
  17. html入门基础笔记(简单实用)
  18. java毕业设计二手交易系统Mybatis+系统+数据库+调试部署
  19. 阿里天池--工业蒸汽预测
  20. 基于MPPT算法的PV光伏阵列电网模型simulink仿真

热门文章

  1. C#Winform编程的基础知识
  2. Python序列之字符串
  3. 【转】Loss Function View
  4. 楼市反弹难以持续 年末房价稳中趋降
  5. 树形DP(简单题)(Y HDU4705)
  6. 改进我个人知识管理手段
  7. 回归分析beta值的标准_学好这20%,就能解决80%的数据分析问题 | 数据产品经理必看...
  8. Python rsa 加密
  9. MVC5 Entity Framework学习参加排序、筛选和排序功能
  10. 回顾Gartner 报告:2010年至2017年那些最酷的存储初创公司去哪儿了