Im分别使用set_column和set_row设置列和行的大小,如下所示:
my_worksheet.set_column('A:KK', 17)
my_worksheet.set_row(0, 99.6)我有这样的代码可以将任意大小的图像打印到单元格中:
width, height = im.size
# Calculate scale: Problematic
x_scale = IMAGE_CELL_SIZE_PX[0]/float(width)
y_scale = (IMAGE_CELL_SIZE_PX[1] - 5.0)/float(height)
# Calculate offset: Problematic
x_offset = ((IMAGE_CELL_SIZE_PX[0] - width) / 2.0) / x_scale
y_offset = ((IMAGE_CELL_SIZE_PX[1] - 5 - height) / 2.0) / y_scale
worksheet.insert_image(row, col, image_path, {'x_offset': x_offset, 'y_offset': y_offset, 'x_scale': x_scale, 'y_scale': y_scale})问题是它不起作用。图像大小是错误的,大多数时候图片都是远离中心的。好像我错过了一个学期。主要问题是,我无法找到一种方法,以机器无关的方式将像素转换为Excel和xlsxwriter长度单位。
我只能通过set_column设置单元格的宽度,该单元格采用excel单元,我知道像素的图像维数(来自枕头Image.size)。显然,两者之间的转换是机器依赖的。有什么想法吗?
https://stackoverflow.com/questions/51458844
复制相似问题