2008-10-10 57 views

回答

2

Images API不包含(當前)包含像素級函數。引用概述文檔:

注意:爲了在本地環境中使用Images API,您必須先下載並安裝PIL(Python圖像庫)。 PIL在App Engine上不可用;它僅用作本地環境中Images API的存根。 App Engine上只提供圖像API中提供的轉換。

該社區在一段時間內一直要求支持完整PIL,但看起來我們必須等待。

0

如果您願意在頁面上放置Flash或Java小程序,您可能可以在客戶端上完成。我不確定像canvas或SVG這樣的東西是否支持像素級別的操作,但是如果他們這樣做了,您可能可以在某些帶有JavaScript的瀏覽器中使用它。

Flash或Java Applet可以是不可見的,也可以是可選的 - 您可以使用JavaScript檢測用戶是否擁有該插件,並且只在他們執行時支持該功能。

+0

這是假設應用程序是一個網站,它可能會是別的東西。 – 2010-10-27 10:34:18

2

對於PNG,您可以使用PyPNG module - 輕量級純Python PNG解碼器/編碼器。

import png 

point = (10, 20) # coordinates of pixel to read 

reader = png.Reader(filename='image.png') # streams are also accepted 
w, h, pixels, metadata = reader.read() 
pixel_byte_width = 4 if metadata['has_alpha'] else 3 
pixel_position = point[0] + point[1] * w 
print pixels[ 
    pixel_position * pixel_byte_width : 
    (pixel_position + 1) * pixel_byte_width] 
+1

通過在AppEngine中將圖像轉換爲PNG可以實現其他圖像類型的讀取。 – 2010-10-27 10:36:05