[CREATE] assets library
Kai-Uwe Behrmann
ku.b at gmx.de
Wed Sep 26 07:14:09 PDT 2007
Am 26.09.07, 14:58 +0200 schrieb Craig Bradney:
> > > 0.0 and 1.0. The other examples that I have seen so far used integers
> > > without actually defining the range of them anywhere.
>
> The space could/would define these, and I think allowing a user to create a
> colour list in both notations is useful. Using floating point where the
> space doesnt allow for it, will also lead to rounding issues.
So, you'd mean to include the HTML/CSS3 style notations?
Hexdecimal, decimal, precent, except colour keywords, + floats
It is quickly confusing. See the following example from the css3-color
spec:
em { color: hsla(120, 100%, 50%, 1) } /* the same, with explicit opacity of 1 */
and then
p { color: hsla(30, 100%, 50%, 0.1) } /* very transparent solid orange */
For the alpha part, last number, one must know that the range of 0.0...1.0
applies.
That would introduce a lot of guess work in the parser.
Even though, I dont have a good solution at hand.
> > Good point. We will see more value range dependent things in the future I
> > guess, because of HDR becoming more and more popular.
>
> Theres no reason why one space cant use decimals and another integers.. or
> even r="15" b="0.2".
Continuing my above thoughts: is r equal to 15.0? What is with g="1"?
Would it be interpreted as 1.0 or 1? Should the format force "1.0" or
simply prohibit intermixing in one colour to enforce consitency?
> > Are the language specifics be allowed for floating point values? Or are
> > floats always be defined to english x.x notation?
>
> It shouldnt matter, but it will depend on the XML parser I guess.
Fine.
> >
> > Despite my lesser XML knowledge, this example would at least allow
> > arbitrary colour channels.
>
> Are we going to add channels to existing spaces? rgbaZ?
Would allow some nice features. As alpha is standard for www, why not use
all channels involved for imaging applications.
> If the spaces are defined, the attributes are set.
Does it remain still flexible? Can one define user attributes to simply
pass or used by understanding applications?
<color-profile name="sRGB"> <!-- uri not needed -->
<color>
<rgb r="1.6" g="1.2" b="0.8">
<extra a="0.9173" Z="30592.4" u="0.6029" v="-0.3982">
<name="Evening Wall 2">
</color>
</color-profile>
I am not shure if for instance blender would use such things.
Is this still validatable, except of course for the <extra ..> part?
> > How about alpha? I can't think a colour without it. Some applications want
>
>
>
>
> > An other idea for a newly created format is to use the ICC colour space
> > signatures. They are already defined and widely used (big endian
> > notation taken from icc34.h distributed with littleCMS):
> > icSigXYZData = 0x58595A20L, /* 'XYZ ' */
> > icSigLabData = 0x4C616220L, /* 'Lab ' */
> > icSigLuvData = 0x4C757620L, /* 'Luv ' */
>
> Nothing wrong with this per se, however, ... no user is going to read that
> with any comfort.
Oh, you think of the 0x4C616220L part? :-) It was probably a bit unclear.
I refered to the last letters inside the /* 'xxxx' */ comment.
You used youself allready
icSigRgbData = 0x52474220L, /* 'RGB ' */
in:
<color space="rgb" r="1" g="2" ...
ok, lowercase.
kind regards
Kai-Uwe Behrmann
--
developing for colour management
www.behrmann.name + www.oyranos.org + www.cinepaint.org
More information about the CREATE
mailing list