Python PIL draw_ellipse或draw_rectangle

时间:2017-11-26 10:55:19

标签: python python-imaging-library

我是一个老计时器,用Fortran,C,C ++,Perl等编程 Java多年来,并试图学习这种新奇的Python语言。

我有一个小程序,使用PIL创建图像,绘制一些 基元(矩形,椭圆等......)并将其保存到PNG。工作良好... 没问题。

我在过去发现,“真正学习”语言的最佳途径 是“偷看引擎盖”并理解机制(双关语意图!)......我以为我在制作 进展......但是在查看PIL库时看看发生了什么 在幕后,我在 ImageDraw.py 中找到了以下代码

def ellipse(self, xy, fill=None, outline=None):
    """Draw an ellipse."""
    ink, fill = self._getink(outline, fill)
    if fill is not None:
        self.draw.draw_ellipse(xy, fill, 1)
    if ink is not None:
        self.draw.draw_ellipse(xy, ink, 0)

所以, ellipse()调用方法 self.draw.draw_ellipse()好的,好的...... 但是哪里定义了 draw_ellipse(...)?那里发生了什么魔力? 我已经搜索了整个PIL目录树(甚至是整个python树......),并且 ellipse() draw_ellipse 的地方>方法定义......我甚至尝试在调试器中单步执行它,而且我仍然“喋喋不休”:-)至于发生了什么事情。

我错过了什么?

谢谢!

0 个答案:

没有答案