| 1 | Here's the plan as of March 21: |
| 2 | |
| 3 | - Finish glib and qobject wrappers and get rid of the 80 |
| 4 | header files that current constitute the poppler public API. |
| 5 | Make sure the APIs are usable for kpdf and evince and other |
| 6 | tools that use poppler (thumbnailers, metadata plugins |
| 7 | etc.). |
| 8 | |
| 9 | - Make the cairo backend feature complete and optimize the |
| 10 | heck out of it. |
| 11 | |
| 12 | - Investigate better (that is, normal) text selection. |
| 13 | |
| 14 | - Use PDF font descriptors to create an FcPattern. |
| 15 | |
| 16 | Convert to use as much existing infra-structure as possible: |
| 17 | - drop t1lib entirely |
| 18 | - use fontconfig |
| 19 | - dont use /etc/xpdf.rc, add abstraction that can work with |
| 20 | GNOME and KDE configuration systems (GConf and ?) |
| 21 | - improve cairo backend |
| 22 | - use jasper for jpeg2000 decoding? |
| 23 | - use littlecms for color management? |
| 24 | - use libtiff for ccitt decoding? |
| 25 | |
| 26 | Performance: |
| 27 | - Add simle performance benchmark that takes a pdf and renders |
| 28 | every page 100 times or so. Start keeping track of |
| 29 | performance. |
| 30 | - make color space conversion stuff more sane (right now we |
| 31 | hack around some of it in the cairo backend) |
| 32 | - move away from getChar to a more read(2) like interface |
| 33 | |
| 34 | Done: |
| 35 | - rename GString etc in goo lib to make it more glib friendly |
| 36 | - make splash optional |
| 37 | |
| 38 | - Install poppler-splash.pc and poppler-cairo.pc to indicate |
| 39 | available backends. Alternatively, just hide the backend |
| 40 | choice from the application. This is done now, but for this |
| 41 | to work properly, we really need multiple .so's. |
| 42 | |
| 43 | [ This will go away again once we get the wrappers done. ] |
| 44 | |
| 45 | Jeff Muizelaar's TODO: |
| 46 | Short Term: |
| 47 | - factor out some of the color conversion code from CairoOutputDev and ArthurOutputDev. |
| 48 | - fix patterned text fills. |
| 49 | Long Term: |
| 50 | - use cairo glyph cache for type3 fonts. |
| 51 | - try to use cairo pattern support. |
| 52 | |