improve aspect ratio
authorBill Joy <wnj@ucbvax.Berkeley.EDU>
Sun, 1 Mar 1981 14:08:12 +0000 (06:08 -0800)
committerBill Joy <wnj@ucbvax.Berkeley.EDU>
Sun, 1 Mar 1981 14:08:12 +0000 (06:08 -0800)
SCCS-vsn: old/vpr/vtools/vfontinfo.c 4.2

usr/src/old/vpr/vtools/vfontinfo.c

index 71145dd..b562b4d 100644 (file)
@@ -1,8 +1,10 @@
-static char *sccsid = "@(#)vfontinfo.c 4.1 (Berkeley) %G%";
+static char *sccsid = "@(#)vfontinfo.c 4.2 (Berkeley) 81/02/28";
 /* Font Information for VCat-style fonts
  *      AJH  4/79
  *
  *     Modified to print Ascii chars 1/80 by Mark Horton
 /* Font Information for VCat-style fonts
  *      AJH  4/79
  *
  *     Modified to print Ascii chars 1/80 by Mark Horton
+ *     Modified to use ,'| 1/81 by Mark Horton using an idea
+ *             from Eric Scott of CalTech.
  */
 #include <stdio.h>
 #include <ctype.h>
  */
 #include <stdio.h>
 #include <ctype.h>
@@ -69,14 +71,17 @@ char **argv;
        printf("raster size %d, ",FontHeader.size);
        printf("max width %d, max height %d, xtend %d\n",
                FontHeader.maxx, FontHeader.maxy,FontHeader.xtend);
        printf("raster size %d, ",FontHeader.size);
        printf("max width %d, max height %d, xtend %d\n",
                FontHeader.maxx, FontHeader.maxy,FontHeader.xtend);
-       printf("\n ASCII     offset    size  left    right   up     down    width \n");
+       if (!verbose)
+               printf("\n ASCII     offset    size  left    right   up     down    width \n");
 
        for (i=0; i<256; i++) {
                j = charswanted[i];
                if (i>0 && j==0)
                        break;
                if (disptable[j].nbytes != 0) {
 
        for (i=0; i<256; i++) {
                j = charswanted[i];
                if (i>0 && j==0)
                        break;
                if (disptable[j].nbytes != 0) {
-                       printf("  %3o %2s     %4d   %4d   %4d   %4d   %4d   %4d   %5d\n",
+                       printf(!verbose ?
+                               "  %3o %2s     %4d   %4d   %4d   %4d   %4d   %4d   %5d\n" :
+                               "  %3o %2s  a=%d, n=%d, l=%d, r=%d, u=%d, d=%d, w=%d\n",
                                j, rdchar(j),
                                disptable[j].addr,
                                disptable[j].nbytes,
                                j, rdchar(j),
                                disptable[j].addr,
                                disptable[j].nbytes,
@@ -94,12 +99,12 @@ char **argv;
                                H = (disptable[j].up) + (disptable[j].down);
                                W = (disptable[j].left) + (disptable[j].right);
                                WB = (W+7)/8;
                                H = (disptable[j].up) + (disptable[j].down);
                                W = (disptable[j].left) + (disptable[j].right);
                                WB = (W+7)/8;
-                               for (k=0; k<H; k++) {
+                               for (k=0; k<H; k+=2) {
                                        for (last=W-1; last >= 0; last--)
                                                if (fbit(k, last))
                                                        break;
                                        for (l=0; l<=last; l++) {
                                        for (last=W-1; last >= 0; last--)
                                                if (fbit(k, last))
                                                        break;
                                        for (l=0; l<=last; l++) {
-                                               printf("%c", fbit(k,l)?'M':' ');
+                                               printf("%c", " ',|"[fbit(k,l)+2*fbit(k+1,l)]);
                                        }
                                        printf("\n");
                                }
                                        }
                                        printf("\n");
                                }
@@ -133,6 +138,8 @@ int row, col;
 {
        int thisbyte, thisbit, ret;
 
 {
        int thisbyte, thisbit, ret;
 
+       if (row >= H)
+               return 0;
        thisbyte = charbits[row*WB + (col>>3)] & 0xff;
        thisbit = 0x80 >> (col&7);
        ret = thisbyte & thisbit;
        thisbyte = charbits[row*WB + (col>>3)] & 0xff;
        thisbit = 0x80 >> (col&7);
        ret = thisbyte & thisbit;