aho*_*fer 4 python pyopengl python-imaging-library
我是Python和PIL的新手.我试图关注如何通过PIL将图像加载到Python,然后使用openGL绘制其像素的代码示例.以下是一些代码行:
from Image import *
im = open("gloves200.bmp")
pBits = im.convert('RGBA').tostring()
Run Code Online (Sandbox Code Playgroud)
.....
glDrawPixels(200, 200, GL_RGBA, GL_UNSIGNED_BYTE, pBits)
Run Code Online (Sandbox Code Playgroud)
这将在画布上绘制一个200 x 200的像素块.但是,它不是预期的图像 - 看起来它是从随机存储器中绘制像素.随机记忆假设得到以下事实的支持:即使我试图绘制完全不同的图像,我也会得到相同的模式.有人可以帮助我吗?我在Windows XP上使用Python 2.7和2.7版本的pyopenGL和PIL.

我觉得你很亲密 尝试:
pBits = im.convert("RGBA").tostring("raw", "RGBA")
Run Code Online (Sandbox Code Playgroud)
首先必须将图像转换为RGBA模式,以便RGBA原始模式打包器可用(请参阅libimaging中的Pack.c).您可以检查len(pBits) == im.size[0]*im.size[1]*4手套200图像的200x200x4 = 160,000字节.
| 归档时间: |
|
| 查看次数: |
15513 次 |
| 最近记录: |