/* $Log: doallpages.c,v $ * Revision 0.8 92/11/23 19:46:40 19:46:40 bt (Bo Thide') * Fixed resolution bug. Portable downloading. Added/changed options. PJXL color support * * Revision 0.7 92/11/13 02:41:24 02:41:24 bt (Bo Thide') * More bug fixes and improvements. Support for PaintJet XL * * Revision 0.6 92/11/10 21:47:40 21:47:40 bt (Bo Thide') * Bug fixes. Added -R option. Better font handling. * * Revision 0.5 92/11/09 16:25:27 16:25:27 bt (Bo Thide') * Rewrite of dospecial.c. Extended \special support * * Revision 0.4 92/11/08 02:45:42 02:45:42 bt (Bo Thide') * Changed to portable bit manipulations. Replaced strrstr for non-POSIX compliant C. Fixed numerous bugs. Added support for more \special's. * * Revision 0.3 92/08/24 12:45:35 12:45:35 bt (Bo Thide') * Fixed 8 bit (dc font) support. * * Revision 0.2 92/08/23 17:28:55 17:28:55 bt (Bo Thide') * Source cleaned up. Changed certain function calls. Removed globals. * * Revision 0.1 92/08/22 23:58:47 23:58:47 bt (Bo Thide') * First Release. * */ #include #include "macros.h" #include "globals.h" static char rcsid[] = "$Header: doallpages.c,v 0.8 92/11/23 19:46:40 bt Exp $"; /* * This routine processes all pages in the default 'single-sided' mode. * Processing is done in reversal order from higher to lower page numbers. * This way output to the old LaserJet+ will be in natural order. * This behavior can be controlled via the 'reverse' flag. */ void doallpages(bitfile, dvifile, pcllevel, reverse, resolution, device) FILE *bitfile; FILE *dvifile; short pcllevel; bool reverse; short resolution; short device; { long backpage; if(inpostamble) backpage = lastpage + 1; else backpage = prevpage + 1; maxpages = actualpagecount; if (!reverse) fseek(dvifile, firstpage, 0); while(maxpages-- > 0) { if (reverse) fseek(dvifile, backpage , 0); scanbop(dvifile); backpage = prevpage + 1; printbop(startvals, count); dopage(bitfile, dvifile, pcllevel, resolution, device); if (!reverse) getubyte(dvifile); } fprintf(stderr,"\n"); }