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