tumble.h

Thu, 20 Mar 2003 06:54:08 +0000

author
eric
date
Thu, 20 Mar 2003 06:54:08 +0000
changeset 141
752599b50ff3
parent 139
ec2a06d8a2a6
permissions
-rw-r--r--

more JPEG support. added input file handler API.

eric@49 1 /*
eric@125 2 * tumble: build a PDF file from image files
eric@49 3 *
eric@141 4 * $Id: tumble.h,v 1.17 2003/03/19 22:54:07 eric Exp $
eric@49 5 * Copyright 2001, 2002, 2003 Eric Smith <eric@brouhaha.com>
eric@49 6 *
eric@49 7 * This program is free software; you can redistribute it and/or modify
eric@49 8 * it under the terms of the GNU General Public License version 2 as
eric@49 9 * published by the Free Software Foundation. Note that permission is
eric@49 10 * not granted to redistribute this program under the terms of any
eric@49 11 * other version of the General Public License.
eric@49 12 *
eric@49 13 * This program is distributed in the hope that it will be useful,
eric@49 14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
eric@49 15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
eric@49 16 * GNU General Public License for more details.
eric@49 17 *
eric@49 18 * You should have received a copy of the GNU General Public License
eric@49 19 * along with this program; if not, write to the Free Software
eric@141 20 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA
eric@141 21 */
eric@49 22
eric@49 23
eric@49 24 extern int verbose;
eric@49 25
eric@49 26
eric@23 27 typedef struct
eric@23 28 {
eric@48 29 bool has_resolution;
eric@36 30 double x_resolution;
eric@36 31 double y_resolution;
eric@36 32
eric@48 33 bool has_page_size;
eric@32 34 page_size_t page_size;
eric@32 35
eric@48 36 bool has_rotation;
eric@23 37 int rotation;
eric@32 38
eric@48 39 bool has_crop;
eric@23 40 crop_t crop;
eric@23 41 } input_attributes_t;
eric@23 42
eric@139 43
eric@139 44 bool open_input_file (char *name);
eric@139 45 bool close_input_file (void);
eric@10 46
eric@30 47
eric@30 48 typedef struct
eric@30 49 {
eric@30 50 char *author;
eric@30 51 char *creator;
eric@30 52 char *title;
eric@30 53 char *subject;
eric@30 54 char *keywords;
eric@30 55 } pdf_file_attributes_t;
eric@30 56
eric@48 57 bool open_pdf_output_file (char *name,
eric@48 58 pdf_file_attributes_t *attributes);
eric@30 59
eric@10 60
eric@48 61 bool process_page (int image, /* range 1 .. n */
eric@48 62 input_attributes_t input_attributes,
eric@131 63 bookmark_t *bookmarks,
eric@131 64 page_label_t *page_label);