|
Krita Source Code Documentation
|
#include <KoColorSpace.h>
Inheritance diagram for KoColorSpace:Classes | |
| struct | ThreadLocalCache |
Public Member Functions | |
| virtual void | addCompositeOp (const KoCompositeOp *op) |
| virtual void | addDitherOp (KisDitherOp *op) |
| virtual quint32 | alphaPos () const =0 |
| virtual void | applyAlphaNormedFloatMask (quint8 *pixels, const float *alpha, qint32 nPixels) const =0 |
| virtual void | applyAlphaU8Mask (quint8 *pixels, const quint8 *alpha, qint32 nPixels) const =0 |
| virtual void | applyInverseAlphaU8Mask (quint8 *pixels, const quint8 *alpha, qint32 nPixels) const =0 |
| virtual void | applyInverseNormedFloatMask (quint8 *pixels, const float *alpha, qint32 nPixels) const =0 |
| virtual void | bitBlt (const KoColorSpace *srcSpace, const KoCompositeOp::ParameterInfo ¶ms, const KoCompositeOp *op, KoColorConversionTransformation::Intent renderingIntent, KoColorConversionTransformation::ConversionFlags conversionFlags) const |
| virtual quint32 | channelCount () const =0 |
| QBitArray | channelFlags (bool color=true, bool alpha=false) const |
| QList< KoChannelInfo * > | channels () const |
| virtual QString | channelValueText (const quint8 *pixel, quint32 channelIndex) const =0 |
| virtual quint32 | colorChannelCount () const =0 |
| virtual KoID | colorDepthId () const =0 |
| virtual void | colorFromXML (quint8 *pixel, const QDomElement &elt) const =0 |
| virtual KoID | colorModelId () const =0 |
| virtual void | colorToXML (const quint8 *pixel, QDomDocument &doc, QDomElement &colorElt) const =0 |
| const KoCompositeOp * | compositeOp (const QString &id, const KoColorSpace *srcSpace=nullptr) const |
| virtual QList< KoCompositeOp * > | compositeOps () const |
| virtual void | convertChannelToVisualRepresentation (const quint8 *src, quint8 *dst, quint32 nPixels, const QBitArray selectedChannels) const =0 |
| virtual void | convertChannelToVisualRepresentation (const quint8 *src, quint8 *dst, quint32 nPixels, const qint32 selectedChannelIndex) const =0 |
| virtual bool | convertPixelsTo (const quint8 *src, quint8 *dst, const KoColorSpace *dstColorSpace, quint32 numPixels, KoColorConversionTransformation::Intent renderingIntent, KoColorConversionTransformation::ConversionFlags conversionFlags) const |
| virtual QImage | convertToQImage (const quint8 *data, qint32 width, qint32 height, const KoColorProfile *dstProfile, KoColorConversionTransformation::Intent renderingIntent, KoColorConversionTransformation::ConversionFlags conversionFlags) const |
| virtual KoConvolutionOp * | convolutionOp () const |
| virtual void | copyOpacityU8 (quint8 *src, quint8 *dst, qint32 nPixels) const =0 |
| virtual KoColorTransformation * | createBrightnessContrastAdjustment (const quint16 *transferValues) const =0 |
| virtual KoColorConversionTransformation * | createColorConverter (const KoColorSpace *dstColorSpace, KoColorConversionTransformation::Intent renderingIntent, KoColorConversionTransformation::ConversionFlags conversionFlags) const |
| KoColorTransformation * | createColorTransformation (const QString &id, const QHash< QString, QVariant > ¶meters) const |
| virtual KoColorTransformation * | createDarkenAdjustment (qint32 shade, bool compensate, qreal compensation) const =0 |
| virtual KoColorTransformation * | createInvertTransformation () const =0 |
| virtual KoColorTransformation * | createPerChannelAdjustment (const quint16 *const *transferValues) const =0 |
| virtual KoColorConversionTransformation * | createProofingTransform (const KoColorSpace *dstColorSpace, const KoColorSpace *proofingSpace, KoColorConversionTransformation::Intent renderingIntent, KoColorConversionTransformation::Intent proofingIntent, bool bpcFirstTransform, quint8 *gamutWarning, KoColorConversionTransformation::ConversionFlags displayConversionFlags) const |
| createProofingTransform Create a proofing transform. This is a two part transform that can also do gamut checks. The first transform is from source -> proofing space. Here the gamut checks are performed. The second is the proofing to destination space. | |
| virtual void | decreaseHue (quint8 *pixel, qreal step) const |
| virtual void | decreaseLuminosity (quint8 *pixel, qreal step) const |
| virtual void | decreaseSaturation (quint8 *pixel, qreal step) const |
| virtual quint8 | difference (const quint8 *src1, const quint8 *src2) const =0 |
| virtual quint8 | differenceA (const quint8 *src1, const quint8 *src2) const =0 |
| virtual const KisDitherOp * | ditherOp (const QString &depth, DitherType type) const |
| QPolygonF | estimatedTRCXYY () const |
| virtual void | fillGrayBrushWithColor (quint8 *dst, const QRgb *brush, quint8 *brushColor, qint32 nPixels) const =0 |
| virtual void | fillGrayBrushWithColorAndLightnessOverlay (quint8 *dst, const QRgb *brush, quint8 *brushColor, qint32 nPixels) const |
| virtual void | fillGrayBrushWithColorAndLightnessWithStrength (quint8 *dst, const QRgb *brush, quint8 *brushColor, qreal strength, qint32 nPixels) const |
| virtual void | fillInverseAlphaNormedFloatMaskWithColor (quint8 *pixels, const float *alpha, const quint8 *brushColor, qint32 nPixels) const =0 |
| virtual QVector< double > | fromHSY (qreal *hue, qreal *sat, qreal *luma) const =0 |
| virtual void | fromLabA16 (const quint8 *src, quint8 *dst, quint32 nPixels) const |
| virtual void | fromNormalisedChannelsValue (quint8 *pixel, const QVector< float > &values) const =0 |
| virtual void | fromQColor (const QColor &color, quint8 *dst) const =0 |
| virtual void | fromRgbA16 (const quint8 *src, quint8 *dst, quint32 nPixels) const |
| virtual QVector< double > | fromYUV (qreal *y, qreal *u, qreal *v) const =0 |
| QPolygonF | gamutXYY () const |
| virtual bool | hasCompositeOp (const QString &id, const KoColorSpace *srcSpace=nullptr) const |
| virtual bool | hasHighDynamicRange () const =0 |
| QString | id () const |
| virtual void | increaseBlue (quint8 *pixel, qreal step) const |
| virtual void | increaseGreen (quint8 *pixel, qreal step) const |
| virtual void | increaseHue (quint8 *pixel, qreal step) const |
| virtual void | increaseLuminosity (quint8 *pixel, qreal step) const |
| virtual void | increaseRed (quint8 *pixel, qreal step) const |
| virtual void | increaseSaturation (quint8 *pixel, qreal step) const |
| virtual void | increaseYellow (quint8 *pixel, qreal step) const |
| virtual quint8 | intensity8 (const quint8 *src) const =0 |
| virtual qreal | intensityF (const quint8 *src) const =0 |
| KoColorSpace (const QString &id, const QString &name, KoMixColorsOp *mixColorsOp, KoConvolutionOp *convolutionOp) | |
| Should be called by real color spaces. | |
| QVector< qreal > | lumaCoefficients () const |
| virtual KoMixColorsOp * | mixColorsOp () const |
| virtual void | modulateLightnessByGrayBrush (quint8 *dst, const QRgb *brush, qreal strength, qint32 nPixels) const |
| virtual void | multiplyAlpha (quint8 *pixels, quint8 alpha, qint32 nPixels) const =0 |
| QString | name () const |
| virtual void | normalisedChannelsValue (const quint8 *pixel, QVector< float > &channels) const =0 |
| virtual QString | normalisedChannelValueText (const quint8 *pixel, quint32 channelIndex) const =0 |
| virtual qreal | opacityF (const quint8 *pixel) const =0 |
| virtual quint8 | opacityU8 (const quint8 *pixel) const =0 |
| virtual bool | operator== (const KoColorSpace &rhs) const |
| virtual quint32 | pixelSize () const =0 |
| virtual const KoColorProfile * | profile () const =0 |
| virtual bool | profileIsCompatible (const KoColorProfile *profile) const =0 |
| virtual bool | proofPixelsTo (const quint8 *src, quint8 *dst, quint32 numPixels, KoColorConversionTransformation *proofingTransform) const |
| proofPixelsTo | |
| virtual quint8 | scaleToU8 (const quint8 *srcPixel, qint32 channelPos) const =0 |
| virtual void | setOpacity (quint8 *pixels, qreal alpha, qint32 nPixels) const =0 |
| virtual void | setOpacity (quint8 *pixels, quint8 alpha, qint32 nPixels) const =0 |
| virtual void | singleChannelPixel (quint8 *dstPixel, const quint8 *srcPixel, quint32 channelIndex) const =0 |
| virtual void | toHSY (const QVector< double > &channelValues, qreal *hue, qreal *sat, qreal *luma) const =0 |
| virtual void | toLabA16 (const quint8 *src, quint8 *dst, quint32 nPixels) const |
| virtual void | toQColor (const quint8 *src, QColor *c) const =0 |
| virtual void | toQColor16 (const quint8 *src, QColor *c) const =0 |
| virtual void | toRgbA16 (const quint8 *src, quint8 *dst, quint32 nPixels) const |
| virtual void | toYUV (const QVector< double > &channelValues, qreal *y, qreal *u, qreal *v) const =0 |
| virtual void | transparentColor (quint8 *dst, quint32 nPixels) const |
| virtual bool | willDegrade (ColorSpaceIndependence independence) const =0 |
Public Member Functions inherited from Private | |
| Private (KisCanvas2 *c) | |
Public Attributes | |
| ThreadLocalCache | channelFlagsApplicationCache |
| QList< KoChannelInfo * > | channels |
| QVector< qreal > | colorants |
| QHash< QString, KoCompositeOp * > | compositeOps |
| ThreadLocalCache | conversionCache |
| KoConvolutionOp * | convolutionOp |
| Deletability | deletability |
| QHash< QString, QMap< DitherType, KisDitherOp * > > | ditherOps |
| QPolygonF | gamutXYY |
| KoColorSpaceEngine * | iccEngine |
| QString | id |
| quint32 | idNumber |
| QVector< qreal > | lumaCoefficients |
| KoMixColorsOp * | mixColorsOp |
| QString | name |
| KoColorConversionTransformation * | transfoFromLABA16 |
| KoColorConversionTransformation * | transfoFromRGBA16 |
| KoColorConversionTransformation * | transfoToLABA16 |
| KoColorConversionTransformation * | transfoToRGBA16 |
| QPolygonF | TRCXYY |
Public Attributes inherited from Private | |
| KisCanvas2 * | canvas |
| int | displayedFrame |
| int | intendedFrame |
Protected Member Functions | |
| virtual void | addChannel (KoChannelInfo *ci) |
| const KoColorConversionTransformation * | fromLabA16Converter () const |
| const KoColorConversionTransformation * | fromRgbA16Converter () const |
| KoColorSpace () | |
| Only for use by classes that serve as baseclass for real color spaces. | |
| virtual bool | preferCompositionInSourceColorSpace () const |
| const KoColorConversionTransformation * | toLabA16Converter () const |
| const KoColorConversionTransformation * | toRgbA16Converter () const |
| virtual | ~KoColorSpace () |
Protected Attributes | |
| Private *const | d |
Friends | |
| class | KoColorSpaceFactory |
| class | KoColorSpaceRegistry |
A KoColorSpace is the definition of a certain color space.
A color model and a color space are two related concepts. A color model is more general in that it describes the channels involved and how they in broad terms combine to describe a color. Examples are RGB, HSV, CMYK.
A color space is more specific in that it also describes exactly how the channels are combined. So for each color model there can be a number of specific color spaces. So RGB is the model and sRGB, adobeRGB, etc are colorspaces.
In Pigment KoColorSpace acts as both a color model and a color space. You can think of the class definition as the color model, but the instance of the class as representing a colorspace.
A third concept is the profile represented by KoColorProfile. It represents the info needed to specialize a color model into a color space.
KoColorSpace is an abstract class serving as an interface.
Subclasses implement actual color spaces Some subclasses implement only some parts and are named Traits
Definition at line 77 of file KoColorSpace.h.
|
protected |
Only for use by classes that serve as baseclass for real color spaces.
Definition at line 39 of file KoColorSpace.cpp.
| KoColorSpace::KoColorSpace | ( | const QString & | id, |
| const QString & | name, | ||
| KoMixColorsOp * | mixColorsOp, | ||
| KoConvolutionOp * | convolutionOp ) |
Should be called by real color spaces.
Definition at line 44 of file KoColorSpace.cpp.
References convolutionOp, d, id, mixColorsOp, name, NotOwnedByRegistry, and qHash().
|
protectedvirtual |
Definition at line 64 of file KoColorSpace.cpp.
References KoColorSpaceRegistry::colorConversionCache, KoColorConversionCache::colorSpaceIsDestroyed(), d, KoColorSpaceRegistry::instance(), NotOwnedByRegistry, and OwnedByRegistryDoNotDelete.
|
protectedvirtual |
Use this function in the constructor of your colorspace to add the information about a channel.
| ci | a pointer to the information about a channel |
Definition at line 312 of file KoColorSpace.cpp.
References d.
|
virtual |
add a composite op to this colorspace.
Definition at line 388 of file KoColorSpace.cpp.
References KoCompositeOp::colorSpace, d, id, and KoCompositeOp::id.
|
virtual |
Definition at line 355 of file KoColorSpace.cpp.
References colorDepthId(), d, KisDitherOp::destinationDepthId(), KoID::id(), KisDitherOp::sourceDepthId(), and KisDitherOp::type().
|
pure virtual |
Position of the alpha channel in a pixel
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
Applies the specified float alpha mask to the pixels. We assume that there are just as many alpha values as pixels but we do not check this; alpha values have to be between 0.0 and 1.0
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
Applies the specified 8-bit alpha mask to the pixels. We assume that there are just as many alpha values as pixels but we do not check this; the alpha values are assumed to be 8-bits.
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
Applies the inverted 8-bit alpha mask to the pixels. We assume that there are just as many alpha values as pixels but we do not check this; the alpha values are assumed to be 8-bits.
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
Applies the inverted specified float alpha mask to the pixels. We assume that there are just as many alpha values as pixels but we do not check this; alpha values have to be between 0.0 and 1.0
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
virtual |
Compose two arrays of pixels together. If source and target are not the same color model, the source pixels will be converted to the target model. We're "dst" – "dst" pixels are always in this colorspace.
| srcSpace | the colorspace of the source pixels that will be composited onto "us" |
| params | the information needed for blitting e.g. the source and destination pixel data, the opacity and flow, ... |
| op | the composition operator instance to use, e.g. COPY_OVER. This operator must belong to this (dst) color space, UNLESS preferCompositionInSourceColorSpace() returns true. In this case, the operator should be from the source color space. Besides avoiding recurring lookups via compositeOp(), this is necessary if this color space does not implement the desired composite op, but srcPace does. Use compositeOp() with valid srcSpace to get the appropriate op. |
| renderingIntent | the rendering intent |
| conversionFlags | the conversion flags. |
Definition at line 499 of file KoColorSpace.cpp.
References alphaPos(), channelFlags(), KoCompositeOp::ParameterInfo::channelFlags, KoCompositeOp::colorSpace, KoCompositeOp::ParameterInfo::cols, KoCompositeOp::composite(), compositeOp(), conversionCache, convertChannelToVisualRepresentation(), convertPixelsTo(), d, KoCompositeOp::ParameterInfo::dstRowStart, KoCompositeOp::ParameterInfo::dstRowStride, hasCompositeOp(), id, KoCompositeOp::id, KoColorProfile::name, name, pixelSize(), preferCompositionInSourceColorSpace(), profile(), KoCompositeOp::ParameterInfo::rows, KoCompositeOp::ParameterInfo::srcRowStart, and KoCompositeOp::ParameterInfo::srcRowStride.
|
pure virtual |
The total number of channels for a single pixel in this color model
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
| QBitArray KoColorSpace::channelFlags | ( | bool | color = true, |
| bool | alpha = false ) const |
returns a QBitArray that contains true for the specified channel types:
| color | if true, set all color channels to true |
| alpha | if true, set all alpha channels to true |
The order of channels is the colorspace descriptive order, not the pixel order.
Definition at line 298 of file KoColorSpace.cpp.
References KoChannelInfo::ALPHA, KoChannelInfo::channelType(), KoChannelInfo::COLOR, and d.
| QList< KoChannelInfo * > KoColorSpace::channels | ( | ) | const |
Return a list describing all the channels this color model has. The order of the channels in the list is the order of channels in the pixel. To find out the preferred display position, use KoChannelInfo::displayPosition.
|
pure virtual |
Return a string with the channel's value suitable for display in the gui.
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
The total number of color channels (excludes alpha) for a single pixel in this color model.
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, CmykF32ColorSpace, CmykU16ColorSpace, CmykU8ColorSpace, GrayF16ColorSpace, GrayF32ColorSpace, GrayAU16ColorSpace, GrayAU8ColorSpace, LabF32ColorSpace, LabU16ColorSpace, LabU8ColorSpace, RgbF16ColorSpace, RgbF32ColorSpace, RgbU16ColorSpace, RgbU8ColorSpace, XyzF16ColorSpace, XyzF32ColorSpace, XyzU16ColorSpace, XyzU8ColorSpace, YCbCrF32ColorSpace, YCbCrU16ColorSpace, and YCbCrU8ColorSpace.
|
pure virtual |
Unserialize a color following Create's swatch color specification available at https://web.archive.org/web/20110826002520/http://create.freedesktop.org/wiki/Swatches_-_color_file_format/Draft
| pixel | buffer where the color will be unserialized |
| elt | the element to unserialize (<CMYK />, <sRGB />, <RGB />) |
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, CmykF32ColorSpace, CmykU16ColorSpace, CmykU8ColorSpace, GrayF16ColorSpace, GrayF32ColorSpace, GrayAU16ColorSpace, GrayAU8ColorSpace, LabF32ColorSpace, LabU16ColorSpace, LabU8ColorSpace, RgbF16ColorSpace, RgbF32ColorSpace, RgbU16ColorSpace, RgbU8ColorSpace, XyzF16ColorSpace, XyzF32ColorSpace, XyzU16ColorSpace, XyzU8ColorSpace, YCbCrF32ColorSpace, YCbCrU16ColorSpace, and YCbCrU8ColorSpace.
|
pure virtual |
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, CmykF32ColorSpace, CmykU16ColorSpace, CmykU8ColorSpace, GrayF16ColorSpace, GrayF32ColorSpace, GrayAU16ColorSpace, GrayAU8ColorSpace, LabF32ColorSpace, LabU16ColorSpace, LabU8ColorSpace, RgbF16ColorSpace, RgbF32ColorSpace, RgbU16ColorSpace, RgbU8ColorSpace, XyzF16ColorSpace, XyzF32ColorSpace, XyzU16ColorSpace, XyzU8ColorSpace, YCbCrF32ColorSpace, YCbCrU16ColorSpace, and YCbCrU8ColorSpace.
|
pure virtual |
Serialize this color following Create's swatch color specification available at https://web.archive.org/web/20110826002520/http://create.freedesktop.org/wiki/Swatches_-_color_file_format/Draft
This function doesn't create the <color /> element but rather the <CMYK />, <sRGB />, <RGB /> ... elements. It is assumed that colorElt is the <color /> element.
| pixel | buffer to serialized |
| colorElt | root element for the serialization, it is assumed that this element is <color /> |
| doc | is the document containing colorElt |
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, CmykF32ColorSpace, CmykU16ColorSpace, CmykU8ColorSpace, GrayF16ColorSpace, GrayF32ColorSpace, GrayAU16ColorSpace, GrayAU8ColorSpace, LabF32ColorSpace, LabU16ColorSpace, LabU8ColorSpace, RgbF16ColorSpace, RgbF32ColorSpace, RgbU16ColorSpace, RgbU8ColorSpace, XyzF16ColorSpace, XyzF32ColorSpace, XyzU16ColorSpace, XyzU8ColorSpace, YCbCrF32ColorSpace, YCbCrU16ColorSpace, and YCbCrU8ColorSpace.
| const KoCompositeOp * KoColorSpace::compositeOp | ( | const QString & | id, |
| const KoColorSpace * | srcSpace = nullptr ) const |
Retrieve a single composite op from the ones this colorspace offers. If the requested composite op does not exist, COMPOSITE_OVER is returned.
| srcSpace | optional source color space. Some color spaces prefer blitting in source color space. If already known, additional composite ops may be available. Note: if given, the returned op is only safe to use with this exact source color space! |
Definition at line 371 of file KoColorSpace.cpp.
References COMPOSITE_OVER, compositeOp(), d, preferCompositionInSourceColorSpace(), and warnPigment.
|
virtual |
Returns the list of user-visible composite ops supported by this colorspace.
|
pure virtual |
Convert nPixels pixels in src into their human-visible visual representation. The channels are shown as if other channels were null (or, if Lab, L = 1.0, *a = *b = 0.0).
Both buffers are in the same color space.
| src | source buffer in (*this) color space |
| dst | destination buffer in the same color space as src |
| nPixels | length of the buffers in number of pixels |
| pixelSize | stride of each pixel in the destination buffer |
| selectedChannels | Bitmap of selected channels |
Implemented in KoLabColorSpace, KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, KoColorSpaceAbstract< KoYCbCrU8Traits >, LabF32ColorSpace, LabU16ColorSpace, and LabU8ColorSpace.
|
pure virtual |
Convert nPixels pixels in src into their human-visible visual representation. The channel is shown as grayscale.
Both buffers are in the same color space.
| src | source buffer in (*this) color space |
| dst | destination buffer in the same color space as src |
| nPixels | length of the buffers in number of pixels |
| pixelSize | stride of each pixel in the destination buffer |
| selectedChannelIndex | Index of the selected channel. |
Implemented in KoLabColorSpace, KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, KoColorSpaceAbstract< KoYCbCrU8Traits >, LabF32ColorSpace, LabU16ColorSpace, and LabU8ColorSpace.
|
virtual |
Convert a byte array of srcLen pixels *src to the specified color space and put the converted bytes into the prepared byte array *dst.
Returns false if the conversion failed, true if it succeeded
This function is not thread-safe. If you want to apply multiple conversion in different threads at the same time, you need to create one color converter per-thread using createColorConverter.
Reimplemented in KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, and KoSimpleColorSpace< KoLabU16Traits >.
Definition at line 460 of file KoColorSpace.cpp.
References KoColorConversionCache::cachedConverter(), KoColorSpaceRegistry::colorConversionCache, KoColorSpaceRegistry::instance(), pixelSize(), KoColorConversionTransformation::transform(), and KoCachedColorConversionTransformation::transformation().
|
virtual |
Convert the pixels in data to (8-bit BGRA) QImage using the specified profiles.
| data | A pointer to a contiguous memory region containing width * height pixels |
| width | in pixels |
| height | in pixels |
| dstProfile | destination profile |
| renderingIntent | the rendering intent |
| conversionFlags | conversion flags |
Reimplemented in KoAlphaColorSpaceImpl< _CSTrait >.
Definition at line 856 of file KoColorSpace.cpp.
References convertPixelsTo(), KoColorSpaceRegistry::instance(), and KoColorSpaceRegistry::rgb8().
|
virtual |
|
pure virtual |
Copy the opacity of a run of pixels.
src – pixels to get opacity from. This is in the source colorspace. dst – pixels in Alpha8 colorspace to be assigned the opacity of src pixel nPixels – the number of pixels
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
Create an adjustment object for adjusting the brightness and contrast transferValues is a 256 bins array with values from 0 to 0xFFFF This function is thread-safe, but you need to create one KoColorTransformation per thread.
Implemented in KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, KoAlphaColorSpaceImpl< _CSTrait >, LcmsColorSpace< _CSTraits >, LcmsColorSpace< KoBgrU16Traits >, LcmsColorSpace< KoBgrU8Traits >, LcmsColorSpace< KoCmykF32Traits >, LcmsColorSpace< KoCmykU16Traits >, LcmsColorSpace< KoCmykU8Traits >, LcmsColorSpace< KoGrayF16Traits >, LcmsColorSpace< KoGrayF32Traits >, LcmsColorSpace< KoGrayU16Traits >, LcmsColorSpace< KoGrayU8Traits >, LcmsColorSpace< KoLabF32Traits >, LcmsColorSpace< KoLabU16Traits >, LcmsColorSpace< KoLabU8Traits >, LcmsColorSpace< KoRgbF16Traits >, LcmsColorSpace< KoRgbF32Traits >, LcmsColorSpace< KoXyzF16Traits >, LcmsColorSpace< KoXyzF32Traits >, LcmsColorSpace< KoXyzU16Traits >, LcmsColorSpace< KoXyzU8Traits >, LcmsColorSpace< KoYCbCrF32Traits >, LcmsColorSpace< KoYCbCrU16Traits >, and LcmsColorSpace< KoYCbCrU8Traits >.
|
virtual |
Create a color conversion transformation.
Definition at line 451 of file KoColorSpace.cpp.
References KoColorSpaceRegistry::createColorConverter(), and KoColorSpaceRegistry::instance().
| KoColorTransformation * KoColorSpace::createColorTransformation | ( | const QString & | id, |
| const QHash< QString, QVariant > & | parameters ) const |
Definition at line 589 of file KoColorSpace.cpp.
References colorDepthId(), colorModelId(), KoColorSpaceRegistry::createColorConverters(), KoColorTransformationFactory::createTransformation(), KoGenericRegistry< T >::get(), KoColorSpaceRegistry::instance(), KoColorTransformationFactoryRegistry::instance(), KoColorConversionTransformation::srcColorSpace, and KoColorTransformationFactory::supportedModels().
|
pure virtual |
Darken all color channels with the given amount. If compensate is true, the compensation factor will be used to limit the darkening.
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, KoColorSpaceAbstract< KoYCbCrU8Traits >, KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, and KoSimpleColorSpace< KoLabU16Traits >.
|
pure virtual |
Invert color channels of the given pixels This function is thread-safe, but you need to create one KoColorTransformation per thread.
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
Create an adjustment object for adjusting individual channels transferValues is an array of colorChannelCount number of 256 bins array with values from 0 to 0xFFFF This function is thread-safe, but you need to create one KoColorTransformation per thread.
The layout of the channels must be the following:
0..N-2 - color channels of the pixel; N-1 - alpha channel of the pixel (if exists)
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, LcmsColorSpace< _CSTraits >, LcmsColorSpace< KoBgrU16Traits >, LcmsColorSpace< KoBgrU8Traits >, LcmsColorSpace< KoCmykF32Traits >, LcmsColorSpace< KoCmykU16Traits >, LcmsColorSpace< KoCmykU8Traits >, LcmsColorSpace< KoGrayF16Traits >, LcmsColorSpace< KoGrayF32Traits >, LcmsColorSpace< KoGrayU16Traits >, LcmsColorSpace< KoGrayU8Traits >, LcmsColorSpace< KoLabF32Traits >, LcmsColorSpace< KoLabU16Traits >, LcmsColorSpace< KoLabU8Traits >, LcmsColorSpace< KoRgbF16Traits >, LcmsColorSpace< KoRgbF32Traits >, LcmsColorSpace< KoXyzF16Traits >, LcmsColorSpace< KoXyzF32Traits >, LcmsColorSpace< KoXyzU16Traits >, LcmsColorSpace< KoXyzU8Traits >, LcmsColorSpace< KoYCbCrF32Traits >, LcmsColorSpace< KoYCbCrU16Traits >, and LcmsColorSpace< KoYCbCrU8Traits >.
|
virtual |
createProofingTransform Create a proofing transform. This is a two part transform that can also do gamut checks. The first transform is from source -> proofing space. Here the gamut checks are performed. The second is the proofing to destination space.
| dstColorSpace | – destination space, typically the display profile. |
| proofingSpace | – space to proof to. |
| renderingIntent | – rendering intent for the first transform. |
| proofingIntent | – rendering intent for the second transform. |
| bcpFirstTransform | – whether the first transform should use blackpoint compensation. All other flags are handled by displayFlags. |
| gamutWarning | – The color of the gamut warning in dstColorSpace. Gamut warnings require Gamut warning flag being set on display flags. |
| adaptationState | – Whether the white point is being adapted in Absolute colorimetric. [0.0 1.0] with 0 no adaptation, 1 full adaptation. |
| displayConversionFlags | – the rest of the conversion flags. This includes blackpoint compensation for the second transform, as well as gamut warnings. |
Definition at line 478 of file KoColorSpace.cpp.
References d, KoGenericRegistry< T >::get(), and KoColorSpaceEngineRegistry::instance().
|
virtual |
Definition at line 744 of file KoColorSpace.cpp.
References channelCount(), KoColorProfile::delinearizeFloatValue(), fromHSY(), fromNormalisedChannelsValue(), KoColorProfile::linearizeFloatValue(), normalisedChannelsValue(), profile(), setOpacity(), and toHSY().
|
virtual |
Definition at line 640 of file KoColorSpace.cpp.
References channelCount(), KoColorProfile::delinearizeFloatValue(), fromHSY(), fromNormalisedChannelsValue(), KoColorProfile::linearizeFloatValue(), normalisedChannelsValue(), profile(), setOpacity(), and toHSY().
|
virtual |
Definition at line 699 of file KoColorSpace.cpp.
References channelCount(), KoColorProfile::delinearizeFloatValue(), fromHSY(), fromNormalisedChannelsValue(), KoColorProfile::linearizeFloatValue(), normalisedChannelsValue(), profile(), setOpacity(), and toHSY().
|
pure virtual |
Get the difference between 2 colors, normalized in the range (0,255). Only completely opaque and completely transparent are taken into account when computing the difference; other transparency levels are not regarded when finding the difference.
Completely transparent pixels are treated as if they are completely different from any non-transparent pixels.
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, LcmsColorSpace< _CSTraits >, LcmsColorSpace< KoBgrU16Traits >, LcmsColorSpace< KoBgrU8Traits >, LcmsColorSpace< KoCmykF32Traits >, LcmsColorSpace< KoCmykU16Traits >, LcmsColorSpace< KoCmykU8Traits >, LcmsColorSpace< KoGrayF16Traits >, LcmsColorSpace< KoGrayF32Traits >, LcmsColorSpace< KoGrayU16Traits >, LcmsColorSpace< KoGrayU8Traits >, LcmsColorSpace< KoLabF32Traits >, LcmsColorSpace< KoLabU16Traits >, LcmsColorSpace< KoLabU8Traits >, LcmsColorSpace< KoRgbF16Traits >, LcmsColorSpace< KoRgbF32Traits >, LcmsColorSpace< KoXyzF16Traits >, LcmsColorSpace< KoXyzF32Traits >, LcmsColorSpace< KoXyzU16Traits >, LcmsColorSpace< KoXyzU8Traits >, LcmsColorSpace< KoYCbCrF32Traits >, LcmsColorSpace< KoYCbCrU16Traits >, and LcmsColorSpace< KoYCbCrU8Traits >.
|
pure virtual |
Get the difference between 2 colors, normalized in the range (0,255). This function takes the Alpha channel of the pixel into account. Alpha channel has the same weight as Lightness channel.
Completely transparent pixels are treated as if their color channels are the same as ones of the other pixel. In other words, only alpha channel difference is compared.
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, LcmsColorSpace< _CSTraits >, LcmsColorSpace< KoBgrU16Traits >, LcmsColorSpace< KoBgrU8Traits >, LcmsColorSpace< KoCmykF32Traits >, LcmsColorSpace< KoCmykU16Traits >, LcmsColorSpace< KoCmykU8Traits >, LcmsColorSpace< KoGrayF16Traits >, LcmsColorSpace< KoGrayF32Traits >, LcmsColorSpace< KoGrayU16Traits >, LcmsColorSpace< KoGrayU8Traits >, LcmsColorSpace< KoLabF32Traits >, LcmsColorSpace< KoLabU16Traits >, LcmsColorSpace< KoLabU8Traits >, LcmsColorSpace< KoRgbF16Traits >, LcmsColorSpace< KoRgbF32Traits >, LcmsColorSpace< KoXyzF16Traits >, LcmsColorSpace< KoXyzF32Traits >, LcmsColorSpace< KoXyzU16Traits >, LcmsColorSpace< KoXyzU8Traits >, LcmsColorSpace< KoYCbCrF32Traits >, LcmsColorSpace< KoYCbCrU16Traits >, and LcmsColorSpace< KoYCbCrU8Traits >.
|
virtual |
Retrieve the elevate-to-normalized floating point dithering op.
Definition at line 334 of file KoColorSpace.cpp.
References colorDepthId(), d, DITHER_BAYER, DITHER_BEST, DITHER_BLUE_NOISE, DITHER_FAST, DITHER_NONE, and warnPigment.
| QPolygonF KoColorSpace::estimatedTRCXYY | ( | ) | const |
Definition at line 188 of file KoColorSpace.cpp.
References KoColorConversionTransformation::adjustmentConversionFlags(), channels, colorChannelCount(), colorDepthId(), colorModelId(), KoColorSpaceRegistry::colorSpace(), convertPixelsTo(), d, fromNormalisedChannelsValue(), KoID::id(), KoColorSpaceRegistry::instance(), KoColorConversionTransformation::IntentAbsoluteColorimetric, normalisedChannelsValue(), and pixelSize().
|
pure virtual |
Fills dst with specified brushColor and then applies inverted brush mask specified in brush. Premultiplied red channel of the brush is used as an alpha channel for destination pixels.
The equation is:
dstC = colorC; dstA = qAlpha(brush) * (255 - qRed(brush)) / 255;
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
virtual |
Fills dst with specified brushColor and then applies inverted brush mask specified in brush. Inverted red channel of the brush is used as lightness of the destination. Alpha channel of the brush is used as alpha of the destination.
The equation is:
dstL_hsl = preserveLightness(colorL_hsl, lightFactor); dstA = qAlpha(brush);
For details on preserveLightness() formula, see KoColorSpacePreserveLightnessUtils.h
Reimplemented in KoRgbU16ColorSpace, KoRgbU8ColorSpace, RgbF16ColorSpace, RgbF32ColorSpace, RgbU16ColorSpace, and RgbU8ColorSpace.
Definition at line 877 of file KoColorSpace.cpp.
References fillGrayBrushWithColorAndLightnessWithStrength().
|
virtual |
Fallback implementation. All RGB color spaces have their own implementation without any conversions.
Reimplemented in KoRgbU16ColorSpace, KoRgbU8ColorSpace, RgbF16ColorSpace, RgbF32ColorSpace, RgbU16ColorSpace, and RgbU8ColorSpace.
Definition at line 882 of file KoColorSpace.cpp.
References fromRgbA16(), and toRgbA16().
|
pure virtual |
Fills pixels with specified brushColor and then applies inverted brush mask specified in alpha.
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, KoLabColorSpace, KoRgbU16ColorSpace, KoRgbU8ColorSpace, CmykF32ColorSpace, CmykU16ColorSpace, CmykU8ColorSpace, GrayF16ColorSpace, GrayF32ColorSpace, GrayAU16ColorSpace, GrayAU8ColorSpace, LabF32ColorSpace, LabU16ColorSpace, LabU8ColorSpace, RgbF16ColorSpace, RgbF32ColorSpace, RgbU16ColorSpace, RgbU8ColorSpace, XyzF16ColorSpace, XyzF32ColorSpace, XyzU16ColorSpace, XyzU8ColorSpace, YCbCrF32ColorSpace, YCbCrU16ColorSpace, and YCbCrU8ColorSpace.
|
virtual |
Convert the specified data from Lab (D50). to this colorspace. All colorspaces are guaranteed to support this.
| src | the pixels in 16 bit lab format |
| dst | the destination data |
| nPixels | the number of pixels in the array |
Reimplemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, and KoSimpleColorSpace< KoLabU16Traits >.
Definition at line 436 of file KoColorSpace.cpp.
References fromLabA16Converter(), and KoColorConversionTransformation::transform().
|
protected |
Definition at line 409 of file KoColorSpace.cpp.
References KoColorSpaceRegistry::createColorConverter(), d, KoColorSpaceRegistry::instance(), KoColorConversionTransformation::internalConversionFlags(), and KoColorConversionTransformation::internalRenderingIntent().
|
pure virtual |
Write in the pixel the value from the normalized vector.
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
The fromQColor methods take a given color defined as an RGB QColor and fills a byte array with the corresponding color in the the colorspace managed by this strategy.
| color | the QColor that will be used to fill dst |
| dst | a pointer to a pixel |
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoLabColorSpace, KoRgbU16ColorSpace, KoRgbU8ColorSpace, LcmsColorSpace< _CSTraits >, LcmsColorSpace< KoBgrU16Traits >, LcmsColorSpace< KoBgrU8Traits >, LcmsColorSpace< KoCmykF32Traits >, LcmsColorSpace< KoCmykU16Traits >, LcmsColorSpace< KoCmykU8Traits >, LcmsColorSpace< KoGrayF16Traits >, LcmsColorSpace< KoGrayF32Traits >, LcmsColorSpace< KoGrayU16Traits >, LcmsColorSpace< KoGrayU8Traits >, LcmsColorSpace< KoLabF32Traits >, LcmsColorSpace< KoLabU16Traits >, LcmsColorSpace< KoLabU8Traits >, LcmsColorSpace< KoRgbF16Traits >, LcmsColorSpace< KoRgbF32Traits >, LcmsColorSpace< KoXyzF16Traits >, LcmsColorSpace< KoXyzF32Traits >, LcmsColorSpace< KoXyzU16Traits >, LcmsColorSpace< KoXyzU8Traits >, LcmsColorSpace< KoYCbCrF32Traits >, LcmsColorSpace< KoYCbCrU16Traits >, and LcmsColorSpace< KoYCbCrU8Traits >.
|
virtual |
Convert the specified data from sRGB 16 bits. to this colorspace. All colorspaces are guaranteed to support this.
| src | the pixels in 16 bit rgb format |
| dst | the destination data |
| nPixels | the number of pixels in the array |
Reimplemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, and KoSimpleColorSpace< KoLabU16Traits >.
Definition at line 446 of file KoColorSpace.cpp.
References fromRgbA16Converter(), and KoColorConversionTransformation::transform().
|
protected |
Definition at line 423 of file KoColorSpace.cpp.
References KoColorSpaceRegistry::createColorConverter(), d, KoColorSpaceRegistry::instance(), KoColorConversionTransformation::internalConversionFlags(), and KoColorConversionTransformation::internalRenderingIntent().
|
pure virtual |
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, KoLabColorSpace, KoRgbU16ColorSpace, KoRgbU8ColorSpace, CmykF32ColorSpace, CmykU16ColorSpace, CmykU8ColorSpace, GrayF16ColorSpace, GrayF32ColorSpace, GrayAU16ColorSpace, GrayAU8ColorSpace, LabF32ColorSpace, LabU16ColorSpace, LabU8ColorSpace, RgbF16ColorSpace, RgbF32ColorSpace, RgbU16ColorSpace, RgbU8ColorSpace, XyzF16ColorSpace, XyzF32ColorSpace, XyzU16ColorSpace, XyzU8ColorSpace, YCbCrF32ColorSpace, YCbCrU16ColorSpace, and YCbCrU8ColorSpace.
| QPolygonF KoColorSpace::gamutXYY | ( | ) | const |
|
virtual |
Tests if the colorspace offers the specific composite op.
| srcSpace | optional source color space. Some color spaces prefer blitting in source color space. If already known, additional composite ops may be available. |
Definition at line 316 of file KoColorSpace.cpp.
References d, hasCompositeOp(), and preferCompositionInSourceColorSpace().
|
pure virtual |
Returns true if the colorspace supports channel values outside the (normalised) range 0 to 1.
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, CmykF32ColorSpace, GrayF16ColorSpace, GrayF32ColorSpace, LabF32ColorSpace, RgbF16ColorSpace, RgbF32ColorSpace, XyzF16ColorSpace, XyzF32ColorSpace, YCbCrF32ColorSpace, LcmsColorSpace< _CSTraits >, LcmsColorSpace< KoBgrU16Traits >, LcmsColorSpace< KoBgrU8Traits >, LcmsColorSpace< KoCmykF32Traits >, LcmsColorSpace< KoCmykU16Traits >, LcmsColorSpace< KoCmykU8Traits >, LcmsColorSpace< KoGrayF16Traits >, LcmsColorSpace< KoGrayF32Traits >, LcmsColorSpace< KoGrayU16Traits >, LcmsColorSpace< KoGrayU8Traits >, LcmsColorSpace< KoLabF32Traits >, LcmsColorSpace< KoLabU16Traits >, LcmsColorSpace< KoLabU8Traits >, LcmsColorSpace< KoRgbF16Traits >, LcmsColorSpace< KoRgbF32Traits >, LcmsColorSpace< KoXyzF16Traits >, LcmsColorSpace< KoXyzF32Traits >, LcmsColorSpace< KoXyzU16Traits >, LcmsColorSpace< KoXyzU8Traits >, LcmsColorSpace< KoYCbCrF32Traits >, LcmsColorSpace< KoYCbCrU16Traits >, and LcmsColorSpace< KoYCbCrU8Traits >.
| QString KoColorSpace::id | ( | ) | const |
ID for use in files and internally: unchanging name. As the id must be unique it is usually the concatenation of the id of the color model and of the color depth, for instance "RGBA8" or "CMYKA16" or "XYZA32f".
|
virtual |
Definition at line 812 of file KoColorSpace.cpp.
References channelCount(), KoColorProfile::delinearizeFloatValue(), fromNormalisedChannelsValue(), fromYUV(), KoColorProfile::linearizeFloatValue(), normalisedChannelsValue(), profile(), setOpacity(), toYUV(), u, and v.
|
virtual |
Definition at line 790 of file KoColorSpace.cpp.
References channelCount(), KoColorProfile::delinearizeFloatValue(), fromNormalisedChannelsValue(), fromYUV(), KoColorProfile::linearizeFloatValue(), normalisedChannelsValue(), profile(), setOpacity(), toYUV(), u, and v.
|
virtual |
Definition at line 720 of file KoColorSpace.cpp.
References channelCount(), KoColorProfile::delinearizeFloatValue(), fromHSY(), fromNormalisedChannelsValue(), KoColorProfile::linearizeFloatValue(), normalisedChannelsValue(), profile(), setOpacity(), and toHSY().
|
virtual |
Definition at line 610 of file KoColorSpace.cpp.
References channelCount(), KoColorProfile::delinearizeFloatValue(), fromHSY(), fromNormalisedChannelsValue(), KoColorProfile::linearizeFloatValue(), normalisedChannelsValue(), profile(), setOpacity(), and toHSY().
|
virtual |
Definition at line 769 of file KoColorSpace.cpp.
References channelCount(), KoColorProfile::delinearizeFloatValue(), fromNormalisedChannelsValue(), fromYUV(), KoColorProfile::linearizeFloatValue(), normalisedChannelsValue(), profile(), setOpacity(), toYUV(), u, and v.
|
virtual |
Definition at line 678 of file KoColorSpace.cpp.
References channelCount(), KoColorProfile::delinearizeFloatValue(), fromHSY(), fromNormalisedChannelsValue(), KoColorProfile::linearizeFloatValue(), normalisedChannelsValue(), profile(), setOpacity(), and toHSY().
|
virtual |
Definition at line 834 of file KoColorSpace.cpp.
References channelCount(), KoColorProfile::delinearizeFloatValue(), fromNormalisedChannelsValue(), fromYUV(), KoColorProfile::linearizeFloatValue(), normalisedChannelsValue(), profile(), setOpacity(), toYUV(), u, and v.
|
pure virtual |
Calculate the intensity of the given pixel, scaled down to the range 0-255. XXX: Maybe this should be more flexible
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, KoColorSpaceAbstract< KoYCbCrU8Traits >, and RgbU8ColorSpace.
|
pure virtual |
Calculate the intensity of the given pixel, scaled down to the range 0-1
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, KoColorSpaceAbstract< KoYCbCrU8Traits >, and RgbU8ColorSpace.
| QVector< qreal > KoColorSpace::lumaCoefficients | ( | ) | const |
|
virtual |
|
virtual |
Fallback implementation. All RGB color spaces have their own implementation without any conversions.
Reimplemented in KoRgbU16ColorSpace, KoRgbU8ColorSpace, RgbF16ColorSpace, RgbF32ColorSpace, RgbU16ColorSpace, and RgbU8ColorSpace.
Definition at line 898 of file KoColorSpace.cpp.
References fromRgbA16(), and toRgbA16().
|
pure virtual |
Multiply the alpha channel of the given run of pixels by the given value.
pixels – a pointer to the pixels that will have their alpha set to this value alpha – a downscaled 8-bit value for opacity nPixels – the number of pixels
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
| QString KoColorSpace::name | ( | ) | const |
User visible name which contains the name of the color model and of the color depth. For instance "RGBA (8-bits)" or "CMYKA (16-bits)".
|
pure virtual |
Return a QVector of floats with channels' values normalized to floating point range 0 to 1.
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
Return a string with the channel's value with integer channels normalised to the floating point range 0 to 1, if appropriate.
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
Get the alpha value of the given pixel, downscaled to an 8-bit value.
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
virtual |
Definition at line 95 of file KoColorSpace.cpp.
|
pure virtual |
The size in bytes of a single pixel in this color model
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
protectedvirtual |
This function defines the behavior of the bitBlt function when the composition of pixels in different colorspaces is requested, that is in case:
srcCS == any dstCS == this
1) preferCompositionInSourceColorSpace() == false,
the source pixels are first converted to *this color space and then composition is performed.
2) preferCompositionInSourceColorSpace() == true,
the destination pixels are first converted into *srcCS color space, then the composition is done, and the result is finally converted into *this colorspace.
This is used by alpha8() color space mostly, because it has weaker representation of the color, so the composition should be done in CS with richer functionality.
Reimplemented in KoAlphaColorSpaceImpl< _CSTrait >.
Definition at line 872 of file KoColorSpace.cpp.
|
pure virtual |
Return the profile of this color space.
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, LcmsColorSpace< _CSTraits >, LcmsColorSpace< KoBgrU16Traits >, LcmsColorSpace< KoBgrU8Traits >, LcmsColorSpace< KoCmykF32Traits >, LcmsColorSpace< KoCmykU16Traits >, LcmsColorSpace< KoCmykU8Traits >, LcmsColorSpace< KoGrayF16Traits >, LcmsColorSpace< KoGrayF32Traits >, LcmsColorSpace< KoGrayU16Traits >, LcmsColorSpace< KoGrayU8Traits >, LcmsColorSpace< KoLabF32Traits >, LcmsColorSpace< KoLabU16Traits >, LcmsColorSpace< KoLabU8Traits >, LcmsColorSpace< KoRgbF16Traits >, LcmsColorSpace< KoRgbF32Traits >, LcmsColorSpace< KoXyzF16Traits >, LcmsColorSpace< KoXyzF32Traits >, LcmsColorSpace< KoXyzU16Traits >, LcmsColorSpace< KoXyzU8Traits >, LcmsColorSpace< KoYCbCrF32Traits >, LcmsColorSpace< KoYCbCrU16Traits >, and LcmsColorSpace< KoYCbCrU8Traits >.
|
pure virtual |
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, LcmsColorSpace< _CSTraits >, LcmsColorSpace< KoBgrU16Traits >, LcmsColorSpace< KoBgrU8Traits >, LcmsColorSpace< KoCmykF32Traits >, LcmsColorSpace< KoCmykU16Traits >, LcmsColorSpace< KoCmykU8Traits >, LcmsColorSpace< KoGrayF16Traits >, LcmsColorSpace< KoGrayF32Traits >, LcmsColorSpace< KoGrayU16Traits >, LcmsColorSpace< KoGrayU8Traits >, LcmsColorSpace< KoLabF32Traits >, LcmsColorSpace< KoLabU16Traits >, LcmsColorSpace< KoLabU8Traits >, LcmsColorSpace< KoRgbF16Traits >, LcmsColorSpace< KoRgbF32Traits >, LcmsColorSpace< KoXyzF16Traits >, LcmsColorSpace< KoXyzF32Traits >, LcmsColorSpace< KoXyzU16Traits >, LcmsColorSpace< KoXyzU8Traits >, LcmsColorSpace< KoYCbCrF32Traits >, LcmsColorSpace< KoYCbCrU16Traits >, and LcmsColorSpace< KoYCbCrU8Traits >.
|
virtual |
proofPixelsTo
| src | source |
| dst | destination |
| numPixels | the amount of pixels. |
| proofingTransform | the intent used for proofing. |
Definition at line 488 of file KoColorSpace.cpp.
References KoColorConversionTransformation::transform().
|
pure virtual |
Convert the value of the channel at the specified position into an 8-bit value. The position is not the number of bytes, but the position of the channel as defined in the channel info list.
Implemented in KoLabColorSpace, KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, KoColorSpaceAbstract< KoYCbCrU8Traits >, LabF32ColorSpace, LabU16ColorSpace, and LabU8ColorSpace.
|
pure virtual |
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
Set the alpha channel of the given run of pixels to the given value.
pixels – a pointer to the pixels that will have their alpha set to this value alpha – a downscaled 8-bit value for opacity nPixels – the number of pixels
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
Set dstPixel to the pixel containing only the given channel of srcPixel. The remaining channels should be set to whatever makes sense for 'empty' channels of this color space, with the intent being that the pixel should look like it only has the given channel.
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, and KoColorSpaceAbstract< KoYCbCrU8Traits >.
|
pure virtual |
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, KoLabColorSpace, KoRgbU16ColorSpace, KoRgbU8ColorSpace, CmykF32ColorSpace, CmykU16ColorSpace, CmykU8ColorSpace, GrayF16ColorSpace, GrayF32ColorSpace, GrayAU16ColorSpace, GrayAU8ColorSpace, LabF32ColorSpace, LabU16ColorSpace, LabU8ColorSpace, RgbF16ColorSpace, RgbF32ColorSpace, RgbU16ColorSpace, RgbU8ColorSpace, XyzF16ColorSpace, XyzF32ColorSpace, XyzU16ColorSpace, XyzU8ColorSpace, YCbCrF32ColorSpace, YCbCrU16ColorSpace, and YCbCrU8ColorSpace.
|
virtual |
Convert the specified data to Lab (D50). All colorspaces are guaranteed to support this
| src | the source data |
| dst | the destination data |
| nPixels | the number of source pixels |
Reimplemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, and KoSimpleColorSpace< KoLabU16Traits >.
Definition at line 431 of file KoColorSpace.cpp.
References toLabA16Converter(), and KoColorConversionTransformation::transform().
|
protected |
Definition at line 401 of file KoColorSpace.cpp.
References KoColorSpaceRegistry::createColorConverter(), d, KoColorSpaceRegistry::instance(), KoColorConversionTransformation::internalConversionFlags(), and KoColorConversionTransformation::internalRenderingIntent().
|
pure virtual |
The toQColor methods take a byte array that is at least pixelSize() long and converts the contents to a QColor, using the given profile as a source profile and the optional profile as a destination profile.
| src | a pointer to the source pixel |
| c | the QColor that will be filled with the color at src |
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoLabColorSpace, KoRgbU16ColorSpace, KoRgbU8ColorSpace, LcmsColorSpace< _CSTraits >, LcmsColorSpace< KoBgrU16Traits >, LcmsColorSpace< KoBgrU8Traits >, LcmsColorSpace< KoCmykF32Traits >, LcmsColorSpace< KoCmykU16Traits >, LcmsColorSpace< KoCmykU8Traits >, LcmsColorSpace< KoGrayF16Traits >, LcmsColorSpace< KoGrayF32Traits >, LcmsColorSpace< KoGrayU16Traits >, LcmsColorSpace< KoGrayU8Traits >, LcmsColorSpace< KoLabF32Traits >, LcmsColorSpace< KoLabU16Traits >, LcmsColorSpace< KoLabU8Traits >, LcmsColorSpace< KoRgbF16Traits >, LcmsColorSpace< KoRgbF32Traits >, LcmsColorSpace< KoXyzF16Traits >, LcmsColorSpace< KoXyzF32Traits >, LcmsColorSpace< KoXyzU16Traits >, LcmsColorSpace< KoXyzU8Traits >, LcmsColorSpace< KoYCbCrF32Traits >, LcmsColorSpace< KoYCbCrU16Traits >, and LcmsColorSpace< KoYCbCrU8Traits >.
|
pure virtual |
The toQColor16 methods take a byte array that is at least pixelSize() long and converts the contents to a 16 bit QColor, using the given profile as a source profile and the optional profile as a destination profile.
| src | a pointer to the source pixel |
| c | the QColor that will be filled with the color at src |
Implemented in KoColorSpaceAbstract< _CSTrait >, KoColorSpaceAbstract< _CSTraits >, KoColorSpaceAbstract< KoBgrU16Traits >, KoColorSpaceAbstract< KoBgrU8Traits >, KoColorSpaceAbstract< KoCmykF32Traits >, KoColorSpaceAbstract< KoCmykU16Traits >, KoColorSpaceAbstract< KoCmykU8Traits >, KoColorSpaceAbstract< KoGrayF16Traits >, KoColorSpaceAbstract< KoGrayF32Traits >, KoColorSpaceAbstract< KoGrayU16Traits >, KoColorSpaceAbstract< KoGrayU8Traits >, KoColorSpaceAbstract< KoLabF32Traits >, KoColorSpaceAbstract< KoLabU16Traits >, KoColorSpaceAbstract< KoLabU8Traits >, KoColorSpaceAbstract< KoRgbF16Traits >, KoColorSpaceAbstract< KoRgbF32Traits >, KoColorSpaceAbstract< KoXyzF16Traits >, KoColorSpaceAbstract< KoXyzF32Traits >, KoColorSpaceAbstract< KoXyzU16Traits >, KoColorSpaceAbstract< KoXyzU8Traits >, KoColorSpaceAbstract< KoYCbCrF32Traits >, KoColorSpaceAbstract< KoYCbCrU16Traits >, KoColorSpaceAbstract< KoYCbCrU8Traits >, LcmsColorSpace< _CSTraits >, LcmsColorSpace< KoBgrU16Traits >, LcmsColorSpace< KoBgrU8Traits >, LcmsColorSpace< KoCmykF32Traits >, LcmsColorSpace< KoCmykU16Traits >, LcmsColorSpace< KoCmykU8Traits >, LcmsColorSpace< KoGrayF16Traits >, LcmsColorSpace< KoGrayF32Traits >, LcmsColorSpace< KoGrayU16Traits >, LcmsColorSpace< KoGrayU8Traits >, LcmsColorSpace< KoLabF32Traits >, LcmsColorSpace< KoLabU16Traits >, LcmsColorSpace< KoLabU8Traits >, LcmsColorSpace< KoRgbF16Traits >, LcmsColorSpace< KoRgbF32Traits >, LcmsColorSpace< KoXyzF16Traits >, LcmsColorSpace< KoXyzF32Traits >, LcmsColorSpace< KoXyzU16Traits >, LcmsColorSpace< KoXyzU8Traits >, LcmsColorSpace< KoYCbCrF32Traits >, LcmsColorSpace< KoYCbCrU16Traits >, and LcmsColorSpace< KoYCbCrU8Traits >.
|
virtual |
Convert the specified data to sRGB 16 bits. All colorspaces are guaranteed to support this
| src | the source data |
| dst | the destination data |
| nPixels | the number of source pixels |
Reimplemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, and KoSimpleColorSpace< KoLabU16Traits >.
Definition at line 441 of file KoColorSpace.cpp.
References toRgbA16Converter(), and KoColorConversionTransformation::transform().
|
protected |
Definition at line 416 of file KoColorSpace.cpp.
References KoColorSpaceRegistry::createColorConverter(), d, KoColorSpaceRegistry::instance(), KoColorConversionTransformation::internalConversionFlags(), and KoColorConversionTransformation::internalRenderingIntent().
|
pure virtual |
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, KoLabColorSpace, KoRgbU16ColorSpace, KoRgbU8ColorSpace, CmykF32ColorSpace, CmykU16ColorSpace, CmykU8ColorSpace, GrayF16ColorSpace, GrayF32ColorSpace, GrayAU16ColorSpace, GrayAU8ColorSpace, LabF32ColorSpace, LabU16ColorSpace, LabU8ColorSpace, RgbF16ColorSpace, RgbF32ColorSpace, RgbU16ColorSpace, RgbU8ColorSpace, XyzF16ColorSpace, XyzF32ColorSpace, XyzU16ColorSpace, XyzU8ColorSpace, YCbCrF32ColorSpace, YCbCrU16ColorSpace, and YCbCrU8ColorSpace.
|
virtual |
Fills the provided buffer with fully transparent color in this color space.
Not all color spaces support conversion from QColor (e.g. InputClass spaces), so for them we need to generate this color separately.
Definition at line 395 of file KoColorSpace.cpp.
References OPACITY_TRANSPARENT_U8, pixelSize(), and setOpacity().
|
pure virtual |
If false, images in this colorspace will degrade considerably by functions, tools and filters that have the given measure of colorspace independence.
| independence | the measure to which this colorspace will suffer from the manipulations of the tool or filter asking |
Implemented in KoAlphaColorSpaceImpl< _CSTrait >, KoSimpleColorSpace< _CSTraits >, KoSimpleColorSpace< KoBgrU16Traits >, KoSimpleColorSpace< KoBgrU8Traits >, KoSimpleColorSpace< KoLabU16Traits >, CmykF32ColorSpace, CmykU16ColorSpace, CmykU8ColorSpace, LabF32ColorSpace, LabU16ColorSpace, LabU8ColorSpace, RgbF16ColorSpace, RgbF32ColorSpace, RgbU16ColorSpace, XyzF16ColorSpace, XyzF32ColorSpace, XyzU16ColorSpace, XyzU8ColorSpace, YCbCrF32ColorSpace, YCbCrU16ColorSpace, YCbCrU8ColorSpace, GrayF16ColorSpace, GrayF32ColorSpace, GrayAU16ColorSpace, GrayAU8ColorSpace, and RgbU8ColorSpace.
|
friend |
Definition at line 80 of file KoColorSpace.h.
|
friend |
Definition at line 79 of file KoColorSpace.h.
|
mutable |
Definition at line 51 of file KoColorSpace_p.h.
| QList< KoChannelInfo * > KoColorSpace::channels |
Definition at line 45 of file KoColorSpace_p.h.
| QVector<qreal> KoColorSpace::colorants |
Definition at line 60 of file KoColorSpace_p.h.
| QList< KoCompositeOp * > KoColorSpace::compositeOps |
Definition at line 44 of file KoColorSpace_p.h.
|
mutable |
Definition at line 50 of file KoColorSpace_p.h.
| KoConvolutionOp * KoColorSpace::convolutionOp |
Definition at line 47 of file KoColorSpace_p.h.
|
protected |
Definition at line 751 of file KoColorSpace.h.
| Deletability KoColorSpace::deletability |
Definition at line 65 of file KoColorSpace_p.h.
| QHash<QString, QMap<DitherType, KisDitherOp*> > KoColorSpace::ditherOps |
Definition at line 48 of file KoColorSpace_p.h.
| QPolygonF KoColorSpace::gamutXYY |
Definition at line 58 of file KoColorSpace_p.h.
| KoColorSpaceEngine* KoColorSpace::iccEngine |
Definition at line 63 of file KoColorSpace_p.h.
| QString KoColorSpace::id |
Definition at line 41 of file KoColorSpace_p.h.
| quint32 KoColorSpace::idNumber |
Definition at line 42 of file KoColorSpace_p.h.
| QVector< qreal > KoColorSpace::lumaCoefficients |
Definition at line 61 of file KoColorSpace_p.h.
| KoMixColorsOp * KoColorSpace::mixColorsOp |
Definition at line 46 of file KoColorSpace_p.h.
| QString KoColorSpace::name |
Definition at line 43 of file KoColorSpace_p.h.
|
mutable |
Definition at line 56 of file KoColorSpace_p.h.
|
mutable |
Definition at line 54 of file KoColorSpace_p.h.
|
mutable |
Definition at line 55 of file KoColorSpace_p.h.
|
mutable |
Definition at line 53 of file KoColorSpace_p.h.
| QPolygonF KoColorSpace::TRCXYY |
Definition at line 59 of file KoColorSpace_p.h.