Dado um .gif, retorne os componentes de cor como especificadores hexadecimais no estilo X11 (ou equivalentes)

2

Sou fã de potrace e recentemente li as Perguntas frequentes sobre o Potrace .

O FAQ inclui este belo one-liner:

cat img.gif | giftopnm | ppmcolormask #641b1b | potrace

O comando que estou procurando retornaria os códigos de todas as cores a serem analisadas por ppmcolormask . Ele poderia retornar, de acordo com man ppmcolormask :

   You can specify color five ways:

   o      An X11-style color name (e.g.  black).

   o      An  X11-style  hexadecimal specifier: rgb:r/g/b, where r g and b
          are each 1- to 4-digit hexadecimal numbers.

   o      An X11-style decimal specifier: rgbi:r/g/b, where r g and b  are
          floating point numbers between 0 and 1.

   o      For  backwards  compatibility, an old-X11-style hexadecimal num‐
          ber: #rgb, #rrggbb, #rrrgggbbb, or #rrrrggggbbbb.

   o      For backwards compatibility, a triplet of numbers  separated  by
          commas:  r,g,b,  where  r  g  and  b  are floating point numbers
          between 0 and 1.  (This style was added before MIT came up  with
          the similar rgbi style.)
    
por ixtmixilix 16.02.2012 / 17:33

1 resposta

2
cat foo.gif | giftopnm | ppmhist -noheader -hexcolors | awk '{ print "rgb:"$1"/"$2"/"$3 }'

lhe dará uma lista de todas as cores no formato X11 rgb: r / g / b.

    
por 16.02.2012 / 18:44