将numpy数组图像转换为pdf base64

问题描述

我有一张图片,表示为一个numpy数组。

我想避免将其写为pdf,然后再读回该文件获取文件的base64表示,是否有一种更简单的方法而无需编写文件呢?

如果我理解正确,那么jpg和pdf的base64编码是不同的吗?

解决方法

使用PIL Image.fromarray函数,可以将所有图像转换为PIL图像。

然后再次使用PIL,save()可用于将图像另存为PDF并将其写入到buffe中:

buff = io.BytesIO()

pil_images [0] .save(buff,“ PDF”,分辨率= 100.0,save_all = True,append_images = pil_images [1:])

buff.getvalue()返回字节(这对我来说已经足够了,但仍然有可能获得base64表示形式)