Analiza un documento PDF con ruby

Tengo varios documentos PDF en una carpeta que tienen una determinada estructura:

Ahora quiero poder analizar la información del PDF. Tenga en cuenta que los párrafos tienen diferentes longitudes.

Obviamente no le pido que resuelva el problema por mí, pero necesito algunos consejos sobre cómo se puede lograr esto.

He usado nokogiri antes y técnicamente necesito algo así pero para archivos PDF.

Entonces el pseudo resultado para mi ejemplo se vería así:

- 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
  - [...]

Respuestas a la pregunta(2)

Su respuesta a la pregunta