View Single Post
Old 10-27-2007, 08:05 AM   #2
Junior Member
wpd doesn't litterwpd doesn't litterwpd doesn't litter
Posts: 7
Karma: 221
Join Date: Oct 2007
Device: iliad/nokia9500
column mode patch

These patches add a new column mode in addition to the page/contineous modes in portrait view to ipdf irex rev 25 / stock 2.11.

Please note that a pdf does not specify anything regarding textwords / lines / columns / flows. The poppler library, that is used by ipdf to render pdf files, has a textoutput device that makes use of a number of heuristics to determine words, lines and columns. This textoutput device is also used in the poppler tool pdf2text.

With a small interface adjustment in poppler (poppler.patch), ipdf can query poppler about rendered text columns (ipdf.patch).

  • "column mode" icon is hidden under page/contineous mode when in portrait view
  • Works best when zoomed in on a (set of) columns
  • Every textbox with 2 lines or more, with the current rotation, is considered a column
  • Short flipbar next/previous = move to next/previous column
  • Long flipbar next/previous = move to next/previous page; first/last column
  • Tap on column = move to tapped column
  • Columns that are completely in view are skipped over when considering next/previous column. This allows you to read an entire portrait page be fore flipping, instead of flipping for each column individually.
  • Current column is identified using a black rectangle; note that you can configure this away in the source. I left it in to allow ppl to see in what order columns are identified and processed.
  • Extensive logging; try ipdf-nologging or configure the source to remove them.
  • Column mode and current column are saved and loaded in manifests.

How to try:


These arm binaries have the modified poppler library linked in statically, i.e. you can give one of them a go by simply copying it to /usr/bin/ipdf.

When using ipdf, try

/sbin/syslogd -s 500 -b 0 -O log

and take a look at the file 'log' to see what it is doing.

Ps. the static linking clobbers a securityhandler in poppler. My guess is that password protected pdfs will fail with this ipdf. This goes away if you compile from the source (ipdf-column.tgz) and copy both the new poppler library and the new ipdf to your iliad.
wpd is offline   Reply With Quote