pdf_g4_tables.h

changeset 71
3e2d23e25fc3
parent 70
16e2cf55dbd9
child 72
cddd6226b509
     1.1 --- a/pdf_g4_tables.h	Fri Feb 21 12:29:16 2003 +0000
     1.2 +++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.3 @@ -1,262 +0,0 @@
     1.4 -/*
     1.5 - * t2p: Create a PDF file from the contents of one or more TIFF
     1.6 - *      bilevel image files.  The images in the resulting PDF file
     1.7 - *      will be compressed using ITU-T T.6 (G4) fax encoding.
     1.8 - *
     1.9 - * G4 encoding tables
    1.10 - * $Id: pdf_g4_tables.h,v 1.2 2003/02/21 04:28:37 eric Exp $
    1.11 - * Copyright 2001, 2002, 2003 Eric Smith <eric@brouhaha.com>
    1.12 - *
    1.13 - * This program is free software; you can redistribute it and/or modify
    1.14 - * it under the terms of the GNU General Public License version 2 as
    1.15 - * published by the Free Software Foundation.  Note that permission is
    1.16 - * not granted to redistribute this program under the terms of any
    1.17 - * other version of the General Public License.
    1.18 - *
    1.19 - * This program is distributed in the hope that it will be useful,
    1.20 - * but WITHOUT ANY WARRANTY; without even the implied warranty of
    1.21 - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    1.22 - * GNU General Public License for more details.
    1.23 - *
    1.24 - * You should have received a copy of the GNU General Public License
    1.25 - * along with this program; if not, write to the Free Software
    1.26 - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111 USA
    1.27 - */
    1.28 -
    1.29 -
    1.30 -typedef struct
    1.31 -{
    1.32 -  uint32_t count;
    1.33 -  uint32_t bits;
    1.34 -} g4_bits;
    1.35 -
    1.36 -static g4_bits g4_long_makeup_code [12] =
    1.37 -  {
    1.38 -    { 11, 0x008 },  /* 1792 */
    1.39 -    { 11, 0x00c },  /* 1856 */
    1.40 -    { 11, 0x00d },  /* 1920 */
    1.41 -    { 12, 0x012 },  /* 1984 */
    1.42 -    { 12, 0x013 },  /* 2048 */
    1.43 -    { 12, 0x014 },  /* 2112 */
    1.44 -    { 12, 0x015 },  /* 2176 */
    1.45 -    { 12, 0x016 },  /* 2240 */
    1.46 -    { 12, 0x017 },  /* 2304 */
    1.47 -    { 12, 0x01c },  /* 2368 */
    1.48 -    { 12, 0x01d },  /* 2432 */
    1.49 -    { 12, 0x01e }   /* 2496 */
    1.50 -  };
    1.51 -
    1.52 -static g4_bits g4_makeup_code [2] [27] =
    1.53 -  {
    1.54 -    {
    1.55 -      /* white */
    1.56 -      { 5, 0x1b },  /* 64 */
    1.57 -      { 5, 0x12 },  /* 128 */
    1.58 -      { 6, 0x17 },  /* 192 */
    1.59 -      { 7, 0x37 },  /* 256 */
    1.60 -      { 8, 0x36 },  /* 320 */
    1.61 -      { 8, 0x37 },  /* 384 */
    1.62 -      { 8, 0x64 },  /* 448 */
    1.63 -      { 8, 0x65 },  /* 512 */
    1.64 -      { 8, 0x68 },  /* 576 */
    1.65 -      { 8, 0x67 },  /* 640 */
    1.66 -      { 9, 0x0cc }, /* 704 */
    1.67 -      { 9, 0x0cd }, /* 768 */
    1.68 -      { 9, 0x0d2 }, /* 832 */
    1.69 -      { 9, 0x0d3 }, /* 896 */
    1.70 -      { 9, 0x0d4 }, /* 960 */
    1.71 -      { 9, 0x0d5 }, /* 1024 */
    1.72 -      { 9, 0x0d6 }, /* 1088 */
    1.73 -      { 9, 0x0d7 }, /* 1152 */
    1.74 -      { 9, 0x0d8 }, /* 1216 */
    1.75 -      { 9, 0x0d9 }, /* 1280 */
    1.76 -      { 9, 0x0da }, /* 1344 */
    1.77 -      { 9, 0x0db }, /* 1408 */
    1.78 -      { 9, 0x098 }, /* 1472 */
    1.79 -      { 9, 0x099 }, /* 1536 */
    1.80 -      { 9, 0x09a }, /* 1600 */
    1.81 -      { 6, 0x18 },  /* 1664 */
    1.82 -      { 9, 0x09b }  /* 1728 */
    1.83 -    },
    1.84 -    {
    1.85 -      /* black */
    1.86 -      { 10, 0x00f },  /* 64 */
    1.87 -      { 12, 0x0c8 },  /* 128 */
    1.88 -      { 12, 0x0c9 },  /* 192 */
    1.89 -      { 12, 0x05b },  /* 256 */
    1.90 -      { 12, 0x033 },  /* 320 */
    1.91 -      { 12, 0x034 },  /* 384 */
    1.92 -      { 12, 0x035 },  /* 448 */
    1.93 -      { 13, 0x006c }, /* 512 */
    1.94 -      { 13, 0x006d }, /* 576 */
    1.95 -      { 13, 0x004a }, /* 640 */
    1.96 -      { 13, 0x004b }, /* 704 */
    1.97 -      { 13, 0x004c }, /* 768 */
    1.98 -      { 13, 0x004d }, /* 832 */
    1.99 -      { 13, 0x0072 }, /* 896 */
   1.100 -      { 13, 0x0073 }, /* 960 */
   1.101 -      { 13, 0x0074 }, /* 1024 */
   1.102 -      { 13, 0x0075 }, /* 1088 */
   1.103 -      { 13, 0x0076 }, /* 1152 */
   1.104 -      { 13, 0x0077 }, /* 1216 */
   1.105 -      { 13, 0x0052 }, /* 1280 */
   1.106 -      { 13, 0x0053 }, /* 1344 */
   1.107 -      { 13, 0x0054 }, /* 1408 */
   1.108 -      { 13, 0x0055 }, /* 1472 */
   1.109 -      { 13, 0x005a }, /* 1536 */
   1.110 -      { 13, 0x005b }, /* 1600 */
   1.111 -      { 13, 0x0064 }, /* 1664 */
   1.112 -      { 13, 0x0065 }, /* 1728 */
   1.113 -    }
   1.114 -  };
   1.115 -
   1.116 -
   1.117 -static g4_bits g4_h_code [2] [64] =
   1.118 -  {
   1.119 -    {
   1.120 -      /* white */
   1.121 -      { 8, 0x35 },  /* 0 */
   1.122 -      { 6, 0x07 },  /* 1 */
   1.123 -      { 4, 0x7 },   /* 2 */
   1.124 -      { 4, 0x8 },   /* 3 */
   1.125 -      { 4, 0xb },   /* 4 */
   1.126 -      { 4, 0xc },   /* 5 */
   1.127 -      { 4, 0xe },   /* 6 */
   1.128 -      { 4, 0xf },   /* 7 */
   1.129 -      { 5, 0x13 },  /* 8 */
   1.130 -      { 5, 0x14 },  /* 9 */
   1.131 -      { 5, 0x07 },  /* 10 */
   1.132 -      { 5, 0x08 },  /* 11 */
   1.133 -      { 6, 0x08 },  /* 12 */
   1.134 -      { 6, 0x03 },  /* 13 */
   1.135 -      { 6, 0x34 },  /* 14 */
   1.136 -      { 6, 0x35 },  /* 15 */
   1.137 -      { 6, 0x2a },  /* 16 */
   1.138 -      { 6, 0x2b },  /* 17 */
   1.139 -      { 7, 0x27 },  /* 18 */
   1.140 -      { 7, 0x0c },  /* 19 */
   1.141 -      { 7, 0x04 },  /* 20 */
   1.142 -      { 7, 0x17 },  /* 21 */
   1.143 -      { 7, 0x03 },  /* 22 */
   1.144 -      { 7, 0x04 },  /* 23 */
   1.145 -      { 7, 0x28 },  /* 24 */
   1.146 -      { 7, 0x2b },  /* 25 */
   1.147 -      { 7, 0x13 },  /* 26 */
   1.148 -      { 7, 0x24 },  /* 27 */
   1.149 -      { 7, 0x18 },  /* 28 */
   1.150 -      { 8, 0x02 },  /* 29 */
   1.151 -      { 8, 0x03 },  /* 30 */
   1.152 -      { 8, 0x1a },  /* 31 */
   1.153 -      { 8, 0x1b },  /* 32 */
   1.154 -      { 8, 0x12 },  /* 33 */
   1.155 -      { 8, 0x13 },  /* 34 */
   1.156 -      { 8, 0x14 },  /* 35 */
   1.157 -      { 8, 0x15 },  /* 36 */
   1.158 -      { 8, 0x16 },  /* 37 */
   1.159 -      { 8, 0x17 },  /* 38 */
   1.160 -      { 8, 0x28 },  /* 39 */
   1.161 -      { 8, 0x29 },  /* 40 */
   1.162 -      { 8, 0x2a },  /* 41 */
   1.163 -      { 8, 0x2b },  /* 42 */
   1.164 -      { 8, 0x2c },  /* 43 */
   1.165 -      { 8, 0x2d },  /* 44 */
   1.166 -      { 8, 0x04 },  /* 45 */
   1.167 -      { 8, 0x05 },  /* 46 */
   1.168 -      { 8, 0x0a },  /* 47 */
   1.169 -      { 8, 0x0b },  /* 48 */
   1.170 -      { 8, 0x52 },  /* 49 */
   1.171 -      { 8, 0x53 },  /* 50 */
   1.172 -      { 8, 0x54 },  /* 51 */
   1.173 -      { 8, 0x55 },  /* 52 */
   1.174 -      { 8, 0x24 },  /* 53 */
   1.175 -      { 8, 0x25 },  /* 54 */
   1.176 -      { 8, 0x58 },  /* 55 */
   1.177 -      { 8, 0x59 },  /* 56 */
   1.178 -      { 8, 0x5a },  /* 57 */
   1.179 -      { 8, 0x5b },  /* 58 */
   1.180 -      { 8, 0x4a },  /* 59 */
   1.181 -      { 8, 0x4b },  /* 60 */
   1.182 -      { 8, 0x32 },  /* 61 */
   1.183 -      { 8, 0x33 },  /* 62 */
   1.184 -      { 8, 0x34 }   /* 63 */
   1.185 -    },
   1.186 -    {
   1.187 -      /* black */
   1.188 -      { 10, 0x037 },  /* 0 */
   1.189 -      { 3, 0x2 },     /* 1 */
   1.190 -      { 2, 0x3 },     /* 2 */
   1.191 -      { 2, 0x2 },     /* 3 */
   1.192 -      { 3, 0x3 },     /* 4 */
   1.193 -      { 4, 0x3 },     /* 5 */
   1.194 -      { 4, 0x2 },     /* 6 */
   1.195 -      { 5, 0x03 },    /* 7 */
   1.196 -      { 6, 0x05 },    /* 8 */
   1.197 -      { 6, 0x04 },    /* 9 */
   1.198 -      { 7, 0x04 },    /* 10 */
   1.199 -      { 7, 0x05 },    /* 11 */
   1.200 -      { 7, 0x07 },    /* 12 */
   1.201 -      { 8, 0x04 },    /* 13 */
   1.202 -      { 8, 0x07 },    /* 14 */
   1.203 -      { 9, 0x018 },   /* 15 */
   1.204 -      { 10, 0x017 },  /* 16 */
   1.205 -      { 10, 0x018 },  /* 17 */
   1.206 -      { 10, 0x008 },  /* 18 */
   1.207 -      { 11, 0x067 },  /* 19 */
   1.208 -      { 11, 0x068 },  /* 20 */
   1.209 -      { 11, 0x06c },  /* 21 */
   1.210 -      { 11, 0x037 },  /* 22 */
   1.211 -      { 11, 0x028 },  /* 23 */
   1.212 -      { 11, 0x017 },  /* 24 */
   1.213 -      { 11, 0x018 },  /* 25 */
   1.214 -      { 12, 0x0ca },  /* 26 */
   1.215 -      { 12, 0x0cb },  /* 27 */
   1.216 -      { 12, 0x0cc },  /* 28 */
   1.217 -      { 12, 0x0cd },  /* 29 */
   1.218 -      { 12, 0x068 },  /* 30 */
   1.219 -      { 12, 0x069 },  /* 31 */
   1.220 -      { 12, 0x06a },  /* 32 */
   1.221 -      { 12, 0x06b },  /* 33 */
   1.222 -      { 12, 0x0d2 },  /* 34 */
   1.223 -      { 12, 0x0d3 },  /* 35 */
   1.224 -      { 12, 0x0d4 },  /* 36 */
   1.225 -      { 12, 0x0d5 },  /* 37 */
   1.226 -      { 12, 0x0d6 },  /* 38 */
   1.227 -      { 12, 0x0d7 },  /* 39 */
   1.228 -      { 12, 0x06c },  /* 40 */
   1.229 -      { 12, 0x06d },  /* 41 */
   1.230 -      { 12, 0x0da },  /* 42 */
   1.231 -      { 12, 0x0db },  /* 43 */
   1.232 -      { 12, 0x054 },  /* 44 */
   1.233 -      { 12, 0x055 },  /* 45 */
   1.234 -      { 12, 0x056 },  /* 46 */
   1.235 -      { 12, 0x057 },  /* 47 */
   1.236 -      { 12, 0x064 },  /* 48 */
   1.237 -      { 12, 0x065 },  /* 49 */
   1.238 -      { 12, 0x052 },  /* 50 */
   1.239 -      { 12, 0x053 },  /* 51 */
   1.240 -      { 12, 0x024 },  /* 52 */
   1.241 -      { 12, 0x037 },  /* 53 */
   1.242 -      { 12, 0x038 },  /* 54 */
   1.243 -      { 12, 0x027 },  /* 55 */
   1.244 -      { 12, 0x028 },  /* 56 */
   1.245 -      { 12, 0x058 },  /* 57 */
   1.246 -      { 12, 0x059 },  /* 58 */
   1.247 -      { 12, 0x02b },  /* 59 */
   1.248 -      { 12, 0x02c },  /* 60 */
   1.249 -      { 12, 0x05a },  /* 61 */
   1.250 -      { 12, 0x066 },  /* 62 */
   1.251 -      { 12, 0x067 }   /* 63 */
   1.252 -    }
   1.253 -  };
   1.254 -
   1.255 -
   1.256 -static g4_bits g4_vert_code [7] =
   1.257 -  {
   1.258 -    { 7, 0x02 },
   1.259 -    { 6, 0x02 },
   1.260 -    { 3, 0x02 },
   1.261 -    { 1, 0x01 },
   1.262 -    { 3, 0x03 },
   1.263 -    { 6, 0x03 },
   1.264 -    { 7, 0x03 }
   1.265 -  };