home *** CD-ROM | disk | FTP | other *** search
- /* This file displays all the available characters */
-
- #include <splot.h>
- #define ROMAN 1
- #define GREEK 0
- #define ITALIC 0
- int i,j;
- char c[10];
-
- main()
- {
- set(PAGEROT,ON);
- #if ROMAN
- text(13.67,19.14,"Roman",CENTER);
- text(7.5,18,"Simplex",CENTER);
- text(19,18,"Complex",CENTER);
- gsave();
- scale(1.2,1.2);
- translate(1,-11);
- set(FONTWIDTH,0.5);
- set(FONTASPECT,1.5);
- table(0);
- translate(10,0);
- set(FONT,COMPLEX);
- table(0);
- set(FONT,SIMPLEX);
- #endif
- #if GREEK
- text(13.67,19.14,"Greek",CENTER);
- text(7.5,18,"Simplex",CENTER);
- text(19,18,"Complex",CENTER);
- gsave();
- scale(1.2,1.2);
- translate(1,-11);
- set(FONTWIDTH,0.5);
- set(FONTASPECT,1.5);
- table(1);
- translate(10,0);
- set(FONT,COMPLEX);
- table(1);
- set(FONT,SIMPLEX);
- #endif
- #if ITALIC
- text(7.5,18,"Italics Simplex/Complex",CENTER);
- text(19,18,"Symbols",CENTER);
- gsave();
- scale(1.2,1.2);
- translate(1,-11);
- set(FONTWIDTH,0.5);
- set(FONTASPECT,1.5);
- table(2);
- translate(10,0);
- table(3);
- #endif
- grestore();
- }
-
- table(int special)
- {
- /* label rows and columns */
- c[1] = '\0';
- for (i = 0; i < 10;i++)
- {
- c[0] = '0' + i;
- tputs(2 + i * 0.7,24.5,c,0);
- }
- c[0] = ' ';
- c[2] = '0';
- c[3] = '\0';
- for (j = 3;j < 10;j++)
- {
- c[1] = '0' + j;
- tputs(0,26 - j,c,0);
- }
- c[0] = '1';
- c[2] = '0';
- c[3] = '\0';
- for (j = 10;j < 13;j++)
- {
- c[1] = '0' + j - 10;
- tputs(0,26 - j,c,0);
- }
- /* prepend each char with '\' so that even special chars get printed */
- c[0] = '\\';
- c[2] = '\0';
- box(1.29,23.77,9.07,13.36);
- stroke();
- /* fill in table */
- for (j = 3;j < 13;j++)
- {
- for (i = 0; i < 10;i++)
- {
- c[1] = j * 10 + i;
- if (c[1] == 'b')
- tputs(2 + i * 0.7,26 - j,"b",special);
- else
- tputs(2 + i * 0.7,26 -j,c,special);
- }
- }
- }
-
- tputs(double x,double y,char *c,int special)
- {
- char tmp[10];
- switch(special)
- {
- case 0:
- text(x,y,c);
- break;
- case 1:
- /* greek */
- strcpy(tmp,"!");
- strcat(tmp,c);
- strcat(tmp,"!");
- text(x,y,tmp);
- break;
- case 2:
- /* italics */
- strcpy(tmp,"#");
- strcat(tmp,c);
- strcat(tmp,"#");
- text(x,y,tmp);
- break;
- case 3:
- /* symbols */
- strcpy(tmp,"$");
- strcat(tmp,c);
- strcat(tmp,"$");
- text(x,y,tmp);
- break;
- }
- }
-