Unit BGRAPalette

📄 Source code

Description

Palette of colors for various purposes, loading/saving into various formats

Uses

Overview

Structures

Name Description
Class TBGRA16BitPalette Palette containing all possible 16-bit colors.
Class TBGRAAvgLvlPalette Abstract implementation of a BGRA palette using a binary tree.
Class TBGRACustomApproxPalette Abstract palette that can find an approximate matching color
Class TBGRACustomColorQuantizer Abstract class for color quantization.
Class TBGRACustomPalette Abstract class containing a palette
Class TBGRAIndexedPalette Indexed palette of colors
Packed Record TBGRAIndexedPaletteEntry Indexed color in palette
Class TBGRAPalette Palette of colors, roughly sorted by luminosity
Class TBGRAReferencePalette Palette of colors indirectly specify by a pointer
Class TBGRAWeightedPalette Palette of weighted colors.
Packed Record TBGRAWeightedPaletteEntry Weighted color in palette

Functions and Procedures

procedure ArrayOfTBGRAPixel_InsertionSort(AColors: ArrayOfTBGRAPixel; AMinIndex, AMaxIndex: Int32or64; AComparer: TBGRAPixelComparer = nil);
procedure ArrayOfTBGRAPixel_QuickSort(AColors: ArrayOfTBGRAPixel; AMinIndex, AMaxIndex: Int32or64; AComparer: TBGRAPixelComparer = nil);
procedure ArrayOfWeightedColor_InsertionSort(AColors: ArrayOfWeightedColor; AMinIndex, AMaxIndex: Int32or64; AComparer: TBGRAPixelComparer = nil);
procedure ArrayOfWeightedColor_QuickSort(AColors: ArrayOfWeightedColor; AMinIndex, AMaxIndex: Int32or64; AComparer: TBGRAPixelComparer = nil);
function BGRARegisteredPaletteFormatFilter(AAllSupportedDescription: string) : string;
procedure BGRARegisterPaletteFormat(AFormatIndex: TBGRAPaletteFormat; AExtension: string; ADescription: string; AReadProc: TPaletteReaderProc; AWriteProc: TPaletteWriterProc; ACheckFormatProc: TCheckPaletteFormatProc);
function BGRARequiredBitDepth(ABitmap: TBGRACustomBitmap; AAlpha: TAlphaChannelPaletteOption): integer; overload;
function BGRARequiredBitDepth(APalette: TBGRACustomPalette): integer; overload;

Types

ArrayOfWeightedColor = array of TBGRAWeightedPaletteEntry;
PBGRAIndexedPaletteEntry = ˆTBGRAIndexedPaletteEntry;
PBGRAWeightedPaletteEntry = ˆTBGRAWeightedPaletteEntry;
TBGRAColorQuantizerAny = class of TBGRACustomColorQuantizer;
TBGRAPaletteFormat = integer;
TBGRAPixelComparer = function (p1,p2 : PBGRAPixel): boolean;
TCheckPaletteFormatProc = function(ABuf256: string): boolean;
TPaletteReaderProc = function(APalette: TBGRAPalette; AStream: TStream): boolean;
TPaletteWriterProc = procedure(APalette: TBGRAPalette; AStream: TStream);

Constants

MaxLastAddedColors = 10;
palAdobeSwatchExchange : TBGRAPaletteFormat = 3;
palCustom : TBGRAPaletteFormat = 100;
palGimp : TBGRAPaletteFormat = 2;
palJascPSP : TBGRAPaletteFormat = 5;
palKOffice : TBGRAPaletteFormat = 4;
palPaintDotNet : TBGRAPaletteFormat = 1;
palUnknown : TBGRAPaletteFormat = 0;

Variables

BGRAColorQuantizerFactory: TBGRAColorQuantizerAny;

Description

Functions and Procedures

procedure ArrayOfTBGRAPixel_InsertionSort(AColors: ArrayOfTBGRAPixel; AMinIndex, AMaxIndex: Int32or64; AComparer: TBGRAPixelComparer = nil);

This item has no description.

procedure ArrayOfTBGRAPixel_QuickSort(AColors: ArrayOfTBGRAPixel; AMinIndex, AMaxIndex: Int32or64; AComparer: TBGRAPixelComparer = nil);

This item has no description.

procedure ArrayOfWeightedColor_InsertionSort(AColors: ArrayOfWeightedColor; AMinIndex, AMaxIndex: Int32or64; AComparer: TBGRAPixelComparer = nil);

This item has no description.

procedure ArrayOfWeightedColor_QuickSort(AColors: ArrayOfWeightedColor; AMinIndex, AMaxIndex: Int32or64; AComparer: TBGRAPixelComparer = nil);

This item has no description.

function BGRARegisteredPaletteFormatFilter(AAllSupportedDescription: string) : string;

This item has no description.

procedure BGRARegisterPaletteFormat(AFormatIndex: TBGRAPaletteFormat; AExtension: string; ADescription: string; AReadProc: TPaletteReaderProc; AWriteProc: TPaletteWriterProc; ACheckFormatProc: TCheckPaletteFormatProc);

This item has no description.

function BGRARequiredBitDepth(ABitmap: TBGRACustomBitmap; AAlpha: TAlphaChannelPaletteOption): integer; overload;

This item has no description.

function BGRARequiredBitDepth(APalette: TBGRACustomPalette): integer; overload;

This item has no description.

Types

ArrayOfWeightedColor = array of TBGRAWeightedPaletteEntry;

This item has no description.

PBGRAIndexedPaletteEntry = ˆTBGRAIndexedPaletteEntry;

This item has no description.

PBGRAWeightedPaletteEntry = ˆTBGRAWeightedPaletteEntry;

This item has no description.

TBGRAColorQuantizerAny = class of TBGRACustomColorQuantizer;

This item has no description.

TBGRAPaletteFormat = integer;

This item has no description.

TBGRAPixelComparer = function (p1,p2 : PBGRAPixel): boolean;

This item has no description.

TCheckPaletteFormatProc = function(ABuf256: string): boolean;

This item has no description.

TPaletteReaderProc = function(APalette: TBGRAPalette; AStream: TStream): boolean;

This item has no description.

TPaletteWriterProc = procedure(APalette: TBGRAPalette; AStream: TStream);

This item has no description.

Constants

MaxLastAddedColors = 10;

This item has no description.

palAdobeSwatchExchange : TBGRAPaletteFormat = 3;

This item has no description.

palCustom : TBGRAPaletteFormat = 100;

This item has no description.

palGimp : TBGRAPaletteFormat = 2;

This item has no description.

palJascPSP : TBGRAPaletteFormat = 5;

This item has no description.

palKOffice : TBGRAPaletteFormat = 4;

This item has no description.

palPaintDotNet : TBGRAPaletteFormat = 1;

This item has no description.

palUnknown : TBGRAPaletteFormat = 0;

This item has no description.

Variables

BGRAColorQuantizerFactory: TBGRAColorQuantizerAny;

This item has no description.