Class ColorPaletteHelper

Class ColorPaletteHelper

Namespace: Aspose.Imaging
Assembly: Aspose.Imaging.dll (25.2.0)

Renk paletleri ile çalışmak için yardımcı sınıf.

public static class ColorPaletteHelper

Miras

objectColorPaletteHelper

Miras Alınan Üyeler

object.GetType(), object.MemberwiseClone(), object.ToString(), object.Equals(object?), object.Equals(object?, object?), object.ReferenceEquals(object?, object?), object.GetHashCode()

Yöntemler

Create4Bit()

4 bit renk paletini oluşturur.

public static IColorPalette Create4Bit()

Dönüş

IColorPalette

4 bit renk paleti.

Create4BitGrayscale(bool)

4 bit gri ton paletini oluşturur.

public static IColorPalette Create4BitGrayscale(bool minIsWhite)

Parametreler

minIsWhite bool


#### Dönüş

 [IColorPalette](/imaging/aspose.imaging.icolorpalette)

4 bit gri ton paleti.

### <a id="Aspose_Imaging_ColorPaletteHelper_Create8Bit"></a> Create8Bit\(\)

8 bit renk paletini oluşturur.

```csharp
public static IColorPalette Create8Bit()

Dönüş

IColorPalette

8 bit renk paleti.

Create8BitGrayscale(bool)

8 bit gri ton paletini oluşturur.

public static IColorPalette Create8BitGrayscale(bool minIsWhite)

Parametreler

minIsWhite bool


#### Dönüş

 [IColorPalette](/imaging/aspose.imaging.icolorpalette)

8 bit gri ton paleti.

#### Örnekler

Aşağıdaki örnek, paletli bir gri ton BMP görüntüsü oluşturur ve ardından bunu bir dosyaya kaydeder.```csharp
[C#]

                                                                                                      string dir = "c:\\temp\\";

                                                                                                      Aspose.Imaging.ImageOptions.BmpOptions createOptions = new Aspose.Imaging.ImageOptions.BmpOptions();

                                                                                                      // Bir dosyaya kaydet
                                                                                                      createOptions.Source = new Aspose.Imaging.Sources.FileCreateSource(dir + "output.palette8bit.bmp", false);

                                                                                                      // Çıktı görüntüsünün boyutunu azaltmak için piksel başına 8 bit kullanın.
                                                                                                      createOptions.BitsPerPixel = 8;

                                                                                                      // Tüm gri ton renklerini kapsayan standart 8 bit gri ton renk paletini ayarlayın.
                                                                                                      // İşlenen görüntü yalnızca gri ton renkleri içeriyorsa, paletli versiyonu
                                                                                                      // paletsiz olanından görsel olarak ayırt edilemez.
                                                                                                      createOptions.Palette = Aspose.Imaging.ColorPaletteHelper.Create8BitGrayscale(false);

                                                                                                      // Sıkıştırma olmadan kaydedin.
                                                                                                      // Çıktı görüntüsünün boyutunu azaltmak için RLE-8 sıkıştırmasını da kullanabilirsiniz.
                                                                                                      createOptions.Compression = Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rgb;

                                                                                                      // Yatay ve dikey çözünürlüğü 96 dpi olarak ayarlayın.
                                                                                                      createOptions.ResolutionSettings = new Aspose.Imaging.ResolutionSetting(96.0, 96.0);

                                                                                                      // 100 x 100 px boyutunda bir BMP görüntüsü oluşturun ve bunu bir dosyaya kaydedin.
                                                                                                      using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Create(createOptions, 100, 100))
                                                                                                      {
                                                                                                          Aspose.Imaging.Graphics graphics = new Aspose.Imaging.Graphics(image);

                                                                                                          Aspose.Imaging.Brushes.LinearGradientBrush gradientBrush = new Aspose.Imaging.Brushes.LinearGradientBrush(
                                                                                                              new Aspose.Imaging.Point(0, 0),
                                                                                                              new Aspose.Imaging.Point(image.Width, image.Height),
                                                                                                              Aspose.Imaging.Color.Black,
                                                                                                              Aspose.Imaging.Color.White);

                                                                                                          // Görüntüyü gri tonlu bir gradyan ile doldurun
                                                                                                          graphics.FillRectangle(gradientBrush, image.Bounds);

                                                                                                          image.Save();
                                                                                                      }

CreateGrayscale(int)

Belirtilen bit sayısına sahip gri ton paletini alır. İzin verilen bit değerleri 1, 2, 4, 8’dir.

public static IColorPalette CreateGrayscale(int bits)

