pdf_private.h

Wed, 05 Mar 2003 20:44:33 +0000

author
eric
date
Wed, 05 Mar 2003 20:44:33 +0000
changeset 78
74b6b230f85d
parent 77
544fff830581
child 79
4cd9d23d924a
permissions
-rw-r--r--

correct copyright years on recently created source files.

eric@62 1 /*
eric@62 2 * t2p: Create a PDF file from the contents of one or more TIFF
eric@62 3 * bilevel image files. The images in the resulting PDF file
eric@62 4 * will be compressed using ITU-T T.6 (G4) fax encoding.
eric@62 5 *
eric@62 6 * PDF routines
eric@77 7 * $Id: pdf_private.h,v 1.4 2003/03/05 12:39:50 eric Exp $
eric@62 8 * Copyright 2001, 2002, 2003 Eric Smith <eric@brouhaha.com>
eric@62 9 *
eric@62 10 * This program is free software; you can redistribute it and/or modify
eric@62 11 * it under the terms of the GNU General Public License version 2 as
eric@62 12 * published by the Free Software Foundation. Note that permission is
eric@62 13 * not granted to redistribute this program under the terms of any
eric@62 14 * other version of the General Public License.
eric@62 15 *
eric@62 16 * This program is distributed in the hope that it will be useful,
eric@62 17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
eric@62 18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
eric@62 19 * GNU General Public License for more details.
eric@62 20 *
eric@62 21 * You should have received a copy of the GNU General Public License
eric@62 22 * along with this program; if not, write to the Free Software
eric@62 23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA
eric@62 24 */
eric@62 25
eric@62 26
eric@59 27 struct pdf_page
eric@59 28 {
eric@59 29 pdf_file_handle pdf_file;
eric@59 30 struct pdf_obj *page_dict;
eric@59 31 struct pdf_obj *media_box;
eric@59 32 struct pdf_obj *procset;
eric@59 33 struct pdf_obj *resources;
eric@59 34
eric@59 35 char last_XObject_name;
eric@59 36 struct pdf_obj *XObject_dict;
eric@59 37 };
eric@59 38
eric@59 39
eric@59 40 struct pdf_pages
eric@59 41 {
eric@59 42 struct pdf_obj *pages_dict;
eric@59 43 struct pdf_obj *kids;
eric@59 44 struct pdf_obj *count;
eric@59 45 };
eric@59 46
eric@59 47
eric@74 48 struct pdf_bookmark
eric@74 49 {
eric@74 50 struct pdf_obj *dict; /* indirect reference */
eric@77 51 struct pdf_obj *count;
eric@74 52 bool open;
eric@74 53
eric@74 54 struct pdf_bookmark *first;
eric@74 55 struct pdf_bookmark *last;
eric@74 56
eric@74 57 /* the following fields don't appear in the root */
eric@74 58 /* title and dest are in the dictionary but don't have
eric@74 59 explicit fields in the C structure */
eric@74 60 struct pdf_bookmark *parent;
eric@74 61 struct pdf_bookmark *prev;
eric@74 62 struct pdf_bookmark *next;
eric@74 63 };
eric@74 64
eric@74 65
eric@59 66 struct pdf_file
eric@59 67 {
eric@74 68 FILE *f;
eric@74 69 struct pdf_obj *first_ind_obj;
eric@74 70 struct pdf_obj *last_ind_obj;
eric@74 71 long int xref_offset;
eric@74 72 struct pdf_obj *catalog;
eric@74 73 struct pdf_obj *info;
eric@74 74 struct pdf_pages *root;
eric@74 75 struct pdf_bookmark *outline_root;
eric@74 76 struct pdf_obj *trailer_dict;
eric@59 77 };