4

ここのコードで hsl カラー値を使用するのに苦労しています...私の目標は、座標のインデックスがデータセットで発生する頻度に基づいて、画像内のピクセルの不透明度を変更することです。csv ファイルからデータを取得していますが、無効な hsl 構文を使用しているという唯一のエラーが表示されます。ここに私のコードのセクションがあります:

    for row in reader:
        port = int(row[0])
        opacity = int(row[1])/1000
        x = port % 255
        y = int(port/257)
        color = hsl(0, 0%, opacity)
        draw.point([(x,y)], fill=color)
        del draw  

PIL の Web サイトから、明度と彩度はどちらもパーセンテージでなければならないと仮定しました。row[1] の最大値は 999 なので、不透明度が 1 を超えることはありません。よろしくお願いします。

4

1 に答える 1

9

PIL の色は、実際の Python 関数ではなく、文字列として定義されます。

color = 'hsl(%d, %d%%, %d%%)' % (hue, saturation, luminance)
draw.point((x, y), fill=color)

http://effbot.org/imagingbook/imagedraw.htm

于 2013-06-12T03:03:40.373 に答える