MARKV@UKANVAX.BITNET (NAME) (02/01/90)
I recently revived an old trick from my floppy based system days... In designing a Database with Superbase Prof I am using several 'Display' sized (30+) fonts which take up a lot of space and fill a directly. My Workbench partition really doesn't have enough room for these, so... Make sure your normal fonts: directory (if it is in SYS:) is not called fonts. Then Have a few floppies all named FONTS: with the fonts you want. Then do an ASSIGN FONTS: to clear the assign. Now when you reference fonts, DOS will pop up a requester saying "Please Insert volume FONTS:" so just pop in the appropriate floppy and Viola. This trick works best with a program that allows you to force reloading the list of fonts (most do). I also helps keep your normal fonts list down (nice for DPaint II owners) and your workbench down to size. Once the font is loaded from a disk it is in memory so you can load a different font from a different disk. Stephan Vermulen (spelling?) sent me a little utility a long time ago (long since lost) that allows the slightly more elegant solution of allowing the foo.font files to point to the actual bitmaps (files like 8, 9, and 12 etc) on different disks which is useful too. His solution is nice for a permanant setup (especially for a floppy only system). Mine is nice for the occasional quick fix, one of a time situation. Now if only the Amiga had *real* resources so we could bind fonts to an application (although Apple is trying to kill this particular use of resources). Well, for now, Mark Gooderum MARKV@UKANVAX
HIRBY_S%AMOS@LAWRENCE.BITNET (Steve Hirby) (02/06/90)
>Stephan Vermulen (spelling?) sent me a little utility a long time ago (long >since lost) that allows the slightly more elegant solution of allowing >the foo.font files to point to the actual bitmaps (files like 8, 9, and 12 etc) >on different disks which is useful too. The program is called REN; available on Fish disks somewhere. I got an executable copy from PLINK's Amiga section; source code was in Transactor for the Amiga. Really a very simple program -- could be written in AmigaBASIC. Has the advantage (over the scheme suggested in this message) that you don't have to remember which of your disks named FONTS: contains the particular font you're looking for. Explicit disk volume label goes in the foo.font file -- which file must be on your Workbench disk (or partitition)., and the system requester will ask you for the disk by name. (Of course, then you must be sure not to relabel the disk containing the font bitmaps.) C-A has indicated that this scheme, which makes use of a unimplemented feature of .font file structures, will not be broken by future font versions. SH
svermeulen@JANUS.MTROYAL.AB.CA (02/07/90)
Here is REN in all it's glory... /***************************************************** ren.c This program allows one to rename the directory which contains the font data files. syntax: ren thisfont.font path ******************************************************/ #include <stdio.h> char newname[256], oldname[256]; main(argc, argv) int argc; char *argv[]; { FILE *font; long j, pos; short i, n; if (argc != 3) { printf("ren filename.font newpath\n"); printf("Copyright 1988 By Stephen Vermeulen (403) 282-7990\n"); printf("PO Box 3295, Station B, Calgary, Alta., CANADA, T2M 4L8\n"); printf("May be distributed without charge, so long as the Copyright\n"); printf("notice and credits remain unmodified.\n"); } else { font = fopen(argv[1], "r+"); if (font) { /******************************************** now determine how many sizes this font has *********************************************/ fread(&n, 2, 1, font); /** throw away **/ fread(&n, 2, 1, font); /** number of sizes **/ printf("Font %s has %d sizes\n", argv[1], n); for (i = 0; i < n; ++i) { /** for each size we rename it... **/ fseek(font, 4L + 260L * i, 0); fread(oldname, 256, 1, font); printf("name was: %s ", oldname); for (j = 255; j > 0; --j) if (oldname[j] == '/') break; strcpy(newname, argv[2]); strcat(newname, oldname + j); fseek(font, 4L + 260L * i, 0); printf("now is: %s\n", newname); fwrite(newname, 256, 1, font); } fclose(font); } } } -------------------------------------------------------------- Regards, Stephen Vermeulen PO Box 3295 Author: Express Paint, Spritz and Fusion Paint Station B Newsletter Editor of AMUC (the AMiga Users of Calgary) Calgary, Alberta SVermeulen % Janus.MtRoyal.AB.CA @ UncaNet.BITnet ...or... CANADA SVermeulen % Janus.MRC.AdhocNet.CA @ UncaEdu.BITnet T2M 4L8