我正在尝试在应用程序中即时创建PDF文档,即用户单击一个链接,并使用一些文本和一些图像向他们显示PDF文档。

我目前正在使用FPDF v1.6(http://www.fpdf.org/)支持24bit(true color)png,但我的问题是,这是一个旧应用程序,有1000的PNG具有16位颜色深度,FPDF不支持,我不能简单地转换,因此我不能简单地转换使用这些图像的应用。

我看到的唯一解决方案是:

  1. 将16位PNG图像转换为即将嵌入PDF。
  2. 找到一个新的PDF类,该类将接受16位颜色深度PNG。

有人有想法么?

有帮助吗?

解决方案

也许您可以尝试使用 TCPDF (从未与16位PNG一起使用它,但对其进行测试应该很容易)。

其他提示

在Python中解决了这一点:

def fix_16_bit_depth_not_supported(raw_image_path):
    """
    fix
    RuntimeError: FPDF error: 16-bit depth not supported: test.png
    """
    new_file, filename = tempfile.mkstemp(suffix='.png')
    os.close(new_file)
    i = cv2.imread(raw_image_path, cv2.IMREAD_UNCHANGED)
    img = np.array(i, dtype=np.float32)
    convert = img / 255.
    cv2.imwrite(filename, convert)
    return filename
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top