Compartir a través de


BitmapEncoder.IsThumbnailGenerated Propiedad

Definición

Indica si se genera automáticamente una nueva miniatura.

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 de propiedad

Boolean

bool

Valor que indica si el codificador de mapa de bits generará automáticamente una nueva miniatura. El valor predeterminado es False.

Comentarios

Cuando este valor es true, el codificador de mapa de bits generará una nueva miniatura al reducir el escalado del mapa de bits del marco. El tamaño de la miniatura viene determinado por las propiedades GeneratedThumbnailWidth y GeneratedThumbnailHeight . Cuando este valor es false, no se escribe ninguna miniatura en el archivo.

Si bitmapEncoder se creó con el método CreateForTranscodingAsync y IsThumbnailGenerated es false, el codificador de mapa de bits dejará los datos en miniatura existentes intactos. En este caso, si el mapa de bits se modificó antes de la codificación, es posible que el archivo de salida tenga una miniatura que no coincida con el nuevo contenido de la imagen.

Solo los tipos de imágenes JPEG, TIFF y JPEG-XR admiten la codificación de miniaturas. Si el formato de imagen que se codifica no admite miniaturas y establece IsThumbnailGenerated en true, se producirá un error en la llamada a FlushAsync con HRESULT WINCODEC_ERR_UNSUPPORTEDOPERATION. Debe detectar esta excepción y volver a intentar codificar con la generación de miniaturas deshabilitada. Si la aplicación solo codifica los formatos de imagen que admiten miniaturas, puede omitir este paso.

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();
 }

Se aplica a