      SUBROUTINE GSPAT(I0)
      INCLUDE 'Parametres.f'
c
      i = iabs(i0)
      if (ipostscript.eq.1) then
        if (i.eq.16) then
          ii = icoulfond
        else
          ii = i
        endif
        icoulfond = ii
      elseif(ipostscript.eq.-1) then
CCC?        if (i.le.16.or.nbcouleurs.le.1) then
        if (i.le.16) then
          ggg = min(1.,max(0.,real(i)/16.)) 
          if (i0.lt.0.and.ggg.gt..99) ggg = 0.
        else
C_NTSC          ggg = (table_rouge(i)+table_vert(i)+table_bleu(i))/3.
          ggg = 0.3*table_rouge(i)
     &        + 0.59*table_vert(i)
     &        + 0.11*table_bleu(i)
        endif
        call ecriscouleur(ggg,gris_fond,lgris_fond)
      else
        if (i.eq.16) then
          c1 = colfond(1)
          c2 = colfond(2)
          c3 = colfond(3)
        else
          c1 = table_rouge(i)
          c2 = table_vert (i)
          c3 = table_bleu (i)
        endif
        call ecriscouleur(c1,couleur_fond,l1)
        couleur_fond(l1+1:l1+1) = ' '
        call ecriscouleur(c2,couleur_fond(l1+2:),l2)
        couleur_fond(l1+l2+2:l1+l2+2) = ' '
        call ecriscouleur(c3,couleur_fond(l1+l2+3:),l3)
        lcouleur_fond = l1+l2+l3+2
      endif
      end
