EncoderParameter Sınıf

Tanım

Bir değeri veya değer dizisini görüntü kodlayıcıya geçirmek için kullanılır.

public ref class EncoderParameter sealed : IDisposable
public sealed class EncoderParameter : IDisposable
type EncoderParameter = class
    interface IDisposable
Public NotInheritable Class EncoderParameter
Implements IDisposable
Devralma
EncoderParameter
Uygulamalar

Örnekler

Aşağıdaki kod örneği, EncoderParameter oluşturmak için EncoderParameter yapıcısının nasıl kullanılacağını göstermektedir. Bu örneği çalıştırmak için, kodu bir Windows Formuna yapıştırın ve formun VaryQualityLevel oluşturucusundan yöntemini çağırın. Bu örnek, c:\ konumunda bulunan adlı TestPhoto.jpg bir görüntü dosyası gerektirir.

private void VaryQualityLevel()
{
    // Get a bitmap.
    Bitmap bmp1 = new Bitmap(@"c:\TestPhoto.jpg");
    ImageCodecInfo jpgEncoder = 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", jpgEncoder, myEncoderParameters);

    myEncoderParameter = new EncoderParameter(myEncoder, 100L);
    myEncoderParameters.Param[0] = myEncoderParameter;
    bmp1.Save(@"c:\TestPhotoQualityHundred.jpg", jpgEncoder, 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", jpgEncoder, myEncoderParameters);
}
Private Sub VaryQualityLevel()
    ' Get a bitmap.
    Dim bmp1 As New Bitmap("c:\TestPhoto.jpg")
    Dim jpgEncoder As ImageCodecInfo = GetEncoder(ImageFormat.Jpeg)

    ' Create an Encoder object based on the GUID
    ' for the Quality parameter category.
    Dim myEncoder As System.Drawing.Imaging.Encoder = 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.
    Dim myEncoderParameters As New EncoderParameters(1)

    Dim myEncoderParameter As New EncoderParameter(myEncoder, 50&)
    myEncoderParameters.Param(0) = myEncoderParameter
    bmp1.Save("c:\TestPhotoQualityFifty.jpg", jpgEncoder, myEncoderParameters)

    myEncoderParameter = New EncoderParameter(myEncoder, 100&)
    myEncoderParameters.Param(0) = myEncoderParameter
    bmp1.Save("c:\TestPhotoQualityHundred.jpg", jpgEncoder, myEncoderParameters)

    ' Save the bitmap as a JPG file with zero quality level compression.
    myEncoderParameter = New EncoderParameter(myEncoder, 0&)
    myEncoderParameters.Param(0) = myEncoderParameter
    bmp1.Save("c:\TestPhotoQualityZero.jpg", jpgEncoder, myEncoderParameters)

End Sub
private ImageCodecInfo GetEncoder(ImageFormat format)
{
    ImageCodecInfo[] codecs = ImageCodecInfo.GetImageEncoders();

    foreach (ImageCodecInfo codec in codecs)
    {
        if (codec.FormatID == format.Guid)
        {
            return codec;
        }
    }
    
    return null;
}
Private Function GetEncoder(ByVal format As ImageFormat) As ImageCodecInfo

    Dim codecs As ImageCodecInfo() = ImageCodecInfo.GetImageEncoders()

    Dim codec As ImageCodecInfo
    For Each codec In codecs
        If codec.FormatID = format.Guid Then
            Return codec
        End If
    Next codec
    Return Nothing

End Function

Açıklamalar

Belirli bir EncoderParameter görüntü kodlayıcının belirli bir parametresi tarafından desteklenen olası değerlerin listesini almak için bir nesnesi de kullanabilirsiniz.

Uyarı

.NET 6 ve sonraki sürümlerde, bu türü içeren System.Drawing.Common paketi yalnızca Windows işletim sistemlerinde desteklenir. Platformlar arası uygulamalarda bu türün kullanılması derleme zamanı uyarılarına ve çalışma zamanı özel durumlarına neden olur. Daha fazla bilgi için bkz . System.Drawing.Common yalnızca Windows'ta desteklenir.

Oluşturucular

Name Description
EncoderParameter(Encoder, Byte, Boolean)

Belirtilen Encoder nesne ve bir 8 bit değer ile sınıfının yeni bir örneğini EncoderParameter başlatır. özelliğini veya ValueTypeByteolarak, özelliğini ValueTypeUndefined ise 1 olarak ayarlarNumberOfValues.ValueType

EncoderParameter(Encoder, Byte)

Belirtilen Encoder nesne ve işaretsiz bir 8 bit tamsayı ile sınıfının yeni bir örneğini EncoderParameter başlatır. ValueType özelliğini ValueTypeByteolarak ayarlar ve özelliğini 1 olarak ayarlarNumberOfValues.

EncoderParameter(Encoder, Byte[], Boolean)

Belirtilen Encoder nesne ve bayt dizisiyle sınıfının yeni bir örneğini EncoderParameter başlatır. ValueType özelliğini veya ValueTypeByteolarak ValueTypeUndefined ayarlar ve özelliğini dizideki öğe sayısına ayarlarNumberOfValues.

EncoderParameter(Encoder, Byte[])

Belirtilen Encoder nesne ve işaretsiz 8 bit tamsayılar dizisi ile sınıfının yeni bir örneğini EncoderParameter başlatır. ValueType özelliğini olarak ValueTypeByteayarlar ve özelliğini dizideki öğe sayısına ayarlarNumberOfValues.

EncoderParameter(Encoder, Int16)

Belirtilen Encoder nesne ve bir, 16 bit tamsayı ile sınıfının yeni bir örneğini EncoderParameter başlatır. ValueType özelliğini ValueTypeShortolarak ayarlar ve özelliğini 1 olarak ayarlarNumberOfValues.

EncoderParameter(Encoder, Int16[])

Belirtilen Encoder nesne ve 16 bit tamsayılardan oluşan bir dizi ile sınıfının yeni bir örneğini EncoderParameter başlatır. ValueType özelliğini olarak ValueTypeShortayarlar ve özelliğini dizideki öğe sayısına ayarlarNumberOfValues.

EncoderParameter(Encoder, Int32, EncoderParameterValueType, IntPtr)

Sınıfın EncoderParameter yeni bir örneğini belirtilen Encoder nesneyle, değer sayısıyla, değerlerin veri türüyle ve nesnede EncoderParameter depolanan değerlerin işaretçisiyle başlatır.

EncoderParameter(Encoder, Int32, Int32, Int32, Int32)

Belirtilen Encoder nesne ve dört, 32 bit tamsayı ile sınıfının yeni bir örneğini EncoderParameter başlatır. Dört tamsayı bir kesir aralığını temsil eder. İlk iki tamsayı aralıktaki en küçük kesri, kalan iki tamsayı ise aralıktaki en büyük kesri temsil eder. ValueType özelliğini ValueTypeRationalRangeolarak ayarlar ve özelliğini 1 olarak ayarlarNumberOfValues.

EncoderParameter(Encoder, Int32, Int32, Int32)
Geçersiz.
Geçersiz.
Geçersiz.

Belirtilen Encoder nesne ve değer sayısını, değerlerin EncoderParameter veri türünü ve nesnede EncoderParameter depolanan değerlerin işaretçisini belirten üç tamsayı ile sınıfının yeni bir örneğini başlatır.

EncoderParameter(Encoder, Int32, Int32)

Belirtilen Encoder nesne ve 32 bit tamsayı çifti ile sınıfının yeni bir örneğini EncoderParameter başlatır. Tamsayı çifti bir kesri, ilk tamsayıyı payda, ikinci tamsayıyı paydayı temsil eder. ValueType özelliğini ValueTypeRationalolarak ayarlar ve özelliğini 1 olarak ayarlarNumberOfValues.

EncoderParameter(Encoder, Int32[], Int32[], Int32[], Int32[])

Belirtilen Encoder nesne ve 32 bit tamsayılardan oluşan dört dizi ile sınıfının yeni bir örneğini EncoderParameter başlatır. Dört dizi, dizi rasyonal aralıklarını temsil eder. Rasyonel aralık, en düşük kesirli değerden en büyük kesirli değere kadar tüm kesirlerin kümesidir. ValueType özelliğini ValueTypeRationalRangeolarak ayarlar ve özelliğini dizideki numerator1 öğe sayısına ayarlarNumberOfValues. Bu, diğer üç dizideki öğe sayısıyla aynı olmalıdır.

EncoderParameter(Encoder, Int32[], Int32[])

Belirtilen Encoder nesne ve 32 bit tamsayılardan oluşan iki dizi ile sınıfının yeni bir örneğini EncoderParameter başlatır. İki dizi bir kesir dizisini temsil eder. ValueType özelliğini ValueTypeRationalolarak ayarlar ve özelliğini dizideki numerator öğe sayısına ayarlarNumberOfValues. Bu, dizideki denominator öğe sayısıyla aynı olmalıdır.

EncoderParameter(Encoder, Int64, Int64)

Belirtilen Encoder nesne ve 64 bit tamsayı çifti ile sınıfının yeni bir örneğini EncoderParameter başlatır. Tamsayı çifti bir tamsayı aralığını, ilk tamsayı aralıktaki en küçük sayı, ikinci tamsayı ise aralıktaki en büyük sayıdır. ValueType özelliğini ValueTypeLongRangeolarak ayarlar ve özelliğini 1 olarak ayarlarNumberOfValues.

EncoderParameter(Encoder, Int64)

Belirtilen Encoder nesne ve bir 64 bit tamsayı ile sınıfının yeni bir örneğini EncoderParameter başlatır. ValueType Özelliği ValueTypeLong (32 bit) olarak ayarlar ve özelliğini 1 olarak ayarlarNumberOfValues.

EncoderParameter(Encoder, Int64[], Int64[])

Belirtilen Encoder nesne ve 64 bit tamsayılardan oluşan iki dizi ile sınıfının yeni bir örneğini EncoderParameter başlatır. İki dizi, bir dizi tamsayı aralıklarını temsil eder. ValueType özelliğini ValueTypeLongRangeolarak ayarlar ve özelliğini dizideki rangebegin öğe sayısına ayarlarNumberOfValues. Bu, dizideki rangeend öğe sayısıyla aynı olmalıdır.

EncoderParameter(Encoder, Int64[])

Belirtilen Encoder nesne ve 64 bit tamsayılardan oluşan bir dizi ile sınıfının yeni bir örneğini EncoderParameter başlatır. ValueType özelliğini ValueTypeLong (32 bit) olarak ayarlar ve özelliğini dizideki öğe sayısına ayarlarNumberOfValues.

EncoderParameter(Encoder, String)

Belirtilen Encoder nesne ve karakter dizesiyle sınıfının yeni bir örneğini EncoderParameter başlatır. Dize, nesnede depolanmadan önce null olarak sonlandırılan bir ASCII dizesine EncoderParameter dönüştürülür. ValueType özelliğini ValueTypeAsciiolarak ayarlar ve özelliğini NULL sonlandırıcısı da dahil olmak üzere ASCII dizesinin uzunluğuna ayarlarNumberOfValues.

Özellikler

Name Description
Encoder

Bu EncoderParameter nesneyle ilişkili nesneyi alır veya ayarlarEncoder. nesnesi, Encoder bu EncoderParameter nesnede depolanan parametrenin kategorisini (örneğin Quality, ColorDepthveya Compression) belirten genel benzersiz tanımlayıcıyı (GUID) kapsüller.

NumberOfValues

Bu EncoderParameter nesnede depolanan değer dizisindeki öğelerin sayısını alır.

Type

Bu EncoderParameter nesnede depolanan değerlerin veri türünü alır.

ValueType

Bu EncoderParameter nesnede depolanan değerlerin veri türünü alır.

Yöntemler

Name Description
Dispose()

Bu EncoderParameter nesne tarafından kullanılan tüm kaynakları serbest bırakır.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
Finalize()

EncoderParameter Bir nesnenin, atık toplama tarafından geri kazanılmadan önce kaynakları boşaltmaya ve diğer temizleme işlemlerini gerçekleştirmeye EncoderParameter çalışmasına izin verir.

GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır

Ayrıca bkz.