xref: /haiku/docs/develop/kits/print/Spool File Format.txt (revision e81a954787e50e56a7f06f72705b7859b6ab06d1)
1*e81a9547SAugustin CavalierSpool File Format
2*e81a9547SAugustin Cavalier
3*e81a9547SAugustin CavalierSee
4*e81a9547SAugustin Cavalierhttp://philippe.houdoin.free.fr/phil/beos/pdf_writer/spool_file_format_for_R4.png
5*e81a9547SAugustin Cavalier
6*e81a9547SAugustin CavalierFilename: Description@8DigitNumber
7*e81a9547SAugustin Cavalier
8*e81a9547SAugustin CavalierLocation: /boot/home/config/settings/printers/PRINTER/
9*e81a9547SAugustin Cavalier
10*e81a9547SAugustin CavalierFile Contents
11*e81a9547SAugustin Cavalier
12*e81a9547SAugustin Cavalierstruct print_file_header {
13*e81a9547SAugustin Cavalier       int32   version; // LSB first; minor: version & 0xffff; major: version >> 16
14*e81a9547SAugustin Cavalier       int32   page_count;
15*e81a9547SAugustin Cavalier       off_t   first_page;
16*e81a9547SAugustin Cavalier       int32   _reserved_3_;
17*e81a9547SAugustin Cavalier       int32   _reserved_4_;
18*e81a9547SAugustin Cavalier       int32   _reserved_5_;
19*e81a9547SAugustin Cavalier};
20*e81a9547SAugustin Cavalier
21*e81a9547SAugustin CavalierFlattened BMessage JobMessage {
22*e81a9547SAugustin Cavalier	float xresh, yresh, scaling?
23*e81a9547SAugustin Cavalier	BRect paper_rect
24*e81a9547SAugustin Cavalier	BRect printable_rect
25*e81a9547SAugustin Cavalier	int32 orientation
26*e81a9547SAugustin Cavalier}
27*e81a9547SAugustin Cavalier
28*e81a9547SAugustin Cavalierpage_count times {
29*e81a9547SAugustin Cavalier	uint32 pictureCount;
30*e81a9547SAugustin Cavalier	pictureCount times {
31*e81a9547SAugustin Cavalier		off_t offset_to_next_picture;
32*e81a9547SAugustin Cavalier		byte reserved[40];
33*e81a9547SAugustin Cavalier		BPoint point;
34*e81a9547SAugustin Cavalier		BRect rect;
35*e81a9547SAugustin Cavalier		Flattended BPicture;
36*e81a9547SAugustin Cavalier	}
37*e81a9547SAugustin Cavalier}
38*e81a9547SAugustin Cavalier
39*e81a9547SAugustin CavalierAttributes
40*e81a9547SAugustin Cavalier
41*e81a9547SAugustin CavalierMIMS BEOS:TYPE
42*e81a9547SAugustin Cavalier	application/x-vnd.Be.printer-spool
43*e81a9547SAugustin CavalierLONG _spool/Page Count
44*e81a9547SAugustin Cavalier	2
45*e81a9547SAugustin CavalierTEXT _spool/Description
46*e81a9547SAugustin Cavalier	Bookmarks.gbe
47*e81a9547SAugustin CavalierTEXT _spool/Printer
48*e81a9547SAugustin Cavalier	PDF
49*e81a9547SAugustin CavalierCSTR _spool/Status
50*e81a9547SAugustin Cavalier"Processing", set by print_server while printing.
51*e81a9547SAugustin Cavalier"Waiting", set by BPrintJob when it's fully written.
52*e81a9547SAugustin Cavalier"Error", set by print_server if driver failed.
53*e81a9547SAugustin CavalierTEXT _spool/MimeType
54*e81a9547SAugustin Cavalier	application/x-vnd.gobe.productive55