如何在 WIndows 上的 Python 中将 HEIC 转换为 JPG

How to Convert From HEIC to JPG in Python on WIndows

我正在尝试使用 python 将 HEIC 转换为 JPG。关于这个主题的唯一其他答案使用了 pyheif。我在 windows 上,pyheif 不支持 windows。有什么建议么?我目前正在尝试使用枕头。

截至今天,我还没有找到一种方法来使用仅 Python 的解决方案。如果您需要解决方法,您可以找到任何可以为您进行转换的 Windows 命令行实用程序,并将其作为来自 Python.

的子进程调用

这是一个使用 PowerShell 的示例选项:https://github.com/DavidAnson/ConvertTo-Jpeg

如今,使用 Magick.NET 编写基于 .NET 的控制台应用程序也非常容易。这就是我最终所做的。

刚刚在看同一个话题。我遇到了这个:

https://pypi.org/project/heic-to-jpg/

我没有时间对此进行更多研究,但我想我会分享这个。

下面的代码将图片转换并保存为png格式

from PIL import Image
import pillow_heif

    heif_file = pillow_heif.read_heif("HEIC_file.HEIC")
    image = Image.frombytes(
        heif_file.mode,
        heif_file.size,
        heif_file.data,
        "raw",
    
    )

    image.save("./picture_name.png", format("png"))

在最新版本的pillow_heic模块中,下面的代码可以正常工作。只有 read_heif 被替换为 read.

from PIL import Image

import pillow_heif

heif_file = pillow_heif.read(r"E:\image210914_150826.heic")

image = Image.frombytes(
    heif_file.mode,
    heif_file.size,
    heif_file.data,
    "raw",

)

image.save(r"E:\image\test.png", format("png"))