我正在尝试使用 smc.FreeImage 加载 .NEF 文件(Nikon Camera RAW)并使用 PySide 显示。
我发现这个示例可以很好地加载和显示注释的 .JPG 文件,但是当我用 FI.Image NEF 替换像素图时它会崩溃。
我添加了打印 pixmap.getInfoHeader 以确保 .NEF 实际加载它所做的,我在输出窗口中看到正确的标题信息。
如何翻译读取的 pixmap = FI.Image 以便 PySide 理解它?我见过有人使用 numpy 和 PIL tostring,但这些例子似乎都没有涵盖这种情况。
import sys
from PySide import QtGui, QtCore
from smc import freeimage as FI
class Example(QtGui.QWidget):
def __init__(self):
super(Example, self).__init__()
self.initUI()
def initUI(self):
hbox = QtGui.QHBoxLayout(self)
#pixmap = QtGui.QPixmap("Somefile.jpg")
pixmap = FI.Image("Anotherfile.NEF")
print( pixmap.getInfoHeader() )
lbl = QtGui.QLabel(self)
lbl.setPixmap(pixmap)
hbox.addWidget(lbl)
self.setLayout(hbox)
self.setGeometry(300, 300, 280, 170)
self.setWindowTitle('Da window Title')
self.show()
def main():
app = QtGui.QApplication(sys.argv)
ex = Example()
sys.exit(app.exec_())
if __name__ == '__main__':
main()