Analisar um documento PDF com ruby

Eu tenho vários documentos PDF em uma pasta que possui uma certa estrutura:

Agora eu quero poder analisar as informações do PDF. Observe que os parágrafos têm diferentes comprimentos.

Obviamente, não estou pedindo que você resolva o problema para mim, mas preciso de algumas dicas sobre como isso pode ser alcançado.

Eu já usei nokogiri e tecnicamente preciso de algo assim, exceto para PDFs.

Portanto, o pseudo resultado para o meu exemplo ficaria assim:

- ItemA
  - Title: ItemA
  - File: 123456789.pdf
  - Image: ImageA.png (the image was stored on disk)
  - Subtitle1: Content for subtitle 1
  - Subtitle2: Content for subtitle 2
  - Subtitle3: Content for subtitle 3
- TitleB
  - [...]

questionAnswers(2)

yourAnswerToTheQuestion