Wed, 05 Mar 2003 20:44:33 +0000
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 | }; |