Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez aussi afficher la version anglaise dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte.
Traduction
Anglais
Cette documentation est archivée et n’est pas conservée.

EncoderParameter, classe

Utilisé pour passer une valeur ou un tableau de valeurs à un encodeur d'image.

System.Object
  System.Drawing.Imaging.EncoderParameter

Espace de noms :  System.Drawing.Imaging
Assembly :  System.Drawing (dans System.Drawing.dll)

public sealed class EncoderParameter : IDisposable

Le type EncoderParameter expose les membres suivants.

  NomDescription
Méthode publiqueEncoderParameter(Encoder, Byte)Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et un entier non signé 8 bits. Affecte ValueTypeByte à la propriété ValueType et 1 à la propriété NumberOfValues.
Méthode publiqueEncoderParameter(Encoder, Byte[])Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et un tableau d'entiers non signés 8 bits. Affecte ValueTypeByte à la propriété ValueType et le nombre d'éléments contenus dans le tableau à la propriété NumberOfValues.
Méthode publiqueEncoderParameter(Encoder, Int16)Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et un entier 16 bits. Affecte ValueTypeShort à la propriété ValueType et 1 à la propriété NumberOfValues.
Méthode publiqueEncoderParameter(Encoder, Int16[])Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et un tableau d'entiers 16 bits. Affecte ValueTypeShort à la propriété ValueType et le nombre d'éléments contenus dans le tableau à la propriété NumberOfValues.
Méthode publiqueEncoderParameter(Encoder, Int64)Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et un entier 64 bits. Affecte ValueTypeLong (32 bits) à la propriété ValueType et 1 à la propriété NumberOfValues.
Méthode publiqueEncoderParameter(Encoder, Int64[])Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et un tableau d'entiers 64 bits. Affecte ValueTypeLong (32 bits) à la propriété ValueType et le nombre d'éléments contenus dans le tableau à la propriété NumberOfValues.
Méthode publiqueEncoderParameter(Encoder, String)Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et une chaîne de caractères. La chaîne est convertie en chaîne ASCII se terminant par le caractère NULL avant d'être stockée dans l'objet EncoderParameter. Affecte ValueTypeAscii à la propriété ValueType et la longueur de la chaîne ASCII y compris la marque de fin NULL à la propriété NumberOfValues.
Méthode publiqueEncoderParameter(Encoder, Byte, Boolean)Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et une valeur 8 bits. Affecte ValueTypeUndefined ou ValueTypeByte à la propriété ValueType et 1 à la propriété NumberOfValues.
Méthode publiqueEncoderParameter(Encoder, Byte[], Boolean)Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et un tableau d'octets. Affecte ValueTypeUndefined ou ValueTypeByte à la propriété ValueType et le nombre d'éléments contenus dans le tableau à la propriété NumberOfValues.
Méthode publiqueEncoderParameter(Encoder, Int32, Int32)Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et une paire d'entiers 32 bits. La paire d'entiers représente une fraction, le premier entier étant le numérateur et le second étant le dénominateur. Affecte ValueTypeRational à la propriété ValueType et 1 à la propriété NumberOfValues.
Méthode publiqueEncoderParameter(Encoder, Int32[], Int32[])Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et deux tableaux d'entiers 32 bits. Les deux tableaux représentent un tableau de fractions. Affecte ValueTypeRational à la propriété ValueType et le nombre d'éléments contenus dans le tableau numerator, qui doit être identique à celui du tableau denominator, à la propriété NumberOfValues.
Méthode publiqueEncoderParameter(Encoder, Int64, Int64)Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et une paire d'entiers 64 bits. La paire d'entiers représente une plage d'entiers, le premier entier étant le plus petit nombre de la plage et le second étant le plus grand nombre de la plage. Affecte ValueTypeLongRange à la propriété ValueType et 1 à la propriété NumberOfValues.
Méthode publiqueEncoderParameter(Encoder, Int64[], Int64[])Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et deux tableaux d'entiers 64 bits. Les deux tableaux représentent un tableau de plages d'entiers. Affecte ValueTypeLongRange à la propriété ValueType et le nombre d'éléments contenus dans le tableau rangebegin, qui doit être identique à celui du tableau rangeend, à la propriété NumberOfValues.
Méthode publiqueEncoderParameter(Encoder, Int32, Int32, Int32)Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et trois entiers qui spécifient le nombre de valeurs, le type de données des valeurs et un pointeur vers les valeurs stockées dans l'objet EncoderParameter.
Méthode publiqueEncoderParameter(Encoder, Int32, Int32, Int32, Int32)Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et quatre entiers 32 bits. Les quatre entiers représentent une plage de fractions. Les deux premiers entiers représentent la plus petite fraction de la plage et les deux autres entiers représentent la plus grande fraction de la plage. Affecte ValueTypeRationalRange à la propriété ValueType et 1 à la propriété NumberOfValues.
Méthode publiqueEncoderParameter(Encoder, Int32[], Int32[], Int32[], Int32[])Initialise une nouvelle instance de la classe EncoderParameter avec l'objet Encoder spécifié et quatre tableaux d'entiers 32 bits. Les quatre tableaux représentent un tableau de plages rationnelles. Une plage rationnelle est l'ensemble des fractions comprises entre une valeur fractionnaire minimale et une valeur fractionnaire maximale. Affecte ValueTypeRationalRange à la propriété ValueType et le nombre d'éléments contenus dans le tableau numerator1, qui doit être identique à celui des trois autres tableaux, à la propriété NumberOfValues.
Début

  NomDescription
