2016-05-16 4 views
0

Python Imaging Libraryで対称円を描くときに問題があります。次のコードでは、直径6ピクセルの円を作成する必要があります。それが描くのは、ダイの画像に示される非対称の「円」です。誰かが解決策を持っていますか?この問題はすべてのエバン直径で発生します。 enter image description here小さな円(6x6px)が非対称にレンダリングされる

from PIL import Image, ImageDraw 

img = Image.new('1', (8, 8), "white") 
draw = ImageDraw.Draw(img) 

draw.ellipse((1, 1, 6, 6), fill = 'black', outline ='black') 

img.show() 
+0

おそらくPILにバグを報告する必要がありますか?奇妙な直径はこのアーティファクトを持たないように見えます。例えば、 'draw.ellipse((1,1,400,400)、fill = 'black'、outline = 'black ') ''と '' draw.ellipse((1,140,​​401)、fill =' black '、outline =' black ') ' –

答えて

0

コードは正しいです。それは枕パッケージのバグです。 7月1日に次のアップデート(3.3.0)で修正する必要があります。

3

私はdrawing circles is hardとあなたの結果は、PILが使用するアルゴリズムは、このような小さな円のために生成するものであるため、だと思います。ポリゴンを使用して独自の「円」を描くことができます。等しい半径を有する楕円は、少なくとも対称的でなければならないことが主張する可能性が

一...

関連する問題