资源简介

利用Python在Excel中点阵绘图

资源截图

代码片段和文件信息

from openpyxl import Workbook
from openpyxl.utils import get_column_letter
from openpyxl.styles import PatternFill Color from PIL import Image # 定义常量 
IMAGE_FILE = ‘starsky.jpg‘ # 图片的文件名 
IMAGE_MAX_SIZE = 400 # 图片长边像素的最大值,如果超出此值,将缩小图片。 
img = Image.open(IMAGE_FILE) print(‘image\‘s type is %s‘ % img.format) # 修正图片尺寸 
img_width img_height = img.size 
print(‘image\‘s size is (%s %s)‘ % (img_width img_height)) 
if img_width > IMAGE_MAX_SIZE: 
img_height = int(img_height * IMAGE_MAX_SIZE / img_width) 
img_width = IMAGE_MAX_SIZE 
if img_height > IMAGE_MAX_SIZE: 
img_width = int(img_width * IMAGE_MAX_SIZE / img_height) 
img_height = IMAGE_MAX_SIZE 
img.thumbnail((img_width img_height)) # 缩小图片尺寸 
print(‘image\‘s new size is (%s %s)‘ % (img_width img_height)) # 由于excel对单元格填充色有要求,所以用以下两行代码把图片转换为8位色值 
img = img.convert(‘P‘) 
img = img.convert(‘RGB‘) 
pix = img.load() 
workbook = Workbook() 
worksheet = workbook.active

评论

共有 条评论