python heic后綴圖片文件轉(zhuǎn)換成jpg格式的操作
我就廢話不多說了,直接上代碼
heic_to_jpg.py
import subprocess
import os
import io
import whatimage
import pyheif
import traceback
from PIL import Image
def decodeImage(bytesIo):
try:
fmt = whatimage.identify_image(bytesIo)
# print('fmt = ', fmt)
if fmt in ['heic']:
i = pyheif.read_heif(bytesIo)
# print('i = ', i)
# print('i.metadata = ', i.metadata)
pi = Image.frombytes(mode=i.mode, size=i.size, data=i.data)
# print('pi = ', pi)
pi.save('heeh.jpg', format="jpeg")
except:
traceback.print_exc()
def read_image_file_rb(file_path):
with open(file_path, 'rb') as f:
file_data = f.read()
return file_data
if __name__ == "__main__":
file_path = './test_image.HEIC'
print('file_path = ', file_path)
data = read_image_file_rb(file_path)
# print('data = ', data)
decodeImage(data)
ps:win10不支持,只有l(wèi)inux和macos可以成功的安裝pyheif包,win10目前支持不太好
參考鏈接:
https://stackoverflow.com/questions/54395735/how-to-work-with-heic-image-file-types-in-python
https://pypi.org/project/pyheif/
補充:怎么將HEIC圖像格式轉(zhuǎn)換成JPG或PNG?
想打開heic文件,首先要做的是把圖片格式轉(zhuǎn)換成電腦可以查看的,電腦可以查看的形式也并非很單一,比如jpg/bmp/png,這些都是比較常用的格式,首先heic圖片是蘋果手機獨有的圖片格式,電腦上或者其他設(shè)備是無法打開,需要將heic圖片進行轉(zhuǎn)換成jpg/bmp/png等電腦或其他設(shè)備可以的打開的格式,
那今天就學(xué)習(xí)一下heic文件怎么轉(zhuǎn)換的,將蘋果的手機中的照片存到電腦上的某個文件夾,使用"heic圖片轉(zhuǎn)換精靈"進行轉(zhuǎn)換,轉(zhuǎn)換步驟如下:
支持操作系統(tǒng) widowns vista/ win7/win8 / win10
heic圖片轉(zhuǎn)換精靈,下載地址和安裝方法:http://www.ghostheic.com/
轉(zhuǎn)換步驟如下:
1.第一步,選擇輸出格式,支持jpg,png,bmp格式,默認(rèn)jpg ,選擇圖像質(zhì)量,選擇的數(shù)值越高,轉(zhuǎn)換后的圖像質(zhì)量也越高,同時文件也會變大,若添加的heic圖片很多,支持批量添加,導(dǎo)入文件夾,列表會顯示添加的文件名,大小,默認(rèn)軟件是勾選文件的,只需點擊開始轉(zhuǎn)換,等待幾秒鐘heic轉(zhuǎn)換完成,點擊打開目錄轉(zhuǎn)換后的文件就在打開的目錄下.


另使用“heic圖片轉(zhuǎn)換精靈”,若需要保存圖片原有信息,轉(zhuǎn)換可勾選保存exif信息,這樣轉(zhuǎn)換后原圖信息都可以保存
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
基于Python實現(xiàn)隨機點名系統(tǒng)的示例代碼
在某些難以抉擇得時候,我們經(jīng)常要用外力來幫助我們做出選擇,比如,梁山出征方臘前沙場點兵,挑選先鋒的場景。所以本文就來用Python做個隨機點名系統(tǒng)吧,需要的可以參考一下2023-04-04
Python使用Selenium執(zhí)行JavaScript代碼的步驟詳解
Selenium是一個用于自動化瀏覽器操作的工具,可以模擬人工操作,執(zhí)行各種瀏覽器操作,而JavaScript是一種常用的腳本語言,本文將介紹如何在Python中使用Selenium執(zhí)行JavaScript代碼,并給出一些常見的應(yīng)用示例2023-11-11
Python控制臺輸出俄羅斯方塊移動和旋轉(zhuǎn)功能
這篇文章主要介紹了Python控制臺輸出俄羅斯方塊移動和旋轉(zhuǎn)功能,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-04-04
python3+PyQt5實現(xiàn)自定義窗口部件Counters
這篇文章主要為大家詳細(xì)介紹了python3+PyQt5實現(xiàn)自定義窗口部件,Counters自定窗口部件,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-04-04
python GUI庫圖形界面開發(fā)之PyQt5切換按鈕控件QPushButton詳細(xì)使用方法與實例
這篇文章主要介紹了python GUI庫圖形界面開發(fā)之PyQt5切換按鈕控件QPushButton詳細(xì)使用方法與實例,需要的朋友可以參考下2020-02-02

