2
我想在PyQt5中的QLabel中呈現WSQ圖像。 WSQ圖像位於一個zip文件中的xml文件中。這裏是我的方法:什麼是在QLabel中呈現WSQ圖像的最佳方式
import zipfile
import xml.etree.cElementTree as ET
import base64.b64decode as b64decode
from PyQt5 import QtGui, QtWidgets
...
try:
with zipfile.ZipFile(zfilename) as src_zip:
root = ET.fromstring(src_zip.open(xmlfilename).read())
except zipfile.BadZipFile as e:
root = None
finger_prints = []
if root:
for data in root.findall('.//Demographics/FingerData'):
finger_prints.append(b64decode(data.find('FingerprintImage').text))
...
finger_data = finger_prints.pop()
pixmap = QtGui.QPixmap()
pixmap.loadFromData(finger_data, 'WSQ') # freezes
QtWidgets.QLabel().setPixmap(pixmap)
第二,但最後一行導致程序凍結/掛機,但如果我這樣做:
with file('/tmp/finger_print.wsq', 'wb') as f:
f.write(finger_data)
我能夠在WSQ查看器來查看圖像。我知道Qt有不同圖像格式的插件,是否有我缺少的圖像插件?
在此先感謝您的幫助。
-Abraham。
嗨@安德魯 - 巴伯,我已經重新構思了我的問題,甚至改變了標題,如果你再看一下,我會很感激。如果它仍然是題外話,我會誠心誠意地採取。 –