qtのWindowsアプリケーションでjpegイメージのexifデータを読みたいと思います。 私はこの機能を使用しています。Image.GetAllPropertyItems classQtはGDIplusでjpegイメージのexif値を読み取ることができません(id、type、length working)
私はすべてのプロパティ項目をロードし、テストのためtextBrowserでそれを表示することができます:
PropertyItem* pAllItems = (PropertyItem*)malloc(totalBufferSize);
image->GetAllPropertyItems(totalBufferSize, numProperties, pAllItems);
... loop ...
ui->textBrowser->append(QString::number(pAllItems[xxx].id));
ui->textBrowser->append(QString::number(pAllItems[xxx].type));
ui->textBrowser->append(QString::number(pAllItems[xxx].length));
だから私が働いて私のEXIFデータとのthatsのID、タイプと長さを見ることができましたすばらしいです。
しかし、私はPropertyItemの値を読み取ることができません。データ型は異なり、型でチェックすることができます。 私はEXIFデータの時間を(ID == 0x9003)読みたい、タイプが2(have a look)で、長さが20
マイクロソフトは書いている:
は価値があることを指定しますヌルで終了するASCII文字列。タイプ・データ・メンバーをASCIIタイプに設定する場合、Lenプロパティーにヌル終端文字を含む文字列の長さを設定する必要があります。たとえば、文字列「こんにちは」は6
の長さを持つことになり、私はこのような非常に多くの方法を試みた:
QByteArray propItem = pAllItems[xxx].value;
をしかし、私は間違って何をすべきかを知りません。 Qtはそれをコンパイルdidntの:
C2240: "Initalisation": 'void *型は' 'QByteArray'
に変換することができない私は、コンパイラが何を意味するか知っていると思うが、私は解決するための任意のアイデアを持っていませんでしそれ。誰かが私を助けてくれたら嬉しいです。ありがとう。
QtはC++であるが、それはプログラミングではありません言語や方言。コンパイラを使わないVisual Studio C++コンパイラでした。 –
C++プログラムの 'malloc' !? – MrEricSir