3 typedef struct Document Document;
9 char* (*pagename)(Document*, int);
10 Image* (*drawpage)(Document*, int);
11 int (*addpage)(Document*, char*);
12 int (*rmpage)(Document*, int);
18 void *erealloc(void*, int);
20 int spawncmd(char*, char **, int, int, int);
22 int spooltodisk(uchar*, int, char**);
23 int stdinpipe(uchar*, int);
24 Document *initps(Biobuf*, int, char**, uchar*, int);
25 Document *initpdf(Biobuf*, int, char**, uchar*, int);
26 Document *initgfx(Biobuf*, int, char**, uchar*, int);
27 Document *inittroff(Biobuf*, int, char**, uchar*, int);
28 Document *initdvi(Biobuf*, int, char**, uchar*, int);
29 Document *initmsdoc(Biobuf*, int, char**, uchar*, int);
31 void viewer(Document*);
32 extern Cursor reading;
35 extern int textbits, gfxbits;
40 extern int truetoboundingbox;
43 extern int mknewwindow;
47 Image *resample(Image*, Image*);
49 /* ghostscript interface shared by ps, pdf */
50 typedef struct GSInfo GSInfo;
59 int gscmd(GSInfo*, char*, ...);
61 void setdim(GSInfo*, Rectangle, int, int);
62 int spawnwriter(GSInfo*, Biobuf*);
63 Rectangle screenrect(void);
66 Rectangle winrect(void);
67 void resize(int, int);
71 Image* xallocimage(Display*, Rectangle, ulong, int, ulong);
72 int bell(void*, char*);
73 int opentemp(char *template);
78 /* BUG BUG BUG BUG BUG: cannot use new draw operations in drawterm,
79 * or in vncs, and there is a bug in the kernel for copying images
80 * from cpu memory -> video memory (memmove is not being used).
81 * until all that is settled, ignore the draw operators.
83 #define drawop(a,b,c,d,e,f) draw(a,b,c,d,e)
84 #define gendrawop(a,b,c,d,e,f,g) gendraw(a,b,c,d,e,f)