python heic后綴圖片文件轉(zhuǎn)換成jpg格式的操作
我就廢話不多說(shuō)了,直接上代碼
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/
補(bǔ)充:怎么將HEIC圖像格式轉(zhuǎn)換成JPG或PNG?
想打開(kāi)heic文件,首先要做的是把圖片格式轉(zhuǎn)換成電腦可以查看的,電腦可以查看的形式也并非很單一,比如jpg/bmp/png,這些都是比較常用的格式,首先heic圖片是蘋(píng)果手機(jī)獨(dú)有的圖片格式,電腦上或者其他設(shè)備是無(wú)法打開(kāi),需要將heic圖片進(jìn)行轉(zhuǎn)換成jpg/bmp/png等電腦或其他設(shè)備可以的打開(kāi)的格式,
那今天就學(xué)習(xí)一下heic文件怎么轉(zhuǎn)換的,將蘋(píng)果的手機(jī)中的照片存到電腦上的某個(gè)文件夾,使用"heic圖片轉(zhuǎn)換精靈"進(jì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ì)量也越高,同時(shí)文件也會(huì)變大,若添加的heic圖片很多,支持批量添加,導(dǎo)入文件夾,列表會(huì)顯示添加的文件名,大小,默認(rèn)軟件是勾選文件的,只需點(diǎn)擊開(kāi)始轉(zhuǎn)換,等待幾秒鐘heic轉(zhuǎn)換完成,點(diǎn)擊打開(kāi)目錄轉(zhuǎn)換后的文件就在打開(kāi)的目錄下.


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