Propriété publiqueEncoderObtient ou définit l'objet Encoder associé à cet objet EncoderParameter. L'objet Encoder encapsule le GUID (Identificateur Global Unique) qui spécifie la catégorie (par exemple Quality, ColorDepth ou Compression) du paramètre stocké dans cet objet EncoderParameter.
Propriété publiqueNumberOfValuesObtient le nombre d'éléments contenus dans le tableau des valeurs stockées dans cet objet EncoderParameter.
Propriété publiqueTypeObtient le type de données des valeurs stockées dans cet objet EncoderParameter.
Propriété publiqueValueTypeObtient le type de données des valeurs stockées dans cet objet EncoderParameter.
Début

  NomDescription
Méthode publiqueDisposeLibère toutes les ressources utilisées par cet objet EncoderParameter.
Méthode publiqueEquals(Object)Détermine si l'Object spécifié est égal à l'Object en cours. (Hérité de Object.)
Méthode protégéeFinalize Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de nettoyage avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)
Méthode publiqueGetHashCodeSert de fonction de hachage pour un type particulier. (Hérité de Object.)
Méthode publiqueGetTypeObtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode protégéeMemberwiseCloneCrée une copie superficielle de l'objet Object actif. (Hérité de Object.)
Méthode publiqueToStringRetourne une chaîne qui représente l'objet actuel. (Hérité de Object.)
Début

Vous pouvez également utiliser un objet EncoderParameter pour recevoir une liste de valeurs possibles prises en charge par un paramètre particulier d'un encodeur d'image particulier.

L'exemple de code suivant illustre la création d'un EncoderParameter à l'aide du constructeur EncoderParameter. Pour exécuter cet exemple, collez le code dans un Windows Form et appelez la méthode VaryQualityLevel depuis le constructeur du formulaire. Cet exemple nécessite qu'un fichier image nommé TestPhoto.jpg soit situé sur c:\.


private void VaryQualityLevel()
{
    // Get a bitmap.
    Bitmap bmp1 = new Bitmap(@"c:\TestPhoto.jpg");
    ImageCodecInfo jgpEncoder = GetEncoder(ImageFormat.Jpeg);

    // Create an Encoder object based on the GUID
    // for the Quality parameter category.
    System.Drawing.Imaging.Encoder myEncoder =
        System.Drawing.Imaging.Encoder.Quality;

    // Create an EncoderParameters object.
    // An EncoderParameters object has an array of EncoderParameter
    // objects. In this case, there is only one
    // EncoderParameter object in the array.
    EncoderParameters myEncoderParameters = new EncoderParameters(1);

    EncoderParameter myEncoderParameter = new EncoderParameter(myEncoder, 50L);
    myEncoderParameters.Param[0] = myEncoderParameter;
    bmp1.Save(@"c:\TestPhotoQualityFifty.jpg", jgpEncoder, myEncoderParameters);

    myEncoderParameter = new EncoderParameter(myEncoder, 100L);
    myEncoderParameters.Param[0] = myEncoderParameter;
    bmp1.Save(@"c:\TestPhotoQualityHundred.jpg", jgpEncoder, myEncoderParameters);

    // Save the bitmap as a JPG file with zero quality level compression.
    myEncoderParameter = new EncoderParameter(myEncoder, 0L);
    myEncoderParameters.Param[0] = myEncoderParameter;
    bmp1.Save(@"c:\TestPhotoQualityZero.jpg", jgpEncoder, myEncoderParameters);

}


...


private ImageCodecInfo GetEncoder(ImageFormat format)
{

    ImageCodecInfo[] codecs = ImageCodecInfo.GetImageDecoders();

    foreach (ImageCodecInfo codec in codecs)
    {
        if (codec.FormatID == format.Guid)
        {
            return codec;
        }
    }
    return null;
}


.NET Framework

Pris en charge dans : 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows XP SP2 Édition x64, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.
Afficher: