Humble palette improvements
Hi All,
I'd like to start a discussion about our default palettes. Since Jon implemented the feature years back, I've done many casual surveys of which palettes designers are using and which ones designers want. My suggestion is that we sanitize our current collection of palettes to make inkscape easier for common tasks as well as remove the bloat.
Here's what i recommend: --------- Kill: gray, blues, gold, green, reds, royal. hilte, topographic, khaki, and inkscape-default (its a bad default)
Keep, tango, echo, ubuntu, XP, latex, websafe22, webhex
Add: Android palette (below) and fedora's echo palette ------------
I also suggest we default to either tango, android, or ubuntu. it doesnt matter which one. only that we simplyfy the range of colours being displayed by default so that artists can quickly pickup a few primary hues.
my reasons for listing the palettes i did in the kill pile are simply that they offer far too many variations of the same hues. its a confusingly big list and in a typical workflow, the fill and stroke dialog is the best and easiest place to go if you want to vary parameters on a selected hue. of course a few variations are fine
What do you all think? Jon, do you mind making this change?
Andy
############################## GIMP Palette Name: Android icon palette Columns: 1 # 255 255 255 FFFFFF 191 191 191 BFBFBF 128 128 128 808080 64 64 64 404040 0 0 0 000000 102 153 255 6699FF 51 102 204 3366CC 0 51 153 003399 153 204 51 99CC33 0 204 0 00CC00 102 153 0 669900 255 204 0 FFCC00 255 153 0 FF9900 255 102 0 FF6600 204 0 0 CC0000
Launchpad bug #602698 for reference.
http://bugs.launchpad.net/inkscape/+bug/602698
On Wed, Jul 7, 2010 at 2:18 PM, Andy Fitzsimon <andyfitz@...400...> wrote:
Hi All,
I'd like to start a discussion about our default palettes. Since Jon implemented the feature years back, I've done many casual surveys of which palettes designers are using and which ones designers want. My suggestion is that we sanitize our current collection of palettes to make inkscape easier for common tasks as well as remove the bloat.
Here's what i recommend:
Kill: gray, blues, gold, green, reds, royal. hilte, topographic, khaki, and inkscape-default (its a bad default)
Keep, tango, echo, ubuntu, XP, latex, websafe22, webhex
Add: Android palette (below) and fedora's echo palette
I also suggest we default to either tango, android, or ubuntu. it doesnt matter which one. only that we simplyfy the range of colours being displayed by default so that artists can quickly pickup a few primary hues.
my reasons for listing the palettes i did in the kill pile are simply that they offer far too many variations of the same hues. its a confusingly big list and in a typical workflow, the fill and stroke dialog is the best and easiest place to go if you want to vary parameters on a selected hue. of course a few variations are fine
What do you all think? Jon, do you mind making this change?
Andy
############################## GIMP Palette Name: Android icon palette Columns: 1 # 255 255 255 FFFFFF 191 191 191 BFBFBF 128 128 128 808080 64 64 64 404040 0 0 0 000000 102 153 255 6699FF 51 102 204 3366CC 0 51 153 003399 153 204 51 99CC33 0 204 0 00CC00 102 153 0 669900 255 204 0 FFCC00 255 153 0 FF9900 255 102 0 FF6600 204 0 0 CC0000
On Wed, Jul 7, 2010 at 4:18 PM, Andy Fitzsimon wrote:
Hi All,
I'd like to start a discussion about our default palettes. Since Jon implemented the feature years back, I've done many casual surveys of which palettes designers are using and which ones designers want. My suggestion is that we sanitize our current collection of palettes to make inkscape easier for common tasks as well as remove the bloat.
Coincidentally GIMP team is doing it too :)
Here's what i recommend:
Kill: gray, blues, gold, green, reds, royal. hilte, topographic, khaki, and inkscape-default (its a bad default)
Keep, tango, echo, ubuntu, XP, latex, websafe22, webhex
Add: Android palette (below) and fedora's echo palette
Echo is already in. I added it myself a couple of years ago :)
And before we shoot any of the "geographic" ones, we better make sure none of OpenStreetMaps et al. guys will be after us with torches and pitchforks :)
Alexandre Prokoudine http://libregraphicsworld.org
I must say that I like inkscape-default quite a bit, and would hate to
see it go. (I use the first 30 or so colors a lot, the rest I hardly ever use)
So lets keep the first 30 in the default set . its the bloat that makes navigating palettes un-fun. trimming it would be great. keeping it as default is fine too.
And before we shoot any of the "geographic" ones, we better make sure none of OpenStreetMaps et al. guys will be after us with torches and pitchforks :)
which ones in particular? topographic?
I'm not opposed to leaving some in there as much as I am in favor of cleaning what is there up a little . for example khaki could do with a massive trim down to some primary hues, it would make quite a nice palette if it werent so huege (pun intended)
On 7/7/10, Andy Fitzsimon wrote:
And before we shoot any of the "geographic" ones, we better make sure none of OpenStreetMaps et al. guys will be after us with torches and pitchforks :)
which ones in particular? topographic?
Yes. I do believe there used to be someone from OSM lurking here. Please raise and speak up! :)
Alexandre Prokoudine http://libregraphicsworld.org
On Wed, Jul 7, 2010 at 12:24 PM, Andy Fitzsimon <andrew@...420...> wrote:
So lets keep the first 30 in the default set . its the bloat that makes navigating palettes un-fun. trimming it would be great. keeping it as default is fine too.
I really don't understand this thinking.
Now: 30 are immediately accessible, others are accessible by a simple scroll.
You propose: 30 are immediately accessible, others not accessible AT ALL.
How in the world is this an improvement?
which ones in particular? topographic? I'm not opposed to leaving some in there as much as I am in favor of cleaning what is there up a little . for example khaki could do with a massive trim down to some primary hues, it would make quite a nice palette if it werent so huege (pun intended)
With this I agree, some of the limited-hue palettes are indeed too long, with difference between adjacent colors almost imperceptible. But don't go overboard with that.
-----Original Message----- From: bulia byak [mailto:buliabyak@...400...] Sent: 07 July 2010 20:24 To: Andy Fitzsimon Cc: Inkscape Devel List; Alexandre Prokoudine Subject: Re: [Inkscape-devel] Humble palette improvements
On Wed, Jul 7, 2010 at 12:24 PM, Andy Fitzsimon <andrew@...420...> wrote:
So lets keep the first 30 in the default set . its the
bloat that makes
navigating palettes un-fun. trimming it would be great. keeping it
as
default is fine too.
I really don't understand this thinking.
Now: 30 are immediately accessible, others are accessible by a simple scroll.
You propose: 30 are immediately accessible, others not accessible AT ALL.
How in the world is this an improvement?
Although I agree mostly with you Bulia, here I differ. Recently, I *have* looked at whether Inkscape has a palette with (say) just the first 30 colors. Because that would have removed the scroll bar, and made some more vertical space... But I also like the little square swatches, instead of long broad ones. So perhaps we can make a 'minimal' set for tech drawers like me who need choice but not that much choice. Just one full bar of square swatches is enough for me.
Ciao, Johan
On 7/7/10, J.B.C.Engelen wrote:
Because that would have removed the scroll bar, and made some more vertical space...
That's a different issue: not doing swatches UI the right way.
Inkscape is probably the only application in the world that has color swatches strip that scrolls that way. I daresay it's because we picked the simplest solution,whereas people coming with AI/CD background expect it just to scroll, without scrollbar.
Another thing is that for some reason the Swatches dialog always has scrollbars enabled. This is so unbelievably ugly that I can only make (wrong) assumptions why it still is so this way (apart from not sending a patch, of course :)).
Alexandre Prokoudine http://libregraphicsworld.org
On Wed, 2010-07-07 at 22:44 +0400, Alexandre Prokoudine wrote:
On 7/7/10, J.B.C.Engelen wrote:
Because that would have removed the scroll bar, and made some more vertical space...
Inkscape is probably the only application in the world that has color swatches strip that scrolls that way. I daresay it's because we picked the simplest solution,whereas people coming with AI/CD background expect it just to scroll, without scrollbar.
Hmmm... I just went to Xara's website and they scroll the same way apparently (albeit with a much smaller scrollbar height). Personally I think this is one of those areas where what sK1 does is better if you're not looking for a scrollbar.
Cheers, Josh
On Wed, Jul 7, 2010 at 3:31 PM, <J.B.C.Engelen@...1578...> wrote:
Although I agree mostly with you Bulia, here I differ. Recently, I *have* looked at whether Inkscape has a palette with (say) just the first 30 colors. Because that would have removed the scroll bar, and made some more vertical space...
I agree the scrollbar on our palette is clumsy - it's the same size as palette itself. The solution I would prefer is to do the same as XaraLX - they have a nice thin palette scrollbar, very unlike the main canvas scrollbar. Unfortunately I don't know how to do that in GTK.
Another long-standing feature request is to make the palette scrollable by middle button, same as canvas. Jon, what would it take to implement that?
But I also like the little square swatches, instead of long broad ones. So perhaps we can make a 'minimal' set for tech drawers like me who need choice but not that much choice. Just one full bar of square swatches is enough for me.
That's reasonable, and you are very welcome to create a no-scroll palette with the primary colors you need. If you think it can be useful generally, we can add it to our set. And of course once you switch to it, it will become your personal default.
That's reasonable, and you are very welcome to create a no-scroll palette with the primary colors you need. If you think it can be useful generally, we can add it to our set. And of course once you switch to it, it will become your personal default.
But forget about our personal preferences for a moment. That's not the purpose of this discussion.
What looks best for inkscape on first launch for new users?
I'm not too lazy to copy and paste my own sets of palettes. users like me will be fine.
But to someone new, I think out palette selection (and default) is confusing, and not as useful as it could be.
On Wed, Jul 7, 2010 at 3:50 PM, Andy Fitzsimon <andrew@...420...> wrote:
What looks best for inkscape on first launch for new users?
The traditional approach is that the default UI should be rich, showing to the user most of the capabilities of the program, or at least most classes of capabilities. Thus most programs on first run show you all or almost all of their toolbars and tools, even if they allow you to trim them down.
The default palette was designed with this idea in mind. It shows without scrolling the three main approaches to color palettes: a range of single-hue grays, a selection of very different primary "technical" colors, and the beginning of a larger selection of "artistic" colors grouped by h/s/l. Later you can select separate palettes implementing each of these three approaches.
On Jul 7, 2010, at 11:46 AM, bulia byak wrote:
Another long-standing feature request is to make the palette scrollable by middle button, same as canvas. Jon, what would it take to implement that?
I know I've looked into this in the past, and it probably is not *too* difficult. I think a level-buble type scrolling view was another thing proposed.
We can probably have this as something to look at once we branch 0.48. It could be very handy.
Hi Andy,
I must say that I like inkscape-default quite a bit, and would hate to see it go. (I use the first 30 or so colors a lot, the rest I hardly ever use)
Ciao, Johan
-----Original Message----- From: Andy Fitzsimon [mailto:andyfitz@...400...] Sent: Wednesday, July 07, 2010 14:19 To: inkscape-devel@lists.sourceforge.net Cc: Jon A. Cruz Subject: [Inkscape-devel] Humble palette improvements
Hi All,
I'd like to start a discussion about our default palettes. Since Jon implemented the feature years back, I've done many casual surveys of which palettes designers are using and which ones designers want. My suggestion is that we sanitize our current collection of palettes to make inkscape easier for common tasks as well as remove the bloat.
Here's what i recommend:
Kill: gray, blues, gold, green, reds, royal. hilte, topographic, khaki, and inkscape-default (its a bad default)
Keep, tango, echo, ubuntu, XP, latex, websafe22, webhex
Add: Android palette (below) and fedora's echo palette
I also suggest we default to either tango, android, or ubuntu. it doesnt matter which one. only that we simplyfy the range of colours being displayed by default so that artists can quickly pickup a few primary hues.
my reasons for listing the palettes i did in the kill pile are simply that they offer far too many variations of the same hues. its a confusingly big list and in a typical workflow, the fill and stroke dialog is the best and easiest place to go if you want to vary parameters on a selected hue. of course a few variations are fine
What do you all think? Jon, do you mind making this change?
Andy
############################## GIMP Palette Name: Android icon palette Columns: 1 # 255 255 255 FFFFFF 191 191 191 BFBFBF 128 128 128 808080 64 64 64 404040 0 0 0 000000 102 153 255 6699FF 51 102 204 3366CC 0 51 153 003399 153 204 51 99CC33 0 204 0 00CC00 102 153 0 669900 255 204 0 FFCC00 255 153 0 FF9900 255 102 0 FF6600 204 0 0 CC0000
This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ Inkscape-devel mailing list Inkscape-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/inkscape-devel
On Wed, Jul 7, 2010 at 7:18 AM, Andy Fitzsimon <andyfitz@...400...> wrote:
I'd like to start a discussion about our default palettes.
Can we perhaps alphabetize the list of palettes as well (or is there some way of ordering I'm unaware of)?
One thing I'd possibly like to see is sub-menus in the palette menu. So if I created a palette: ~/.config/inkscape/palettes/foo/bar.gpl it would then appear as Palettes->foo->bar. This could also help to address the clutter issue without having to sacrifice too many palettes that may be useful for a subset of users. Thoughts?
Chris
On 7/7/10, Chris Mohler wrote:
One thing I'd possibly like to see is sub-menus in the palette menu.
There are very few things worse than nested menus in pop-up menus -- genocide is usually named among them :)
What we do need is tagging resources the way GIMP 2.7.x does.
Alexandre Prokoudine http://libregraphicsworld.org
On Jul 7, 2010, at 10:57 AM, Alexandre Prokoudine wrote:
On 7/7/10, Chris Mohler wrote:
One thing I'd possibly like to see is sub-menus in the palette menu.
There are very few things worse than nested menus in pop-up menus -- genocide is usually named among them :)
What we do need is tagging resources the way GIMP 2.7.x does.
http://bazaar.launchpad.net/~inkscape.dev/inkscape/trunk/annotate/head:/src/...
:-D
On Wed, Jul 7, 2010 at 9:18 AM, Andy Fitzsimon <andyfitz@...400...> wrote:
Here's what i recommend:
Kill: gray, blues, gold, green, reds, royal. hilte, topographic, khaki, and inkscape-default (its a bad default)
I would agree to remove a few of the single-hue palettes - they are mostly demonstrations that this (single-hue) is possible, it's not very likely that someone will use exactly these hues.
Gray must stay no matter what. It's really fundamental. Blues and reds can go, if you really insist. Greens is actually multi-hue so is more useful.
Other multi-hues are all non-trivial and therefore interesting. I really don't see why we must drop them. See, the palette is not only something you pick predefined colors from. It's something that influences your thinking as you draw, and thus the art you produce.
Keep, tango, echo, ubuntu, XP, latex, websafe22, webhex
So basically, your proposal can be described thus: remove all palettes with color-related names and color-meaningful colors, and only leave those named in technial mumbo-jumbo, with colors defined by some third-party technical artefacts :)
Sorry but I object.
Add: Android palette (below) and fedora's echo palette
You're welcome to add them.
I also suggest we default to either tango, android, or ubuntu.
Oh no.
Inkscape is not a Tango editor. It is not an Android editor. It is a general-purpose vector editor, and its default palette therefore tries to strike a balance between size and color coverage, ignoring any technical limitations of any third-party icon sets or interfaces. If you want to design to these limitations, you can. But making them the default is the same as making Comic Sans a default font in text editor.
doesnt matter which one. only that we simplyfy the range of colours being displayed by default so that artists can quickly pickup a few primary hues.
The default palette has a section with primary hues. If they are frequently insufficient, let's discuss expanding that section. But the it must contain really _primary_ colors, not some "tango" or "android" colors.
Gray must stay no matter what. It's really fundamental. Blues and reds can go, if you really insist. Greens is actually multi-hue so is more useful.
I agree, but perhaps the stepping between values can be shortened. we'd
really hate to put a fat scrollbar in the way for a few extra increments right?
Other multi-hues are all non-trivial and therefore interesting. I really don't see why we must drop them. See, the palette is not only something you pick predefined colors from. It's something that influences your thinking as you draw, and thus the art you produce.
absolutely concur. a palette is an environment from which we draw inspiration.
Keep, tango, echo, ubuntu, XP, latex, websafe22, webhex
So basically, your proposal can be described thus: remove all palettes with color-related names and color-meaningful colors, and only leave those named in technial mumbo-jumbo, with colors defined by some third-party technical artefacts :)
Sorry but I object.
Well said sir!
I agree that inkscape is a creative tool first and an icon/interface engineering app a distant second.
That being said, I know those palettes to be invaluable for a specific task. Most of which have large enough audiences to warrant their inclusion. I would never object to a beautiful selection of colors being included simple because they werent made for a desktop. But these should certainly stay, unfortunately the names are what they are and serve to identify their most common purpose.
Inkscape is not a Tango editor. It is not an Android editor. It is a general-purpose vector editor, and its default palette therefore tries to strike a balance between size and color coverage, ignoring any technical limitations of any third-party icon sets or interfaces. If you want to design to these limitations, you can. But making them the default is the same as making Comic Sans a default font in text editor.
I withdraw my recommendation. you are absolutely correct.
The default palette has a section with primary hues. If they are frequently insufficient, let's discuss expanding that section. But the it must contain really _primary_ colors, not some "tango" or "android" colors.
okay I agree, and I think they are sufficient but lets only keep the first 30 and not have those other lightness stepping variations of primaries its causing that unsightly scrollbar to appear and for no good reason. Like i said, variations are what the fill and stroke panel is best for
Thanks for the really good points Bulia.
Andy Fitzsimon wrote:
... Here's what i recommend:
Kill: gray, blues, gold, green, reds, royal. hilte, topographic, khaki, and inkscape-default (its a bad default)
Keep, tango, echo, ubuntu, XP, latex, websafe22, webhex
Add: Android palette (below) and fedora's echo palette
I think it would make sense to also keep the SVG palette (although I do have my doubts about the order in which the colors are presented).
In light of Johan's comment about inkscape's default palette and my own experience (I tend to use it a lot as well, but also mostly the first part, but I do miss a few hues and such) I have created a palette (see attachments) that is more or less the same as the first 26 colors of the original Inkscape default, except that: - It has more choice of hues (it used to only have hues exactly in between two primary colors, and it now also has the colors at one quarter and three quarters). - In addition to showing a darker variant of each color it also shows a lighter color. - It does not contain the 2.5%, 5% and 7.5% grays. This gives a total of 47 colors, which means doesn't scroll even on 1024x768 (windows xp). If necessary for some reason the three extra grays can be added (for a total of 50 colors), still without scrolling.
GIMP Palette Name: Test # generated by PaletteGen.py 0 0 0 Black 26 26 26 90% Gray 51 51 51 80% Gray 76 76 76 70% Gray 102 102 102 60% Gray 128 128 128 50% Gray 153 153 153 40% Gray 178 178 178 30% Gray 204 204 204 20% Gray 230 230 230 10% Gray 255 255 255 White 128 0 0 Maroon (#800000) 255 0 0 Red (#FF0000) 255 128 128 #FF8080 128 64 0 #804000 255 128 0 #FF8000 255 191 128 #FFBF80 128 128 0 Olive (#808000) 255 255 0 Yellow (#FFFF00) 255 255 128 #FFFF80 64 128 0 #408000 127 255 0 Chartreuse (#7FFF00) 191 255 128 #BFFF80 0 128 0 Green (#008000) 0 255 0 Lime (#00FF00) 128 255 128 #80FF80 0 128 64 #008040 0 255 127 Spring green (#00FF7F) 128 255 191 #80FFBF 0 128 128 Teal (#008080) 0 255 255 Aqua (#00FFFF) 128 255 255 #80FFFF 0 64 128 #004080 0 128 255 #0080FF 128 191 255 #80BFFF 0 0 128 Navy (#000080) 0 0 255 Blue (#0000FF) 128 128 255 #8080FF 64 0 128 #400080 128 0 255 #8000FF 191 128 255 #BF80FF 128 0 128 Purple (#800080) 255 0 255 Fuchsia (#FF00FF) 255 128 255 #FF80FF 128 0 64 #800040 255 0 128 #FF0080 255 128 191 #FF80BF
# This method is more consistent than colorsys.hls_to_rgb # Specifically, hls_to_rgb sometimes returns a value that is rounded # to 0x7F and sometimes a value that is rounded to 0x80 when it should # output 0.5*255=127.5. def rgbFromHSL(H,S=None,L=None): if S is None and L is None and type(H) is tuple: H,S,L = H C = 2.0*L*S if L<=0.5 else (2.0-2.0*L)*S H1 = (float(H)%1.0)*6.0 X = C*(1-abs(H1 % 2 - 1)) if 0<=H1<1: c1 = (C,X,0) elif 1<=H1<2: c1 = (X,C,0) elif 2<=H1<3: c1 = (0,C,X) elif 3<=H1<4: c1 = (0,X,C) elif 4<=H1<5: c1 = (X,0,C) elif 5<=H1<6: c1 = (C,0,X) m = L - C/2.0 return tuple(map(lambda c:c+m,c1))
# Initialization Ngrays = 10+1 # In increments of 10% Nhues = 4 # The number of hues "per side" colors = []
# Gray values for i in range(0,Ngrays): colors.append(rgbFromHSL(0.0,0.0,i/(Ngrays-1.0)))
# Hues (S=1, L=0.25,0.5,0.75) for i in range(0,3*Nhues): for L in (0.25,0.5,0.75): colors.append(rgbFromHSL(i/(3.0*Nhues),1.0,L))
# Print colors print """GIMP Palette Name: Test # generated by PaletteGen.py""" knownColors = [ # HTML colors ((128,0,0),"Maroon"), ((255,0,0),"Red"), ((128,128,0),"Olive"), ((255,255,0),"Yellow"), ((0,128,0),"Green"), ((0,255,0),"Lime"), ((0,128,128),"Teal"), ((0,255,255),"Aqua"), ((0,0,128),"Navy"), ((0,0,255),"Blue"), ((128,0,128),"Purple"), ((255,0,255),"Fuchsia"), # SVG colors (capitalized and spaced when actually used in the result) ((0,0,0),"black"), ((105,105,105),"dimgray"), ((128,128,128),"gray"), ((169,169,169),"darkgray"), ((192,192,192),"silver"), ((211,211,211),"lightgray"), ((220,220,220),"gainsboro"), ((245,245,245),"whitesmoke"), ((255,255,255),"white"), ((188,143,143),"rosybrown"), ((205,92,92),"indianred"), ((165,42,42),"brown"), ((178,34,34),"firebrick"), ((240,128,128),"lightcoral"), ((128,0,0),"maroon"), ((139,0,0),"darkred"), ((255,0,0),"red"), ((255,250,250),"snow"), ((255,228,225),"mistyrose"), ((250,128,114),"salmon"), ((255,99,71),"tomato"), ((233,150,122),"darksalmon"), ((255,127,80),"coral"), ((255,69,0),"orangered"), ((255,160,122),"lightsalmon"), ((160,82,45),"sienna"), ((255,245,238),"seashell"), ((210,105,30),"chocolate"), ((139,69,19),"saddlebrown"), ((244,164,96),"sandybrown"), ((255,218,185),"peachpuff"), ((205,133,63),"peru"), ((250,240,230),"linen"), ((255,228,196),"bisque"), ((255,140,0),"darkorange"), ((222,184,135),"burlywood"), ((210,180,140),"tan"), ((250,235,215),"antiquewhite"), ((255,222,173),"navajowhite"), ((255,235,205),"blanchedalmond"), ((255,239,213),"papayawhip"), ((255,228,181),"moccasin"), ((255,165,0),"orange"), ((245,222,179),"wheat"), ((253,245,230),"oldlace"), ((255,250,240),"floralwhite"), ((184,134,11),"darkgoldenrod"), ((218,165,32),"goldenrod"), ((255,248,220),"cornsilk"), ((255,215,0),"gold"), ((240,230,140),"khaki"), ((255,250,205),"lemonchiffon"), ((238,232,170),"palegoldenrod"), ((189,183,107),"darkkhaki"), ((245,245,220),"beige"), ((250,250,210),"lightgoldenrodyellow"), ((128,128,0),"olive"), ((255,255,0),"yellow"), ((255,255,224),"lightyellow"), ((255,255,240),"ivory"), ((107,142,35),"olivedrab"), ((154,205,50),"yellowgreen"), ((85,107,47),"darkolivegreen"), ((173,255,47),"greenyellow"), ((127,255,0),"Chartreuse"), ((124,252,0),"lawngreen"), ((143,188,143),"darkseagreen"), ((34,139,34),"forestgreen"), ((50,205,50),"limegreen"), ((144,238,144),"lightgreen"), ((152,251,152),"palegreen"), ((0,100,0),"darkgreen"), ((0,128,0),"green"), ((0,255,0),"lime"), ((240,255,240),"honeydew"), ((46,139,87),"seagreen"), ((60,179,113),"mediumseagreen"), ((0,255,127),"Spring green"), ((245,255,250),"mintcream"), ((0,250,154),"mediumspringgreen"), ((102,205,170),"mediumaquamarine"), ((127,255,212),"aquamarine"), ((64,224,208),"turquoise"), ((32,178,170),"lightseagreen"), ((72,209,204),"mediumturquoise"), ((47,79,79),"darkslategray"), ((175,238,238),"paleturquoise"), ((0,128,128),"teal"), ((0,139,139),"darkcyan"), ((0,255,255),"cyan"), ((224,255,255),"lightcyan"), ((240,255,255),"azure"), ((0,206,209),"darkturquoise"), ((95,158,160),"cadetblue"), ((176,224,230),"powderblue"), ((173,216,230),"lightblue"), ((0,191,255),"deepskyblue"), ((135,206,235),"skyblue"), ((135,206,250),"lightskyblue"), ((70,130,180),"steelblue"), ((240,248,255),"aliceblue"), ((30,144,255),"dodgerblue"), ((112,128,144),"slategray"), ((119,136,153),"lightslategray"), ((176,196,222),"lightsteelblue"), ((100,149,237),"cornflowerblue"), ((65,105,225),"royalblue"), ((25,25,112),"midnightblue"), ((230,230,250),"lavender"), ((0,0,128),"navy"), ((0,0,139),"darkblue"), ((0,0,205),"mediumblue"), ((0,0,255),"blue"), ((248,248,255),"ghostwhite"), ((106,90,205),"slateblue"), ((72,61,139),"darkslateblue"), ((123,104,238),"mediumslateblue"), ((147,112,219),"mediumpurple"), ((138,43,226),"blueviolet"), ((75,0,130),"indigo"), ((153,50,204),"darkorchid"), ((148,0,211),"darkviolet"), ((186,85,211),"mediumorchid"), ((216,191,216),"thistle"), ((221,160,221),"plum"), ((238,130,238),"violet"), ((128,0,128),"purple"), ((139,0,139),"darkmagenta"), ((255,0,255),"magenta"), ((218,112,214),"orchid"), ((199,21,133),"mediumvioletred"), ((255,20,147),"deeppink"), ((255,105,180),"hotpink"), ((255,240,245),"lavenderblush"), ((219,112,147),"palevioletred"), ((220,20,60),"crimson"), ((255,192,203),"pink"), ((255,182,193),"lightpink"), ] eps = 1.5/255.0 # Use a relatively wide margin when "snapping" to colors for c in colors: ci = None name = None if max(c)-min(c)<eps: # Gray value if c[0]<eps: ci = (0,0,0) name = "Black" elif c[0]>1-eps: ci = (255,255,255) name = "White" else: ci = 3*(round(sum(c)*(255.0/3)),) name = "%u%% Gray" % round(100.0-sum(c)*(100.0/3)) else: for kc,kn in knownColors: diff = (abs(kc[0]-255*c[0]),abs(kc[1]-255*c[1]),abs(kc[2]-255*c[2])) if max(diff)<255*eps: ci = kc name = kn + (" (#%02X%02X%02X)" % ci) break if ci is None: ci = tuple(map(lambda v:round(255*v), c)) name = "#%02X%02X%02X" % ci print "%3u %3u %3u %s" % (ci+(name,))
Jasper's palette gets my vote as Inkscape's default palette. It is much more useful than the current default. (And I won't miss the three light grays.)
Tav
On Wed, 2010-07-07 at 20:44 +0200, Jasper van de Gronde wrote:
In light of Johan's comment about inkscape's default palette and my own experience (I tend to use it a lot as well, but also mostly the first part, but I do miss a few hues and such) I have created a palette (see attachments) that is more or less the same as the first 26 colors of the original Inkscape default, except that:
- It has more choice of hues (it used to only have hues exactly in between two primary colors, and it now also has the colors at one quarter and three quarters).
- In addition to showing a darker variant of each color it also shows a lighter color.
- It does not contain the 2.5%, 5% and 7.5% grays.
This gives a total of 47 colors, which means doesn't scroll even on 1024x768 (windows xp). If necessary for some reason the three extra grays can be added (for a total of 50 colors), still without scrolling.
Jasper's palette gets my vote as Inkscape's default palette. It is much
more useful than the current default. (And I won't miss the three light grays.)
seconded.
so what are the actions we can do today with no argument?
- replace the new default - remove the single hue palettes - add android
anybody able to do this ? I would but I'm still inbetween a move and havent got access to my workstation.
Andy
Andy Fitzsimon wrote:
Jasper's palette gets my vote as Inkscape's default palette. It is much more useful than the current default. (And I won't miss the three light grays.)
seconded.
so what are the actions we can do today with no argument?
- replace the new default
- remove the single hue palettes
- add android
anybody able to do this ? I would but I'm still inbetween a move and havent got access to my workstation.
If nobody objects I could put a slightly improved (added Columns: 3 so it looks nicer in the swatches dialog) version of my palette in bazaar instead of the current default and add android quite easily.
As for the single hue palettes, I got the feeling there was still some discussion about which of them to remove and which of them to keep.
no, put a bullet in them.
we have a HSB slider in our fill and stroke area for a reason.
regardless of the pattern, having a large array of tweening swatches adds little extra inspiration and no extra usefulness.
We only get a few defaults, they need to be useful or inspirational. not single/dual attributed space-suckers.shoot them dead :-)
Andy
On Thu, Jul 8, 2010 at 2:56 PM, Jasper van de Gronde < th.v.d.gronde@...528...> wrote:
Andy Fitzsimon wrote:
Jasper's palette gets my vote as Inkscape's default palette. It is much more useful than the current default. (And I won't miss the three light grays.)
seconded.
so what are the actions we can do today with no argument?
- replace the new default - remove the single hue palettes
- add android
anybody able to do this ? I would but I'm still inbetween a move and havent got access to my workstation.
If nobody objects I could put a slightly improved (added Columns: 3 so it looks nicer in the swatches dialog) version of my palette in bazaar instead of the current default and add android quite easily.
As for the single hue palettes, I got the feeling there was still some discussion about which of them to remove and which of them to keep.
I continue to object to removing the h/s/l section of the default palette. Especially removing the low-saturation colors at once turns Inkscape from an artistic tool into a child's toy.
What about a compromise:
- expand the "primary colors" section of the default
- work on making palette scrollbar smaller or removing it altogether (scroll buttons at the ends?) plus alternative ways of scrolling such as middle-button
- remove single-hue palettes except grays
- contract the two-hue palettes to 50% by removing every second swatch
bulia byak wrote:
I continue to object to removing the h/s/l section of the default palette. Especially removing the low-saturation colors at once turns Inkscape from an artistic tool into a child's toy.
What about a compromise:
- expand the "primary colors" section of the default
How about the attached?
GIMP Palette Name: Inkscape default Columns: 3 # generated by PaletteGen.py 0 0 0 Black 26 26 26 90% Gray 51 51 51 80% Gray 76 76 76 70% Gray 102 102 102 60% Gray 128 128 128 50% Gray 153 153 153 40% Gray 178 178 178 30% Gray 204 204 204 20% Gray 230 230 230 10% Gray 255 255 255 White 128 0 0 Maroon (#800000) 255 0 0 Red (#FF0000) 255 128 128 #FF8080 128 64 0 #804000 255 128 0 #FF8000 255 191 128 #FFBF80 128 128 0 Olive (#808000) 255 255 0 Yellow (#FFFF00) 255 255 128 #FFFF80 64 128 0 #408000 127 255 0 Chartreuse (#7FFF00) 191 255 128 #BFFF80 0 128 0 Green (#008000) 0 255 0 Lime (#00FF00) 128 255 128 #80FF80 0 128 64 #008040 0 255 127 Spring green (#00FF7F) 128 255 191 #80FFBF 0 128 128 Teal (#008080) 0 255 255 Aqua (#00FFFF) 128 255 255 #80FFFF 0 64 128 #004080 0 128 255 #0080FF 128 191 255 #80BFFF 0 0 128 Navy (#000080) 0 0 255 Blue (#0000FF) 128 128 255 #8080FF 64 0 128 #400080 128 0 255 #8000FF 191 128 255 #BF80FF 128 0 128 Purple (#800080) 255 0 255 Fuchsia (#FF00FF) 255 128 255 #FF80FF 128 0 64 #800040 255 0 128 #FF0080 255 128 191 #FF80BF 51 0 0 #330000 102 0 0 #660000 153 0 0 #990000 204 0 0 #CC0000 255 0 0 Red (#FF0000) 255 51 51 #FF3333 255 102 102 #FF6666 255 153 153 #FF9999 255 204 204 #FFCCCC 61 12 12 #3D0C0C 121 24 24 #791818 182 36 36 #B62424 219 73 73 #DB4949 231 134 134 #E78686 243 194 194 #F3C2C2 85 43 43 #552B2B 170 85 85 #AA5555 212 170 170 #D4AAAA 51 26 0 #331A00 102 51 0 #663300 153 77 0 #994D00 204 102 0 #CC6600 255 128 0 #FF8000 255 153 51 #FF9933 255 179 102 #FFB366 255 204 153 #FFCC99 255 230 204 #FFE6CC 61 36 12 #3D240C 121 73 24 #794918 182 109 36 #B66D24 219 146 73 #DB9249 231 182 134 #E7B686 243 219 194 #F3DBC2 85 64 43 #55402B 170 128 85 #AA8055 212 191 170 #D4BFAA 51 51 0 #333300 102 102 0 #666600 153 153 0 #999900 204 204 0 #CCCC00 255 255 0 Yellow (#FFFF00) 255 255 51 #FFFF33 255 255 102 #FFFF66 255 255 153 #FFFF99 255 255 204 #FFFFCC 61 61 12 #3D3D0C 121 121 24 #797918 182 182 36 #B6B624 219 219 73 #DBDB49 231 231 134 #E7E786 243 243 194 #F3F3C2 85 85 43 #55552B 170 170 85 #AAAA55 212 212 170 #D4D4AA 26 51 0 #1A3300 51 102 0 #336600 77 153 0 #4D9900 102 204 0 #66CC00 127 255 0 Chartreuse (#7FFF00) 153 255 51 #99FF33 179 255 102 #B3FF66 204 255 153 #CCFF99 230 255 204 #E6FFCC 36 61 12 #243D0C 73 121 24 #497918 109 182 36 #6DB624 146 219 73 #92DB49 182 231 134 #B6E786 219 243 194 #DBF3C2 64 85 43 #40552B 128 170 85 #80AA55 191 212 170 #BFD4AA 0 51 0 #003300 0 102 0 #006600 0 153 0 #009900 0 204 0 #00CC00 0 255 0 Lime (#00FF00) 51 255 51 #33FF33 102 255 102 #66FF66 153 255 153 #99FF99 204 255 204 #CCFFCC 12 61 12 #0C3D0C 24 121 24 #187918 36 182 36 #24B624 73 219 73 #49DB49 134 231 134 #86E786 194 243 194 #C2F3C2 43 85 43 #2B552B 85 170 85 #55AA55 170 212 170 #AAD4AA 0 51 26 #00331A 0 102 51 #006633 0 153 77 #00994D 0 204 102 #00CC66 0 255 127 Spring green (#00FF7F) 51 255 153 #33FF99 102 255 179 #66FFB3 153 255 204 #99FFCC 204 255 230 #CCFFE6 12 61 36 #0C3D24 24 121 73 #187949 36 182 109 #24B66D 73 219 146 #49DB92 134 231 182 #86E7B6 194 243 219 #C2F3DB 43 85 64 #2B5540 85 170 128 #55AA80 170 212 191 #AAD4BF 0 51 51 #003333 0 102 102 #006666 0 153 153 #009999 0 204 204 #00CCCC 0 255 255 Aqua (#00FFFF) 51 255 255 #33FFFF 102 255 255 #66FFFF 153 255 255 #99FFFF 204 255 255 #CCFFFF 12 61 61 #0C3D3D 24 121 121 #187979 36 182 182 #24B6B6 73 219 219 #49DBDB 134 231 231 #86E7E7 194 243 243 #C2F3F3 43 85 85 #2B5555 85 170 170 #55AAAA 170 212 212 #AAD4D4 0 26 51 #001A33 0 51 102 #003366 0 77 153 #004D99 0 102 204 #0066CC 0 128 255 #0080FF 51 153 255 #3399FF 102 179 255 #66B3FF 153 204 255 #99CCFF 204 230 255 #CCE6FF 12 36 61 #0C243D 24 73 121 #184979 36 109 182 #246DB6 73 146 219 #4992DB 134 182 231 #86B6E7 194 219 243 #C2DBF3 43 64 85 #2B4055 85 128 170 #5580AA 170 191 212 #AABFD4 0 0 51 #000033 0 0 102 #000066 0 0 153 #000099 0 0 205 Medium blue (#0000CD) 0 0 255 Blue (#0000FF) 51 51 255 #3333FF 102 102 255 #6666FF 153 153 255 #9999FF 204 204 255 #CCCCFF 12 12 61 #0C0C3D 24 24 121 #181879 36 36 182 #2424B6 73 73 219 #4949DB 134 134 231 #8686E7 194 194 243 #C2C2F3 43 43 85 #2B2B55 85 85 170 #5555AA 170 170 212 #AAAAD4 26 0 51 #1A0033 51 0 102 #330066 77 0 153 #4D0099 102 0 204 #6600CC 128 0 255 #8000FF 153 51 255 #9933FF 179 102 255 #B366FF 204 153 255 #CC99FF 230 204 255 #E6CCFF 36 12 61 #240C3D 73 24 121 #491879 109 36 182 #6D24B6 146 73 219 #9249DB 182 134 231 #B686E7 219 194 243 #DBC2F3 64 43 85 #402B55 128 85 170 #8055AA 191 170 212 #BFAAD4 51 0 51 #330033 102 0 102 #660066 153 0 153 #990099 204 0 204 #CC00CC 255 0 255 Fuchsia (#FF00FF) 255 51 255 #FF33FF 255 102 255 #FF66FF 255 153 255 #FF99FF 255 204 255 #FFCCFF 61 12 61 #3D0C3D 121 24 121 #791879 182 36 182 #B624B6 219 73 219 #DB49DB 231 134 231 #E786E7 243 194 243 #F3C2F3 85 43 85 #552B55 170 85 170 #AA55AA 212 170 212 #D4AAD4 51 0 26 #33001A 102 0 51 #660033 153 0 77 #99004D 204 0 102 #CC0066 255 0 128 #FF0080 255 51 153 #FF3399 255 102 179 #FF66B3 255 153 204 #FF99CC 255 204 230 #FFCCE6 61 12 36 #3D0C24 121 24 73 #791849 182 36 109 #B6246D 219 73 146 #DB4992 231 134 182 #E786B6 243 194 219 #F3C2DB 85 43 64 #552B40 170 85 128 #AA5580 212 170 191 #D4AABF
On Thu, 2010-07-08 at 19:59 +0200, Jasper van de Gronde wrote:
bulia byak wrote:
I continue to object to removing the h/s/l section of the default palette. Especially removing the low-saturation colors at once turns Inkscape from an artistic tool into a child's toy.
What about a compromise:
- expand the "primary colors" section of the default
How about the attached?
The expanded primaries aren't bad to me... but the rest just feels like it's missing a whole lot. I'll be honest, the current default is what I almost always use (I rarely open the F&S dialog it's just that good). The one that is proposed here gives me the impression that I'd be using the F&S dialog more again. I'll leave it at that... my personal opinion is that overall it feels like a step backwards to me for a good portion of it.
Cheers, Josh
On Thu, Jul 8, 2010 at 3:59 PM, Joshua A. Andler <scislac@...400...> wrote:
The expanded primaries aren't bad to me... but the rest just feels like it's missing a whole lot. I'll be honest, the current default is what I almost always use (I rarely open the F&S dialog it's just that good). The one that is proposed here gives me the impression that I'd be using the F&S dialog more again. I'll leave it at that... my personal opinion is that overall it feels like a step backwards to me for a good portion of it.
Ditto.
If we agree that a default totally without scrolling is not feasible, then what is the profit in reducing its length slightly? Can't we just extend the primaries and leave the rest as is?
And even if we must reduce the h/s/l, you are going too far IMHO. The old grouping was 11/9/7, yours is 9/6/3. I might perhaps agree to a compromise like 10/8/6, but again, I just don't see why we must reduce this at all.
And I also strongly object to dropping the light grays (5% and 2.5%). They are useful.
I have followed this discussion passively untill now ... what really matters (and what has the original background for this discussion) is how Inkscape presents to new users and also people involved with occasional image editing, as it is the major part of the user base. Having too much options is distracting for this group of people. I have to admit that I never ever used any other palette than the default one. And I also have never used the right part of the default palette. Although I use it for a long time, I do not consider myself as an indeep user, nor I am a graphics specialist. So in a way I am pro sanitising the color palette, but on the other hand you have power users who have needs that are quite distinct from the needs of most users.
So why can not we add an extra tab in the preferences, where you can modify the number of selectable colour palettes. Also I would be much in favour of being able to select the available colour palettes in the installer (which is far far to simple for the program that Inkscape actually is: we do an aesome amount of work on the program, but what do we do with the installer?). This way you address the complexity for both new users as well as the needs for power users.
Secondly, I agree to the fact that the default palette is far too big (the scrollbar is really distracting). From a user interface point of perspective, there is a contradiction between complexity (too much colors most of the time) and accessibility to colours (you want colour palettes as big as possible). Therefore I would focus on adding a button to the right of the colour palette bar to access a new dialog consisting of part of the Fill and stroke dialog (I stress "part" because of interface complexity). So the new dialog window would default to show the colour wheel (the other three colour selection methods RGB, CMYK, and HSV would be present as well in tabs). This option, an easily accessible colour dialog, would in my humble opinion address most of the issues for everybody.
Regards K.
2010/7/8 bulia byak <buliabyak@...400...>:
If we agree that a default totally without scrolling is not feasible, then what is the profit in reducing its length slightly? Can't we just extend the primaries and leave the rest as is?
And even if we must reduce the h/s/l, you are going too far IMHO. The old grouping was 11/9/7, yours is 9/6/3. I might perhaps agree to a compromise like 10/8/6, but again, I just don't see why we must reduce this at all.
And I also strongly object to dropping the light grays (5% and 2.5%). They are useful.
On Thu, Jul 8, 2010 at 4:56 PM, Kris De Gussem <kris.degussem@...400...> wrote:
So why can not we add an extra tab in the preferences, where you can modify the number of selectable colour palettes.
And then add another extra tab, where you can modify the number of such extra tabs... :)
It's a road to nowhere. We must work out something that works for newbies but does not make the life of pros any harder (it's hard enough already).
in favour of being able to select the available colour palettes in the installer (which is far far to simple for the program that Inkscape actually is: we do an aesome amount of work on the program, but what do we do with the installer?). This way you address the complexity for both new users as well as the needs for power users.
In what way do the extra palettes hurt anyone? I'm sure 99% of users never even click that tiny button and are blissfully unaware of their existence. It's not like they are pushed on you.
Secondly, I agree to the fact that the default palette is far too big (the scrollbar is really distracting).
Scrollbar is ugly, I agree. But curing this problem by removing most of the palette is like curing headache by guillotine :)
Therefore I would focus on adding a button to the right of the colour palette bar to access a new dialog consisting of part of the Fill and stroke dialog (I stress "part" because of interface complexity).
I think that's a cure that is much worse than the disease. Instead of the mild inconvenience of scrolling, you will have a major inconvenience of a whole new dialog, confusingly similar but-not-quite to an existing dialog.
the new dialog window would default to show the colour wheel (the other three colour selection methods RGB, CMYK, and HSV would be present as well in tabs).
You seem to miss the point of a palette. It's not there to provide you access to _any_ color. If that was so, indeed a single color wheel would work better. But the palette is there to give you _reproducible_ color points. If you clicked some color, you can remember what you clicked and click it again for the exact same color. That is something color wheel cannot do.
This is why I agree that we should shorten the single-hue palettes, where the differences between adjacent colors are too small and therefore remembering where exactly you clicked is almost impossible. But in the default palette, despite its size, it is possible and easy. Its way of grouping colors per h/s/l, with s groupings of unequal length, makes visual orientation and "swatch memory" quite natural.
2010/7/8 bulia byak <buliabyak@...400...>:
Therefore I would focus on adding a button to the right of the colour palette bar to access a new dialog consisting of part of the Fill and stroke dialog (I stress "part" because of interface complexity).
I think that's a cure that is much worse than the disease. Instead of the mild inconvenience of scrolling, you will have a major inconvenience of a whole new dialog, confusingly similar but-not-quite to an existing dialog.
No. Not necesserely at all. ;-) see below.
the new dialog window would default to show the colour wheel (the other three colour selection methods RGB, CMYK, and HSV would be present as well in tabs).
You seem to miss the point of a palette. It's not there to provide you access to _any_ color. If that was so, indeed a single color wheel would work better. But the palette is there to give you _reproducible_ color points. If you clicked some color, you can remember what you clicked and click it again for the exact same color. That is something color wheel cannot do.
Yes, because you can have some 10 or 20 entries in a custom colour palette where you store your own frequently used palettes. With one click away from the colour wheel, you should be able to save a colour in some new custom palette (either integrated in the rest of the palette UI or lets say a clearly always visible and distint small palette at the left of the palette bar at the bottom). Such a thing is imho a really missing feature.
On Thu, Jul 8, 2010 at 5:56 PM, Kris De Gussem <kris.degussem@...400...> wrote:
You seem to miss the point of a palette. It's not there to provide you access to _any_ color. If that was so, indeed a single color wheel would work better. But the palette is there to give you _reproducible_ color points. If you clicked some color, you can remember what you clicked and click it again for the exact same color. That is something color wheel cannot do.
Yes, because you can have some 10 or 20 entries in a custom colour palette where you store your own frequently used palettes. With one click away from the colour wheel, you should be able to save a colour in some new custom palette (either integrated in the rest of the palette UI or lets say a clearly always visible and distint small palette at the left of the palette bar at the bottom). Such a thing is imho a really missing feature.
Yes, and as far as I know work is being done on saving your colors to a palette. But this has little to do with our discussion of the default palette.
bulia byak wrote:
... If we agree that a default totally without scrolling is not feasible, then what is the profit in reducing its length slightly? Can't we just extend the primaries and leave the rest as is?
Because this is an opportunity to make it better :) But you are right that if we fix scrolling to be a lot nicer it won't be such an issue to add some more colors (especially if the most basic part can be accessed directly).
And even if we must reduce the h/s/l, you are going too far IMHO. The old grouping was 11/9/7, yours is 9/6/3. I might perhaps agree to a compromise like 10/8/6, but again, I just don't see why we must reduce this at all.
Fair point, but if adding so many colors I would prefer them to be distributed a bit more perceptually uniform, as I can then take the n-th step of red and the same of step of blue and trust that the lightness and saturation are more or less matched). Of course this is definitely not trivial to do well, but still.
And I also strongly object to dropping the light grays (5% and 2.5%). They are useful.
Assuming you mean they are useful because of gamma and such I've now chosen the values to be linear in "linearRGB" and then transformed them to sRGB, this gives finer steps in the high regions and coarser steps in the low regions.
Also, instead of adding back in the old HSL sequences I've used some color space transformations (using CIE Lab with the same whitepoint as sRGB) to create a similar series of sequences (using the same hues as in the first part). This should make it easier to select different hues with the same (perceived) saturation and lightness. I've attached the generator, so feel free to vary on the theme (for instance, I've chosen to still let HSL determine the hue, but this can also be done in Lab, giving less emphasis on green).
So this palette tries to give: - A slightly smaller, but "fairer" range of grays. - Easy access to a wider variety of hues and also some lighter colors than the original inkscape default. - Hopefully more perceptually uniform sequences of varying lightness and saturation for the same set of hues.
Do people indeed perceive these colors as more perceptually uniform than in the old Inkscape default? Is this perceived as an advantage? Is the distribution of hues reasonable? Any constructive feedback is appreciated.
GIMP Palette Name: Inkscape default Columns: 3 # generated by PaletteGen.py 0 0 0 Black 89 89 89 90% Gray 124 124 124 80% Gray 149 149 149 70% Gray 170 170 170 60% Gray 188 188 188 50% Gray 203 203 203 40% Gray 218 218 218 30% Gray 231 231 231 20% Gray 243 243 243 10% Gray 255 255 255 White 128 0 0 Maroon (#800000) 255 0 0 Red (#FF0000) 255 128 128 #FF8080 128 64 0 #804000 255 128 0 #FF8000 255 191 128 #FFBF80 128 128 0 Olive (#808000) 255 255 0 Yellow (#FFFF00) 255 255 128 #FFFF80 64 128 0 #408000 127 255 0 Chartreuse (#7FFF00) 191 255 128 #BFFF80 0 128 0 Green (#008000) 0 255 0 Lime (#00FF00) 128 255 128 #80FF80 0 128 64 #008040 0 255 127 Spring green (#00FF7F) 128 255 191 #80FFBF 0 128 128 Teal (#008080) 0 255 255 Aqua (#00FFFF) 128 255 255 #80FFFF 0 64 128 #004080 0 128 255 #0080FF 128 191 255 #80BFFF 0 0 128 Navy (#000080) 0 0 255 Blue (#0000FF) 128 128 255 #8080FF 64 0 128 #400080 128 0 255 #8000FF 191 128 255 #BF80FF 128 0 128 Purple (#800080) 255 0 255 Fuchsia (#FF00FF) 255 128 255 #FF80FF 128 0 64 #800040 255 0 128 #FF0080 255 128 191 #FF80BF 43 0 0 #2B0000 79 0 0 #4F0000 116 0 0 #740000 155 0 0 #9B0000 197 0 0 #C50000 239 0 0 #EF0000 255 79 49 #FF4F31 255 130 101 #FF8265 255 170 148 #FFAA94 255 205 192 #FFCDC0 255 239 234 #FFEFEA 47 0 0 #2F0000 91 0 0 #5B0000 138 0 0 #8A0000 182 24 9 #B61809 217 62 36 #D93E24 253 94 63 #FD5E3F 255 148 122 #FF947A 255 193 177 #FFC1B1 255 235 230 #FFEBE6 48 7 0 #300700 83 39 28 #53271C 120 71 59 #78473B 159 106 92 #9F6A5C 199 142 128 #C78E80 240 181 165 #F0B5A5 255 229 222 #FFE5DE 43 0 0 #2B0000 66 20 0 #421400 89 41 0 #592900 113 62 0 #713E00 139 84 0 #8B5400 166 106 0 #A66A00 194 129 0 #C28100 223 152 0 #DF9800 252 177 0 #FCB100 255 209 132 #FFD184 255 240 219 #FFF0DB 43 4 0 #2B0400 66 33 0 #422100 94 58 0 #5E3A00 125 84 0 #7D5400 158 110 0 #9E6E00 192 138 0 #C08A00 228 167 0 #E4A700 255 199 90 #FFC75A 255 237 211 #FFEDD3 35 18 0 #231200 66 49 12 #42310C 102 81 43 #66512B 139 115 76 #8B734C 178 152 111 #B2986F 219 191 148 #DBBF94 255 231 197 #FFE7C5 29 11 0 #1D0B00 43 34 0 #2B2200 53 57 0 #353900 69 80 0 #455000 88 103 0 #586700 111 126 0 #6F7E00 135 150 0 #879600 161 175 0 #A1AF00 188 200 0 #BCC800 216 226 0 #D8E200 244 252 0 #F4FC00 28 16 0 #1C1000 44 43 0 #2C2B00 65 69 0 #414500 91 96 0 #5B6000 120 124 0 #787C00 151 153 0 #979900 183 183 0 #B7B700 216 214 49 #D8D631 249 245 83 #F9F553 27 22 0 #1B1600 54 53 12 #36350C 88 86 43 #58562B 124 121 76 #7C794C 162 158 111 #A29E6F 202 196 148 #CAC494 242 236 186 #F2ECBA 0 20 0 #001400 17 40 0 #112800 18 63 0 #123F00 27 87 0 #1B5700 38 111 0 #266F00 50 136 0 #328800 75 161 0 #4BA100 101 187 0 #65BB00 127 213 0 #7FD500 153 239 0 #99EF00 221 255 136 #DDFF88 2 23 0 #021700 24 47 0 #182F00 35 75 0 #234B00 58 103 0 #3A6700 86 132 0 #568400 115 162 0 #73A200 145 192 32 #91C020 177 223 68 #B1DF44 211 255 104 #D3FF68 18 24 0 #121800 44 56 16 #2C3810 77 89 47 #4D592F 112 124 80 #707C50 149 161 115 #95A173 188 200 152 #BCC898 228 240 191 #E4F0BF 0 20 0 #001400 2 42 0 #022A00 0 64 0 #004000 0 88 0 #005800 0 113 0 #007100 0 139 0 #008B00 0 166 0 #00A600 0 193 0 #00C100 0 222 0 #00DE00 0 251 0 #00FB00 208 255 192 #D0FFC0 0 23 0 #001700 1 49 0 #013100 0 77 0 #004D00 0 107 0 #006B00 0 139 0 #008B00 55 169 40 #37A928 91 200 71 #5BC847 124 232 101 #7CE865 195 255 176 #C3FFB0 1 27 0 #011B00 31 58 24 #1F3A18 63 91 55 #3F5B37 98 127 88 #627F58 134 164 124 #86A47C 172 203 161 #ACCBA1 211 244 200 #D3F4C8 0 20 0 #001400 0 42 0 #002A00 0 64 8 #004008 0 88 20 #005814 0 112 39 #007027 0 138 58 #008A3A 0 164 79 #00A44F 0 191 100 #00BF64 0 219 123 #00DB7B 0 247 150 #00F796 195 255 228 #C3FFE4 0 23 0 #001700 0 49 8 #003108 0 77 32 #004D20 0 106 56 #006A38 0 137 81 #008951 0 169 108 #00A96C 0 202 136 #00CA88 0 236 165 #00ECA5 179 255 222 #B3FFDE 0 27 5 #001B05 0 60 40 #003C28 36 94 72 #245E48 73 130 106 #49826A 109 168 143 #6DA88F 147 207 181 #93CFB5 186 248 220 #BAF8DC 0 18 23 #001217 0 39 51 #002733 0 60 76 #003C4C 0 82 99 #005263 0 106 122 #006A7A 0 131 146 #008392 0 157 170 #009DAA 0 184 196 #00B8C4 0 211 222 #00D3DE 0 240 240 #00F0F0 183 255 254 #B7FFFE 0 22 22 #001616 0 46 53 #002E35 0 73 80 #004950 0 102 108 #00666C 0 132 137 #008489 0 164 168 #00A4A8 0 197 200 #00C5C8 0 231 233 #00E7E9 162 255 254 #A2FFFE 0 26 25 #001A19 0 58 59 #003A3B 0 94 94 #005E5E 48 131 130 #308382 89 169 168 #59A9A8 128 208 207 #80D0CF 168 249 247 #A8F9F7 0 0 75 #00004B 0 19 114 #001372 0 40 150 #002896 0 66 176 #0042B0 0 94 194 #005EC2 0 122 209 #007AD1 0 150 222 #0096DE 0 179 235 #00B3EB 107 201 255 #6BC9FF 176 222 255 #B0DEFF 230 244 255 #E6F4FF 0 9 68 #000944 0 36 104 #002468 0 63 139 #003F8B 0 91 175 #005BAF 0 121 211 #0079D3 0 155 235 #009BEB 34 189 255 #22BDFF 155 215 255 #9BD7FF 224 241 255 #E0F1FF 0 23 46 #00172E 0 55 83 #003753 21 90 122 #155A7A 67 125 159 #437D9F 107 162 198 #6BA2C6 146 201 239 #92C9EF 215 238 255 #D7EEFF 0 0 75 #00004B 0 0 132 #000084 0 0 190 #0000BE 26 8 245 #1A08F5 91 51 255 #5B33FF 129 85 255 #8155FF 159 116 255 #9F74FF 184 147 255 #B893FF 206 177 255 #CEB1FF 227 208 255 #E3D0FF 246 239 255 #F6EFFF 0 0 82 #000052 30 12 133 #1E0C85 68 40 163 #4428A3 101 66 194 #6542C2 133 94 226 #855EE2 165 123 255 #A57BFF 194 160 255 #C2A0FF 220 198 255 #DCC6FF 244 236 255 #F4ECFF 26 15 49 #1A0F31 58 45 82 #3A2D52 92 77 117 #5C4D75 128 112 154 #80709A 165 148 193 #A594C1 205 187 233 #CDBBE9 240 230 255 #F0E6FF 4 0 73 #040049 43 0 111 #2B006F 79 0 146 #4F0092 114 0 183 #7200B7 151 0 221 #9700DD 189 17 255 #BD11FF 205 87 255 #CD57FF 220 130 255 #DC82FF 232 167 255 #E8A7FF 242 203 255 #F2CBFF 251 238 255 #FBEEFF 29 0 62 #1D003E 68 0 105 #440069 107 8 146 #6B0892 138 48 176 #8A30B0 169 78 207 #A94ECF 201 108 239 #C96CEF 225 147 255 #E193FF 239 191 255 #EFBFFF 250 234 255 #FAEAFF 35 11 44 #230B2C 67 42 77 #432A4D 102 74 111 #664A6F 138 109 148 #8A6D94 176 145 186 #B091BA 216 184 226 #D8B8E2 249 228 255 #F9E4FF 34 0 43 #22002B 66 0 76 #42004C 99 0 108 #63006C 134 0 141 #86008D 171 0 176 #AB00B0 209 0 213 #D100D5 250 0 250 #FA00FA 255 104 251 #FF68FB 255 156 249 #FF9CF9 255 198 250 #FFC6FA 255 237 253 #FFEDFD 39 0 43 #27002B 78 0 81 #4E0051 120 0 121 #780079 159 25 159 #9F199F 191 64 189 #BF40BD 224 96 220 #E060DC 255 129 250 #FF81FA 255 185 249 #FFB9F9 255 232 252 #FFE8FC 41 8 40 #290828 73 39 72 #492748 108 72 106 #6C486A 145 106 142 #916A8E 184 143 180 #B88FB4 224 181 220 #E0B5DC 255 226 252 #FFE2FC 41 0 11 #29000B 76 0 40 #4C0028 110 0 65 #6E0041 147 0 93 #93005D 185 0 123 #B9007B 224 0 161 #E000A1 255 48 190 #FF30BE 255 117 203 #FF75CB 255 162 216 #FFA2D8 255 201 231 #FFC9E7 255 237 247 #FFEDF7 45 0 22 #2D0016 86 0 54 #560036 129 0 88 #810058 175 0 126 #AF007E 214 41 159 #D6299F 248 80 190 #F850BE 255 138 208 #FF8AD0 255 188 226 #FFBCE2 255 233 245 #FFE9F5 46 4 32 #2E0420 80 36 63 #50243F 116 69 97 #744561 154 104 132 #9A6884 193 141 170 #C18DAA 233 179 209 #E9B3D1 255 227 242 #FFE3F2
import math import numpy as np import numpy.linalg as la
# This method is more consistent than colorsys.hls_to_rgb # Specifically, hls_to_rgb sometimes returns a value that is rounded # to 0x7F and sometimes a value that is rounded to 0x80 when it should # output 0.5*255=127.5. def rgbFromHSL(H,S=None,L=None): if S is None and L is None and type(H) is tuple: H,S,L = H C = 2.0*L*S if L<=0.5 else (2.0-2.0*L)*S H1 = (float(H)%1.0)*6.0 X = C*(1-abs(H1 % 2 - 1)) if 0<=H1<1: c1 = (C,X,0) elif 1<=H1<2: c1 = (X,C,0) elif 2<=H1<3: c1 = (0,C,X) elif 3<=H1<4: c1 = (0,X,C) elif 4<=H1<5: c1 = (X,0,C) elif 5<=H1<6: c1 = (C,0,X) m = L - C/2.0 return tuple(map(lambda c:c+m,c1))
# Conversion from Lab and more RGB2XYZ = np.array([[0.4124,0.3576,0.1805],[0.2126,0.7152,0.0722],[0.0193,0.1192,0.9505]]) XYZ2RGB = np.array([[3.2410,-1.5374,-0.4986],[-0.9692,1.8760,0.0416],[0.0556,-0.2040,1.0570]]) iters = 0 while max(np.max(np.max(np.abs(la.inv(RGB2XYZ)-XYZ2RGB))),np.max(np.max(np.abs(la.inv(XYZ2RGB)-RGB2XYZ))))>1e-14 and iters<1e6: iters += 1 XYZ2RGBn = XYZ2RGB + (1/16.0)*(la.inv(RGB2XYZ)-XYZ2RGB) RGB2XYZ += (1/16.0)*(la.inv(XYZ2RGB)-RGB2XYZ) XYZ2RGB = XYZ2RGBn #Xn, Yn, Zn = 0.94811, 1.0, 1.07304 Xn, Yn, Zn = tuple(np.sum(RGB2XYZ,axis=1)) # This makes the sRGB gray axis align exactly with the Lab gray axis
def LabFromXYZ(X,Y=None,Z=None): if Y is None and Z is None and type(X) is tuple: X,Y,Z = X delta = 6/29.0 f = lambda t: t**(1/3.0) if t>delta**3 else t/(3.0*delta**2)+2*delta/3.0 L = 116*f(Y/Yn)-16 a = 500*(f(X/Xn)-f(Y/Yn)) b = 200*(f(Y/Yn)-f(Z/Zn)) return (L,a,b)
def XYZFromLab(L,a=None,b=None): if a is None and b is None and type(L) is tuple: L,a,b = L fy = (L+16)/116.0 fx = fy + a/500.0 fz = fy - b/200.0 delta = 6/29.0 X = (fx**3) if fx>delta else (fx-16/116.0)*3*delta*delta Y = (fy**3) if fy>delta else (fy-16/116.0)*3*delta*delta Z = (fz**3) if fz>delta else (fz-16/116.0)*3*delta*delta return (X*Xn,Y*Yn,Z*Zn)
def XYZFromLinearRGB(R,G=None,B=None): if G is None and B is None and type(R) is tuple: R,G,B = R return tuple(np.dot(RGB2XYZ,np.array([R,G,B])))
def linearRGBFromXYZ(X,Y=None,Z=None): if Y is None and Z is None and type(X) is tuple: X,Y,Z = X C = tuple(np.dot(XYZ2RGB,np.array([X,Y,Z]))) return tuple(map(lambda c:max(0,min(1,c)), C))
def linearCFromSC(C): a = 0.055 return C/19.92 if C<=0.04045 else ((C+a)/(1+a))**2.4
def sCFromLinearC(C): a = 0.055 return 12.92*C if C<=0.0031308 else (1+a)*(C**(1/2.4))-a
def linearRGBFromSRGB(R,G=None,B=None): if G is None and B is None and type(R) is tuple: R,G,B = R R,G,B = tuple(map(lambda c:max(0,min(1,c)), (R,G,B))) return tuple(map(linearCFromSC, (R,G,B)))
def sRGBFromLinearRGB(R,G=None,B=None): if G is None and B is None and type(R) is tuple: R,G,B = R R,G,B = tuple(map(lambda c:max(0,min(1,c)), (R,G,B))) return tuple(map(sCFromLinearC, (R,G,B)))
def LabFromLinearRGB(R,G=None,B=None): return LabFromXYZ(XYZFromLinearRGB(R,G,B))
def linearRGBFromLab(L,a=None,b=None): return linearRGBFromXYZ(XYZFromLab(L,a,b))
def LabFromSRGB(R,G=None,B=None): return LabFromXYZ(XYZFromLinearRGB(linearRGBFromSRGB(R,G,B)))
def sRGBFromLab(L,a=None,b=None): return sRGBFromLinearRGB(linearRGBFromXYZ(XYZFromLab(L,a,b)))
def sRGBFromLCH(L,C=None,H=None): return sRGBFromLinearRGB(linearRGBFromXYZ(XYZFromLab(LabFromLCH(L,C,H))))
# Helpers def sRGBFromLabIterL1(Lo,ao=None,bo=None): if ao is None and bo is None and type(Lo) is tuple: Lo,ao,bo = Lo L,a,b = Lo,ao,bo iters = 0 while True: iters += 1 if iters>10000 or math.sqrt(a*a+b*b)<1e-6: return sRGBFromLab(L,a,b) Ln,an,bn = LabFromLinearRGB(linearRGBFromLab(L,a,b)) if (math.sqrt((Ln-L)**2+(an-a)**2+(bn-b)**2)<1e-2): break a,b = a*0.99,b*0.99 return sRGBFromLab(L,a,b)
def sRGBFromLabIterL2(Lo,ao=None,bo=None): if ao is None and bo is None and type(Lo) is tuple: Lo,ao,bo = Lo L,a,b = Lo,ao,bo iters = 0 while True: iters += 1 if iters>10000: print "bailout (%f,%f,%f)" % (L,a,b) break if math.sqrt(a*a+b*b)<1e-6: break Ln,an,bn = LabFromLinearRGB(linearRGBFromLab(L,a,b)) Ln,an,bn = (2*L+3*Lo+Ln)/6.0,(2*a+3*ao+an)/6.0,(2*b+3*bo+bn)/6.0 if (math.sqrt((Ln-L)**2+(an-a)**2+(bn-b)**2)<1e-2): break L,a,b = Ln,an,bn return sRGBFromLab(L,a,b)
def sRGBFromLabIterL4(Lo,ao=None,bo=None): if ao is None and bo is None and type(Lo) is tuple: Lo,ao,bo = Lo L,a,b = Lo,ao,bo iters = 0 while True: iters += 1 if iters>10000 or math.sqrt(a*a+b*b)<1e-6: return sRGBFromLab(L,a,b) Ln,an,bn = LabFromLinearRGB(linearRGBFromLab(L,a,b)) if (math.sqrt((Ln-L)**2+(an-a)**2+(bn-b)**2)<1e-3): break l = (an*a + bn*b)/(a*a+b*b) a,b = l*a,l*b a,b = (a+2*an)/3.0,(b+2*bn)/3.0 return sRGBFromLab(L,a,b)
def sRGBFromLabIterL5(Lo,ao=None,bo=None): if ao is None and bo is None and type(Lo) is tuple: Lo,ao,bo = Lo L,a,b = Lo,ao,bo iters = 0 while True: iters += 1 if iters>10000 or math.sqrt(a*a+b*b)<1e-6: return sRGBFromLab(L,a,b) Ln,an,bn = LabFromLinearRGB(linearRGBFromLab(L,a,b)) if (math.sqrt((Ln-L)**2+(an-a)**2+(bn-b)**2)<1e-3): break l = (an*a + bn*b)/(a*a+b*b) a,b = 0.5*(l+1)*a,0.5*(l+1)*b return sRGBFromLab(L,a,b)
# Initialization # Note that the numbers of colors used make the palette align nicely in # the swatches dialog with three columns. Ncols = 3 # The number of columns Ngrays = 10+1 # In increments of 10% Nhues = 4 # The number of hues "per side" Nlights = 11 # Number of lightness values Nsats = 3 # The number of saturation values colors = []
# Gray values for i in range(0,Ngrays): colors.append(sRGBFromLinearRGB(rgbFromHSL(0.0,0.0,i/(Ngrays-1.0))))
# Hues (S=1, L=0.25,0.5,0.75) for h in range(0,3*Nhues): for L in (0.25,0.5,0.75): colors.append(rgbFromHSL(h/(3.0*Nhues),1.0,L))
# HSL palette (hue and saturation are controlled by HSL, lightness is done using Lab) sStepSize = 1.0/(Nsats-0.5) #Lo,ao,bo = LabFromXYZ(XYZFromLinearRGB(1,0,0)) #baseAngle = math.atan2(bo,ao) for h in range(0, 3*Nhues): Lo,ao,bo = LabFromXYZ(XYZFromLinearRGB(rgbFromHSL(h/(3.0*Nhues),1.0,0.5))) Co = math.sqrt(ao*ao+bo*bo) #H = 2*math.pi*h/(3*Nhues)+baseAngle for s in range(0, Nsats): sVal = 1-(s*sStepSize) a = ao*sVal*128.0/Co b = bo*sVal*128.0/Co #a = sVal*128.0*math.cos(H) #b = sVal*128.0*math.asinhsin(H) lSteps = Nlights - 2*s lStepSize = 1.0 / lSteps for l in range(0, lSteps): L = (l+0.5)*lStepSize if 100*L<=Lo: colors.append(sRGBFromLabIterL4(100*L,a,b)) else: colors.append(sRGBFromLabIterL5(100*L,a,b))
# Print colors print """GIMP Palette Name: Inkscape default Columns: %u # generated by PaletteGen.py""" % Ncols knownColors = [ # HTML colors ((128,0,0),"Maroon"), ((255,0,0),"Red"), ((128,128,0),"Olive"), ((255,255,0),"Yellow"), ((0,128,0),"Green"), ((0,255,0),"Lime"), ((0,128,128),"Teal"), ((0,255,255),"Aqua"), ((0,0,128),"Navy"), ((0,0,255),"Blue"), ((128,0,128),"Purple"), ((255,0,255),"Fuchsia"), # SVG colors (capitalized and spaced when actually used in the result) ((0,0,0),"black"), ((105,105,105),"dimgray"), ((128,128,128),"gray"), ((169,169,169),"darkgray"), ((192,192,192),"silver"), ((211,211,211),"lightgray"), ((220,220,220),"gainsboro"), ((245,245,245),"whitesmoke"), ((255,255,255),"white"), ((188,143,143),"rosybrown"), ((205,92,92),"indianred"), ((165,42,42),"brown"), ((178,34,34),"firebrick"), ((240,128,128),"lightcoral"), ((128,0,0),"maroon"), ((139,0,0),"darkred"), ((255,0,0),"red"), ((255,250,250),"snow"), ((255,228,225),"mistyrose"), ((250,128,114),"salmon"), ((255,99,71),"tomato"), ((233,150,122),"darksalmon"), ((255,127,80),"Coral"), ((255,69,0),"orangered"), ((255,160,122),"lightsalmon"), ((160,82,45),"sienna"), ((255,245,238),"Seashell"), ((210,105,30),"chocolate"), ((139,69,19),"saddlebrown"), ((244,164,96),"sandybrown"), ((255,218,185),"peachpuff"), ((205,133,63),"peru"), ((250,240,230),"Linen"), ((255,228,196),"bisque"), ((255,140,0),"darkorange"), ((222,184,135),"burlywood"), ((210,180,140),"tan"), ((250,235,215),"antiquewhite"), ((255,222,173),"navajowhite"), ((255,235,205),"blanchedalmond"), ((255,239,213),"Papaya Whip"), ((255,228,181),"moccasin"), ((255,165,0),"orange"), ((245,222,179),"wheat"), ((253,245,230),"oldlace"), ((255,250,240),"floralwhite"), ((184,134,11),"darkgoldenrod"), ((218,165,32),"goldenrod"), ((255,248,220),"cornsilk"), ((255,215,0),"Gold"), ((240,230,140),"khaki"), ((255,250,205),"lemonchiffon"), ((238,232,170),"palegoldenrod"), ((189,183,107),"darkkhaki"), ((245,245,220),"beige"), ((250,250,210),"lightgoldenrodyellow"), ((128,128,0),"olive"), ((255,255,0),"yellow"), ((255,255,224),"lightyellow"), ((255,255,240),"ivory"), ((107,142,35),"olivedrab"), ((154,205,50),"yellowgreen"), ((85,107,47),"darkolivegreen"), ((173,255,47),"greenyellow"), ((127,255,0),"Chartreuse"), ((124,252,0),"lawngreen"), ((143,188,143),"darkseagreen"), ((34,139,34),"forestgreen"), ((50,205,50),"limegreen"), ((144,238,144),"lightgreen"), ((152,251,152),"palegreen"), ((0,100,0),"Dark Green"), ((0,128,0),"green"), ((0,255,0),"lime"), ((240,255,240),"honeydew"), ((46,139,87),"seagreen"), ((60,179,113),"mediumseagreen"), ((0,255,127),"Spring green"), ((245,255,250),"mintcream"), ((0,250,154),"mediumspringgreen"), ((102,205,170),"mediumaquamarine"), ((127,255,212),"aquamarine"), ((64,224,208),"turquoise"), ((32,178,170),"lightseagreen"), ((72,209,204),"mediumturquoise"), ((47,79,79),"darkslategray"), ((175,238,238),"paleturquoise"), ((0,128,128),"teal"), ((0,139,139),"darkcyan"), ((0,255,255),"cyan"), ((224,255,255),"lightcyan"), ((240,255,255),"Azure"), ((0,206,209),"darkturquoise"), ((95,158,160),"cadetblue"), ((176,224,230),"powderblue"), ((173,216,230),"lightblue"), ((0,191,255),"deepskyblue"), ((135,206,235),"skyblue"), ((135,206,250),"lightskyblue"), ((70,130,180),"steelblue"), ((240,248,255),"aliceblue"), ((30,144,255),"dodgerblue"), ((112,128,144),"slategray"), ((119,136,153),"lightslategray"), ((176,196,222),"lightsteelblue"), ((100,149,237),"cornflowerblue"), ((65,105,225),"royalblue"), ((25,25,112),"midnightblue"), ((230,230,250),"Lavender"), ((0,0,128),"navy"), ((0,0,139),"darkblue"), ((0,0,205),"Medium Blue"), ((0,0,255),"blue"), ((248,248,255),"ghostwhite"), ((106,90,205),"slateblue"), ((72,61,139),"darkslateblue"), ((123,104,238),"mediumslateblue"), ((147,112,219),"mediumpurple"), ((138,43,226),"blueviolet"), ((75,0,130),"indigo"), ((153,50,204),"darkorchid"), ((148,0,211),"darkviolet"), ((186,85,211),"mediumorchid"), ((216,191,216),"thistle"), ((221,160,221),"plum"), ((238,130,238),"violet"), ((128,0,128),"purple"), ((139,0,139),"darkmagenta"), ((255,0,255),"magenta"), ((218,112,214),"orchid"), ((199,21,133),"mediumvioletred"), ((255,20,147),"deeppink"), ((255,105,180),"hotpink"), ((255,240,245),"lavenderblush"), ((219,112,147),"palevioletred"), ((220,20,60),"crimson"), ((255,192,203),"pink"), ((255,182,193),"lightpink"), ] eps = 1.0/255.0 for i,c in enumerate(colors): ci = None name = None if max(c)-min(c)<eps and i<Ngrays: # Gray value if c[0]<eps: ci = (0,0,0) name = "Black" elif c[0]>1-eps: ci = (255,255,255) name = "White" else: ci = 3*(round(sum(c)*(255.0/3)),) name = "%u%% Gray" % round(100.0-100.0*linearCFromSC(sum(c)/3.0)) else: for kc,kn in knownColors: diff = (abs(kc[0]-255*c[0]),abs(kc[1]-255*c[1]),abs(kc[2]-255*c[2])) if max(diff)<255*eps: ci = kc name = kn + (" (#%02X%02X%02X)" % ci) break if ci is None: ci = tuple(map(lambda v:round(255*v), c)) name = "#%02X%02X%02X" % ci print "%3u %3u %3u %s" % (ci+(name,))
On Sun, Jul 11, 2010 at 8:11 AM, Jasper van de Gronde <th.v.d.gronde@...528...> wrote:
And I also strongly object to dropping the light grays (5% and 2.5%). They are useful.
Assuming you mean they are useful because of gamma and such I've now chosen the values to be linear in "linearRGB" and then transformed them to sRGB, this gives finer steps in the high regions and coarser steps in the low regions.
No, I think it's over-smarting it. The labels are now misguiding: the 50% gray is not actually 50%, at least not what all other programs call 50% gray. This alone is bad enough, but also the contrast between your "90% gray" and black is much too big and begs for inserting extra steps there.
So, I would much prefer the original with truthful labels, at every 10% plus the extra steps at the lighter end.
As for your "primary" colors, I notice that only a few of them have names, other are just RGB values. In the old palette, they all had both names and values. If they are indeed primary, shouldn't they all have some kind of standard names?
I like your changes in the h/s/l section, they seem to make the spans more even lightness-wise. (And unlike the grays section, here we don't have an established standard to follow, so deviation from RGB uniformity is OK). However, can you increase the contrast in saturation between the 11/9/7 groups, so that 9 and especially 7 are even less saturated?
On Jul 8, 2010, at 8:08 AM, bulia byak wrote:
- work on making palette scrollbar smaller or removing it altogether
(scroll buttons at the ends?) plus alternative ways of scrolling such as middle-button
Scrolling without the toolkit's scrollbar is a very good solution, and one that we can probably work on once we branch for 0.48.
I'd like to start a discussion about our default palettes. Since Jon implemented the feature years back, I've done many casual surveys of which palettes designers are using and which ones designers want. My suggestion is that we sanitize our current collection of palettes to make inkscape easier for common tasks as well as remove the bloat.
I would only change one thing. Change the default color palette such that it does not require a scroll bar.
If this is difficult to do because you do not known the users window width than create another option next to Size, Width and Wrap which is called Fit. The Fit option will always fit the width of the palette to the width of the window (Maybe it wraps if the size of a color cell drops below some minimum.)
Bill
participants (11)
-
unknown@example.com
-
Alexandre Prokoudine
-
Andy Fitzsimon
-
bulia byak
-
Chris Mohler
-
Jasper van de Gronde
-
Jon Cruz
-
Joshua A. Andler
-
Kris De Gussem
-
Tavmjong Bah
-
william.crocker@...2318...