Parametreler

bits int

Bit sayısı.

Dönüş

IColorPalette

Gri ton paleti.

İstisnalar

ArgumentOutOfRangeException

bits

CreateMonochrome()

Sadece 2 renk içeren bir monokrom renk paleti oluşturur.

public static IColorPalette CreateMonochrome()

Dönüş

IColorPalette

Monokrom görüntüler için renk paleti.

GetCloseImagePalette(RasterImage, int)

Raster görüntüden renk paletini alır (görüntüyü paletler) eğer görüntünün bir paleti yoksa. Eğer palet mevcutsa, hesaplamalar yerine kullanılacaktır.

public static IColorPalette GetCloseImagePalette(RasterImage image, int entriesCount)

Parametreler

image RasterImage

Raster görüntü.

entriesCount int

İstenilen giriş sayısı.

Dönüş

IColorPalette

image‘den en sık kullanılan renklerle başlayan ve entriesCount girişini içeren renk paleti.

Örnekler

Aşağıdaki örnek, bir BMP görüntüsünü yükler ve çeşitli kaydetme seçenekleri kullanarak geri kaydeder.```csharp [C#]

                                                                                                   string dir = "c:\\temp\\";

                                                                                                   using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dir + "sample.bmp"))
                                                                                                   {
                                                                                                       Aspose.Imaging.RasterImage rasterImage = (Aspose.Imaging.RasterImage)image;

                                                                                                       // BmpOptions oluştur
                                                                                                       Aspose.Imaging.ImageOptions.BmpOptions saveOptions = new Aspose.Imaging.ImageOptions.BmpOptions();

                                                                                                       // Çıktı görüntüsünün boyutunu azaltmak için piksel başına 8 bit kullanın.
                                                                                                       saveOptions.BitsPerPixel = 8;

                                                                                                       // Paletli bir görüntü ile paletsiz görüntü arasında görsel olarak ayırt edilemeyecek şekilde
                                                                                                       // görüntü piksellerinin maksimum sayısını kapsayan en yakın 8 bit renk paletini ayarlayın.
                                                                                                       saveOptions.Palette = Aspose.Imaging.ColorPaletteHelper.GetCloseImagePalette(rasterImage, 256);

                                                                                                       // Sıkıştırma olmadan kaydedin.
                                                                                                       // Çıktı görüntüsünün boyutunu azaltmak için RLE-8 sıkıştırmasını da kullanabilirsiniz.
                                                                                                       saveOptions.Compression = Aspose.Imaging.FileFormats.Bmp.BitmapCompression.Rgb;

                                                                                                       // Yatay ve dikey çözünürlüğü 96 dpi olarak ayarlayın.
                                                                                                       saveOptions.ResolutionSettings = new Aspose.Imaging.ResolutionSetting(96.0, 96.0);

                                                                                                       image.Save(dir + "sample.bmpoptions.bmp", saveOptions);
                                                                                                   }

Aşağıdaki örnek, bir BMP görüntüsünü paletleyerek çıktı boyutunu azaltmanın nasıl yapılacağını gösterir.```csharp
[C#]

                                                                                              // 100 x 100 px boyutunda bir BMP görüntüsü oluşturun.
                                                                                              using (Aspose.Imaging.FileFormats.Bmp.BmpImage bmpImage = new Aspose.Imaging.FileFormats.Bmp.BmpImage(100, 100))
                                                                                              {
                                                                                                  // Görüntünün sol üst köşesinden sağ alt köşesine doğru lineer gradyan.
                                                                                                  Aspose.Imaging.Brushes.LinearGradientBrush brush =
                                                                                                      new Aspose.Imaging.Brushes.LinearGradientBrush(
                                                                                                          new Aspose.Imaging.Point(0, 0),
                                                                                                          new Aspose.Imaging.Point(bmpImage.Width, bmpImage.Height),
                                                                                                          Aspose.Imaging.Color.Red,
                                                                                                          Aspose.Imaging.Color.Green);

                                                                                                  // Tüm görüntüyü lineer gradyan fırçası ile doldurun.
                                                                                                  Aspose.Imaging.Graphics gr = new Aspose.Imaging.Graphics(bmpImage);
                                                                                                  gr.FillRectangle(brush, bmpImage.Bounds);

                                                                                                  // Mümkün olduğunca çok pikseli kapsayan en yakın 8 bit renk paletini alın, böylece paletli bir görüntü
                                                                                                  // paletsiz olanından görsel olarak ayırt edilemez.
                                                                                                  Aspose.Imaging.IColorPalette palette = Aspose.Imaging.ColorPaletteHelper.GetCloseImagePalette(bmpImage, 256);

                                                                                                  // 8 bit palet en fazla 256 renk içerir.
                                                                                                  Aspose.Imaging.ImageOptions.BmpOptions saveOptions = new Aspose.Imaging.ImageOptions.BmpOptions();
                                                                                                  saveOptions.Palette = palette;
                                                                                                  saveOptions.BitsPerPixel = 8;

                                                                                                  using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
                                                                                                  {
                                                                                                      bmpImage.Save(stream, saveOptions);
                                                                                                      System.Console.WriteLine("Paletli görüntü boyutu {0} bayttır.", stream.Length);
                                                                                                  }

                                                                                                  using (System.IO.MemoryStream stream = new System.IO.MemoryStream())
                                                                                                  {
                                                                                                      bmpImage.Save(stream);
                                                                                                      System.Console.WriteLine("Paletsiz görüntü boyutu {0} bayttır.", stream.Length);
                                                                                                  }
                                                                                              }

                                                                                              // Çıktı şöyle görünür:
                                                                                              // Paletli görüntü boyutu 11078 bayttır.
                                                                                              // Paletsiz görüntü boyutu 40054 bayttır.

GetCloseImagePalette(RasterImage, int, PaletteMiningMethod)

Raster görüntüden renk paletini alır (görüntüyü paletler) eğer görüntünün bir paleti yoksa. Palet, daha iyi indekslenmiş görüntü kalitesi için optimize edilecektir veya PaletteMiningMethod.UseCurrentPalette kullanıldığında “AS IS” alınacaktır.

public static IColorPalette GetCloseImagePalette(RasterImage image, int entriesCount, PaletteMiningMethod paletteMiningMethod)

Parametreler

image RasterImage

Raster görüntü.

entriesCount int

İstenilen giriş sayısı.

paletteMiningMethod PaletteMiningMethod

Palet madenciliği yöntemi.

Dönüş

IColorPalette

image‘den en sık kullanılan renklerle başlayan ve entriesCount girişini içeren renk paleti.

Örnekler

Aşağıdaki örnek, en iyi uyumlu palet ile indekslenmiş renk kullanarak bir PNG görüntüsünü sıkıştırmanın nasıl yapılacağını gösterir.```csharp [C#]

                                                                                                         // png görüntüsünü yükler        
                                                                                                             string  sourceFilePath="OriginalRings.png";
                                                                                                             string  outputFilePath="OriginalRingsOutput.png";
                                                                                                             using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(sourceFilePath))
                                                                                                         {
                                                                                                             image.Save(outputFilePath, new Aspose.Imaging.ImageOptions.PngOptions()
                                                                                                             {
                                                                                                                  Progressive = true,
                                                                                                                      // İndekslenmiş renk türünü kullan
                                                                                                                  ColorType = Aspose.Imaging.FileFormats.Png.PngColorType.IndexedColor,
                                                                                                                      // Maksimum sıkıştırmayı kullan
                                                                                                                  CompressionLevel = 9,
                                                                                                               // Mümkün olduğunca çok pikseli kapsayan en yakın 8 bit renk paletini al, böylece paletli bir görüntü
                                                                                                                  // paletsiz olanından görsel olarak ayırt edilemez.
                                                                                                                  Palette = Aspose.Imaging.ColorPaletteHelper.GetCloseImagePalette((Aspose.Imaging.RasterImage)image, 256, Aspose.Imaging.PaletteMiningMethod.Histogram)
                                                                                                             });
                                                                                                         }
                                                                                                             // Çıktı dosya boyutu önemli ölçüde azaltılmalıdır

### <a id="Aspose_Imaging_ColorPaletteHelper_GetCloseImagePalette_Aspose_Imaging_RasterImage_Aspose_Imaging_Rectangle_System_Int32_"></a> GetCloseImagePalette\(RasterImage, Rectangle, int\)

Raster görüntüden renk paletini alır (görüntüyü paletler) eğer görüntünün bir paleti yoksa. Eğer palet mevcutsa, hesaplamalar yerine kullanılacaktır.

```csharp
public static IColorPalette GetCloseImagePalette(RasterImage image, Rectangle destBounds, int entriesCount)

Parametreler

image RasterImage

Raster görüntü.

destBounds Rectangle

Hedef görüntü sınırları.

entriesCount int

İstenilen giriş sayısı.

Dönüş

IColorPalette

image‘den en sık kullanılan renklerle başlayan ve entriesCount girişini içeren renk paleti.

GetCloseImagePalette(RasterImage, Rectangle, int, bool)

Raster görüntüden renk paletini alır (görüntüyü paletler) eğer görüntünün bir paleti yoksa. Eğer palet mevcutsa, hesaplamalar yerine kullanılacaktır.

public static IColorPalette GetCloseImagePalette(RasterImage image, Rectangle destBounds, int entriesCount, bool useImagePalette)

Parametreler

image RasterImage

Raster görüntü.

destBounds Rectangle

Hedef görüntü sınırları.

entriesCount int

İstenilen giriş sayısı.

useImagePalette bool

Eğer ayarlanırsa, mevcutsa kendi görüntü paletini kullanacaktır.

Dönüş

IColorPalette

image‘den en sık kullanılan renklerle başlayan ve entriesCount girişini içeren renk paleti.

GetCloseImagePalette(RasterImage, Rectangle, int, bool, Color)

Raster görüntüden renk paletini alır (görüntüyü paletler) eğer görüntünün bir paleti yoksa. Eğer palet mevcutsa, hesaplamalar yerine kullanılacaktır.

public static IColorPalette GetCloseImagePalette(RasterImage image, Rectangle destBounds, int entriesCount, bool useImagePalette, Color alphaBlendInColor)

Parametreler

image RasterImage

Raster görüntü.

destBounds Rectangle

Hedef görüntü sınırları.

entriesCount int

İstenilen giriş sayısı.

useImagePalette bool

Eğer ayarlanırsa, mevcutsa kendi görüntü paletini kullanacaktır.

alphaBlendInColor Color

Yarı saydam alfa yerine geçişi için arka plan rengi olarak kullanılacak renk.

Dönüş

IColorPalette

image‘den en sık kullanılan renklerle başlayan ve entriesCount girişini içeren renk paleti.

GetCloseImagePalette(RasterImage, Rectangle, int, bool, Color, bool)

Raster görüntüden renk paletini alır (görüntüyü paletler) eğer görüntünün bir paleti yoksa. Eğer palet mevcutsa, hesaplamalar yerine kullanılacaktır.

public static IColorPalette GetCloseImagePalette(RasterImage image, Rectangle destBounds, int entriesCount, bool useImagePalette, Color alphaBlendInColor, bool keepTransparency)

Parametreler

image RasterImage

Raster görüntü.

destBounds Rectangle

Hedef görüntü sınırları.

entriesCount int

İstenilen giriş sayısı.

useImagePalette bool

Eğer ayarlanırsa, mevcutsa kendi görüntü paletini kullanacaktır.

alphaBlendInColor Color

Yarı saydam alfa yerine geçişi için arka plan rengi olarak kullanılacak renk.

keepTransparency bool

Eğer ayarlanırsa, görüntü renklerinin alfa kanal bitlerini dikkate alacaktır.

Dönüş

IColorPalette

image‘den en sık kullanılan renklerle başlayan ve entriesCount girişini içeren renk paleti.

GetCloseTransparentImagePalette(RasterImage, int)

Raster görüntüden renk paletini alır (görüntüyü paletler) eğer görüntünün bir paleti yoksa. Eğer palet mevcutsa, hesaplamalar yerine kullanılacaktır.

public static IColorPalette GetCloseTransparentImagePalette(RasterImage image, int entriesCount)

Parametreler

image RasterImage

Raster görüntü.

entriesCount int

İstenilen giriş sayısı.

Dönüş

IColorPalette

image‘den en sık kullanılan renklerle başlayan ve entriesCount girişini içeren renk paleti.

GetDownscalePalette(RasterImage)

Başlangıç görüntüsünün renk değerlerinin üst bitlerinden oluşan 256 renk paletini alır.

public static ColorPalette GetDownscalePalette(RasterImage image)

Parametreler

image RasterImage

Görüntü.

Dönüş

ColorPalette

Aspose.Imaging.ColorPalette.

GetUniformColorPalette(RasterImage)

Uniform 256 renk paletini alır.

public static ColorPalette GetUniformColorPalette(RasterImage image)

Parametreler

image RasterImage

Görüntü.

Dönüş

ColorPalette

Aspose.Imaging.ColorPalette.

HasTransparentColors(IColorPalette)

Belirtilen paletin saydam renkleri olup olmadığını belirler.

public static bool HasTransparentColors(IColorPalette palette)

Parametreler

palette IColorPalette

Palet.

Dönüş

bool

cstrue</code> eğer belirtilen palet saydam renkler içeriyorsa; aksi takdirde csfalse.

İstisnalar

ArgumentNullException

palette null.

 Türkçe