It is a bit rough, but it works so go easy on me. :) I've released under the AGPL so feel free to go crazy modifying and extending as long as you release your modifications. Credit would be appreciated if you do that. The PdfSupport module may actually be useful in a more general sense. It is a basic PDF parser that fires callbacks to tell you about text (content, position, size, angle...) and paths (segments, colour, curve rule...). The only downside is that it relies on PDF::API2 which implies it doesn't support some of the features of PDF 1.5+ documents. Such documents can be "downgraded" easily using programs like GhostScript.