Skip to content

Commit 8616cf4

Browse files
committed
Get paper dimensions from CUPS
Signed-off-by: Alexey Galakhov <agalakhov@gmail.com>
1 parent 381562f commit 8616cf4

File tree

3 files changed

+11
-3
lines changed

3 files changed

+11
-3
lines changed

src/paper.c

+6
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,10 @@
1919

2020
#include "paper.h"
2121

22+
#include <cups/raster.h>
2223

24+
void page_set_dims(struct page_dims_s *dims, const struct cups_page_header2_s *header)
25+
{
26+
dims->paper_width = header->PageSize[0] * header->HWResolution[0] / 72;
27+
dims->paper_height = header->PageSize[1] * header->HWResolution[1] / 72;
28+
}

src/paper.h

+4
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121

2222
#include "std.h"
2323

24+
struct cups_page_header2_s;
25+
2426
struct page_dims_s {
2527
/* set by */
2628
unsigned paper_width;
@@ -30,3 +32,5 @@ struct page_dims_s {
3032
unsigned band_size;
3133
unsigned num_lines;
3234
};
35+
36+
void page_set_dims(struct page_dims_s *dims, const struct cups_page_header2_s *header);

src/rastertocapt.c

+1-3
Original file line numberDiff line numberDiff line change
@@ -143,9 +143,7 @@ static void do_print(int fd)
143143
while (cupsRasterReadHeader2(raster, &header)) {
144144
struct page_dims_s dims;
145145

146-
// FIXME
147-
dims.paper_width = 4960;
148-
dims.paper_height = 6898;
146+
page_set_dims(&dims, &header);
149147

150148
if (! state->ipage) {
151149
fprintf(stderr, "DEBUG: CAPT: rastertocapt: start job\n");

0 commit comments

Comments
 (0)