This week's book giveaway is in the General Computing forum. We're giving away four copies of Arduino in Action and have Martin Evans, Joshua Noble, and Jordan Hochenbaum on-line! See this thread for details.
I don't think there's a Java library that provides access to layout and styling information of a PDF file. The best that can be done is to extract the text; both JPedal and PDFBox can do that.