      SUBROUTINE MY_GSAREA2(X,Y)
      INCLUDE 'Parametres.f'
c
      REAL*4 X(2),Y(2)
c
      if (ipostscript.eq.1) then
        IX0 = nint(origine_x + facteur_en_x*X(1))
        IY0 = nint(origine_y + facteur_en_y*Y(1))
        IX1 = nint(origine_x + facteur_en_x*X(2))
        IY1 = nint(origine_y + facteur_en_y*Y(2))
        larg  = iabs(ix1-ix0)
        ihaut = iabs(iy1-iy0)
        ix0 = min(ix0,ix1)
        iy0 = min(iy0,iy1)
        if (icoulfond.ne.icoul_courante) then
          IF (IPSEUDO.NE.0) THEN
            IF (icoulfond.GT.NBCOLDEBASE2
     &.and..not.couleurtrouvee(icoulfond)) CALL CHERCHELACOUL(Icoulfond)
          ENDIF
          call x11loadcolor(icoulfond)
          call x11facette2(IX0,iy0,larg,ihaut)
          call x11loadcolor(icoul_courante)
        else
          call x11facette2(IX0,iy0,larg,ihaut)
        endif
      else 
        if (sauve_graphic) return
        bufferout(1:1) = 'd'
        iptbuf = 2
        XX1 = origine_x + facteur_en_x*X(1)
        YY1 = origine_y + facteur_en_y*Y(1)
        XX2 = origine_x + facteur_en_x*X(2)
        YY2 = origine_y + facteur_en_y*Y(2)
        call ecrispascher(xx1)
        call ecrispascher(yy1)
        call ecrispascher(xx2)
        call ecrispascher(yy2)
        if (ipostscript.eq.-1) then
          iptbuf2 = iptbuf+lgris_fond+2
          bufferout(iptbuf:iptbuf2) = ' '//gris_fond(1:lgris_fond)//' q'
        else
          iptbuf2 = iptbuf+lcouleur_fond+2
          bufferout(iptbuf:iptbuf2) =
     &         ' '//couleur_fond(1:lcouleur_fond)//' q'
        endif
        write(ilaser_file,'(a)') bufferout(1:iptbuf2)
        do i=1,iptbuf2
          bufferout(i:i) = ' '
        enddo
        iptbuf = 1
      endif
      end
C-----------------------------------------------------------------------
      SUBROUTINE MY_GSAREA2B(X1,X2,Y1,Y2)
C
      REAL*4 X(2),Y(2)
C
      X(1) = X1
      X(2) = X2
      Y(1) = Y1
      Y(2) = Y2
      CALL MY_GSAREA2(X,Y)
      END
