Decodierung
Um Metadaten ordnungsgemäß zu unterstützen, müssen Decoder-Autoren folgende Aktionen ausführen:
Implementieren Sie die IWICBitmapDecoder -und IWICBitmapFrameDecode -Schnittstellen.
Implementieren Sie IWICMetadataBlockReader auf dem Frame-Decoder. Wenn der Codec Metadaten auf Container Ebene unterstützt, muss diese Schnittstelle sowohl für den Decoder auf Container Ebene als auch für den Frame Decoder implementiert werden.
Beim Decodieren des bildstreams muss IWICComponentFactory::CreateMetadataReaderFromContainer aufgerufen werden, um einen metadatenreader für jeden Metadatenblock zu instanziieren. (Alle neuen metadatenleser, die der Codec implementiert, müssen bei WIC registriert werden.)
Der Decoder sollte keine eigenen metadatenleser erstellen, sondern stattdessen WIC verwenden, um Sie basierend auf den metadatenblöcken im Datenstrom zu erstellen. Der Decoder muss dies für alle gefundenen Blöcke ausführen, auch wenn Sie dem docoder nicht nativ bekannt sind, da zukünftige metadatenleser möglicherweise auf dem System installiert sind, die verstehen, wie diese Metadatenblöcke behandelt werden.
Wenn kein Metadatenhandler für einen-Block vorhanden ist, instanziieren Sie den unbekannten metadatenreader, indem Sie die Optionen für die Metadatenerstellung verwenden.
Machen Sie die Auflistung von metadatenlesern über die IWICMetadataBlockReader -Schnittstelle verfügbar.