DetermineModernImageFormat

Tratamento de imagens, deteção de capacidades

Descrição

Deteta o formato de contentor de um fluxo de imagem moderna analisando os bytes iniciais

São inspecionados até aos primeiros 4096 bytes à procura das marcas ftyp de AVIF e HEIF e da assinatura de codestream ou contentor do JPEG XL; a posição do fluxo é guardada e restaurada, pelo que o chamador pode continuar a ler de onde estava

Sintaxe

Delphi

Function DetermineModernImageFormat(InStream: TStream): TPDFlibModernImageFormat;

Parâmetros

InStreamFluxo posicionado em qualquer ponto; só os bytes iniciais interessam

Valores devolvidos

mifUnknownA assinatura não corresponde a nenhum dos formatos modernos suportados, ou o fluxo é Nil ou tem menos de dois bytes
mifAVIFMarca de caixa de tipo de ficheiro AVIF
mifHEIFMarca de caixa de tipo de ficheiro HEIF
mifJPEGXLAssinatura de codestream ou contentor JPEG XL

Observações

Os pontos de entrada de AddModernImageFromStream executam a mesma deteção antes de descodificar; chame-a diretamente para montar um pipeline de fornecedor que encaminhe apenas os formatos modernos para o backend

Consulte também

ModernImageFormatName, DecodeModernImageToPNG, AddModernImageFromStream, ModernImageCodecAvailable