我有一系列图表(.png 文件),我想将其中四个放入 A4 页面,然后继续为其余图表执行此操作。可以用 Python 做到吗?
如果您只是询问如何将四个图像平铺成一个更大的图像,这对于大多数图像处理库来说很容易做到。
我将展示如何使用 PIL/ Pillow做到这一点:
import sys
from PIL import Image
width, height = int(8.27 * 300), int(11.7 * 300) # A4 at 300dpi
images = sys.argv[1:]
groups = [images[i:i+4] for i in range(0, len(images), 4)]
for i, group in enumerate(groups):
page = Image.new('RGB', (width, height), 'white')
page.paste(Image.open(group[0]), box=(0, 0))
page.paste(Image.open(group[1]), box=(int(width/2.+.5), 0))
page.paste(Image.open(group[2]), box=(0, int(height/2.+.5)))
page.paste(Image.open(group[3]), box=(int(width/2.+.5), int(height/2.+.5)))
page.save('page{}.pdf'.format(i))
Run Code Online (Sandbox Code Playgroud)
这是示例代码,而不是您问题的完整解决方案。一些注意事项:
| 归档时间: |
|
| 查看次数: |
2604 次 |
| 最近记录: |