1C*PGSCH -- set character height
2C%void cpgsch(float size);
3C+
4      SUBROUTINE PGSCH (SIZE)
5      REAL SIZE
6C
7C Set the character size attribute. The size affects all text and graph
8C markers drawn later in the program. The default character size is
9C 1.0, corresponding to a character height about 1/40 the height of
10C the view surface.  Changing the character size also scales the length
11C of tick marks drawn by PGBOX and terminals drawn by PGERRX and PGERRY.
12C
13C Argument:
14C  SIZE   (input)  : new character size (dimensionless multiple of
15C                    the default size).
16C--
17C (1-Mar-1983)
18C-----------------------------------------------------------------------
19      INCLUDE  'pgplot.inc'
20      LOGICAL  PGNOTO
21      REAL     XC, XCNEW, YC, XS, YS
22C
23      IF (PGNOTO('PGSCH')) RETURN
24C
25      CALL GRCHSZ(PGID, XC, YC, XS, YS)
26      IF (PGXSZ(PGID)/PGXPIN(PGID) .GT.
27     1    PGYSZ(PGID)/PGYPIN(PGID)) THEN
28          XCNEW = SIZE*XC*PGYSZ(PGID)/YS/40.0
29      ELSE
30          XCNEW = SIZE*XC*(PGXSZ(PGID)*PGYPIN(PGID)/PGXPIN(PGID))
31     1            /YS/40.0
32      END IF
33      CALL GRSETC(PGID,XCNEW)
34      PGXSP(PGID) = XS*XCNEW/XC
35      PGYSP(PGID) = YS*XCNEW/XC
36      PGCHSZ(PGID) = SIZE
37      END
38