BitmapEncoder.IsThumbnailGenerated Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Indica se uma nova miniatura é gerada automaticamente ou não.
public:
property bool IsThumbnailGenerated { bool get(); void set(bool value); };
bool IsThumbnailGenerated();
void IsThumbnailGenerated(bool value);
public bool IsThumbnailGenerated { get; set; }
var boolean = bitmapEncoder.isThumbnailGenerated;
bitmapEncoder.isThumbnailGenerated = boolean;
Public Property IsThumbnailGenerated As Boolean
Valor da propriedade
bool
Um valor que indica se o codificador de bitmap gerará automaticamente uma nova miniatura. O valor padrão é False.
Comentários
Quando esse valor for true, o codificador de bitmap gerará uma nova miniatura reduzindo o bitmap de quadro. O tamanho da miniatura é determinado pelas propriedades GeneratedThumbnailWidth e GeneratedThumbnailHeight . Quando esse valor é falso, nenhuma miniatura é gravada no arquivo.
Se o BitmapEncoder tiver sido criado usando o método CreateForTranscodingAsync e IsThumbnailGenerated for false, o codificador bitmap deixará os dados em miniatura existentes intocados. Nesse caso, se o bitmap foi modificado antes da codificação, é possível que o arquivo de saída tenha uma miniatura que não corresponda ao novo conteúdo da imagem.
Somente tipos de imagem JPEG, TIFF e JPEG-XR dão suporte a miniaturas de codificação. Se o formato de imagem que está sendo codificado não oferecer suporte a miniaturas e você definir IsThumbnailGenerated como true, a chamada para FlushAsync falhará com o HRESULT WINCODEC_ERR_UNSUPPORTEDOPERATION. Você deve capturar essa exceção e tentar codificar novamente com a geração de miniaturas desabilitada. Se seu aplicativo codificar apenas formatos de imagem que dão suporte a miniaturas, você poderá ignorar esta etapa.
try
{
await encoder.FlushAsync();
}
catch (Exception err)
{
switch (err.HResult)
{
case unchecked ((int) 0x88982F81): //WINCODEC_ERR_UNSUPPORTEDOPERATION
// If the encoder does not support writing a thumbnail, then try again
// but disable thumbnail generation.
encoder.IsThumbnailGenerated = false;
break;
default:
throw err;
}
}
if (encoder.IsThumbnailGenerated == false)
{
await encoder.FlushAsync();
}