[gull] changer la couleur d'un fichier postscript

Félix Hauri felix at f-hauri.ch
Thu Sep 22 22:33:07 CEST 2005


On Thu, Sep 22, 2005 at 04:44:47PM +0200, Julien Linder wrote:
> 
> Y a-t-il un utilitaire qui permette de changer la couleur
> de ces portions de texte. Idéalement j'aimerais forcer tout
> le texte en couleur noire pour éviter que l'imprimante
> utilise des nuances de gris pour simuler la couleur.
> 
> Une idée ?
Oui, tu peux ``jouer'' avec les commandes postscript et faire précéder
ton fichier d'une initialisation:

$ cat <<eof >/tmp/junkhead.ps
%!
/.fixtransfer {
  currentcolortransfer 4 {
    mark exch
    dup type dup /arraytype eq exch /packedarraytype eq or
    1 index xcheck and { /exec load } if
    9999 /exp load
    ] cvx 4 1 roll
  } repeat setcolortransfer
} bind odef
.fixtransfer
/setpagedevice { setpagedevice .fixtransfer } bind odef
eof

puis en concatenant ton fichier après:

$ cat /tmp/junkhead.ps $HOME/monfichier.ps >/tmp/junkfile.ps

Voir le résultat avec Ghostview ou lancer sur l'imprimante.
En l'occurence le bleu restera bleu, mais devrait foncer...

Et si cela suffit, alors tu peux ajouter ton fichier gamma sur la ligne
qui lance ghostscript dans la config de ton imprimante:
 gs -sDEVICE=xxx -dNOPAUSE... /var/spool/lpd/maprinteuse/junkhead.ps - -c \
    quit >/dev/lp0

Si tu veux vraiement du noir-blanc, alors transforme ton fichier en gris
avant l'opération:

$ gs -sDEVICE=psmono -sOutputFile=/tmp/junkfile.ps -q -dNOPAUSE -dBATCH \
    -sSAFER $HOME/monfichier.ps
$ cat /tmp/junkhead.ps /tmp/junkfile.ps >/tmp/junkfile2.ps

et vois le résultat avec gs ou ton imprimante...

Si tout bon, alors la ligne de commande devient un poil plus compliquée:
  gs -sDEVICE=psmono -sOutputFile=- -q -dNOPAUSE -dBATCH -sSAFER - -c quit |
  gs -sDEVICE=xxx -dNOPAUSE... /var/spool/lpd/maprinteuse/junkhead.ps - -c \
    quit >/dev/lp0

-- 
 Félix Hauri  -  <felix at f-hauri.ch>  -  http://www.f-hauri.ch



More information about the gull mailing list