Mon, 18 Aug 2003 09:59:41 +0000
added big-endian support
1 tumble TODO list
2 $Id: TODO,v 1.20 2003/03/25 01:36:56 eric Exp $
4 No particular order.
6 -----------------------------------------------------------------------------
8 tumble:
10 * input handlers shouldn't use globals, use pointer to private structure
11 instead.
13 * multiple "-b" options on command line
15 * page labels on command line
17 * pages containing multiple images
18 * spec language needs major changes
19 * split process_page into multiple parts:
20 * open page
21 * add image
22 * close page
24 * overlay G4 images in different colors - use ImageMask and the fill color
26 * crop
28 * page sizes
29 * metric
30 * check page size, if off by too much, generate warning message and
31 use actual scan size
32 * multiple page sizes, pick the right one?
34 * range checking
35 * rotation (0, 90, 180, or 270)
36 * page number style (D, r, R, a, A)
38 * watermarking - in image?
40 * flip, transpose
42 * support color & grayscale TIFF images
43 * pass JPEG through unchanged, others must be encoded
45 * support PNG, BMP, and other input file formats
47 * generate text, line art - option to embed fonts
49 * bilevel thresholding of color and grayscale input
51 * automatic separation using timify code from Tim Shoppa?
53 * automatic image detection using DCT or FFT
55 * downsampling
57 -----------------------------------------------------------------------------
59 bitblt routines:
61 * finish optimized bitblt code
63 * optimize inner loops in flip_h and flip_v with Duff's Device
65 * check for endian problems
66 * reading TIFF (don't define TIFF_REVERSE_BITS on some hosts)
67 * rle table
68 * g4_get_pixel()
69 * g4_find_pixel()
71 * g4_find_pixel should use native instructions where available
72 * 386: BSF bit scan forward
73 * PowerPC: CLTLZ, CNTLZW count leasing zeros (CNTLZD 64-bit)
74 * MC68020: BFFFO bit field find first one
75 * Alpha 21264A: CTTZ count trailing zeros
77 -----------------------------------------------------------------------------
79 PDF routines:
81 [Page numbers refer to _Portable Document Format Reference Manual_ by
82 Adobe Systems Incorporated, Addison-Wesley, 1993.]
84 * Flate compression - including predictors
86 * ModDate and CreationDate keys in Info dict
88 * ID key in trailer dict
90 * proper output of real numbers - variable precision, no exponent
92 * bookmarks (outline) should allow alternate destination specs, currently
93 only /Fit is supported
95 * balance pages tree - currently a degenerate single-level tree, but the
96 PDF spec recommends max. of 6 children per parent
98 * thumbnails
100 * PDF Page rotate attribute (p. 53)?
102 * memory management - need to reference count all structures and free
103 them as appropriate - not necessary for t2p program
105 * when an object is written to the file, set a flag to indicate that
106 it is now immutable
108 * name trees, number trees - when finalize is called, set immutable flag
109 and allow no further changes
111 * buffered streams (vs. current callback mechanism for unbuffered streams)
113 * add support for streams with multiple filters
115 * linearize ("optimize")