My bank requested 17 PDF documents for my mortgage application.
I was drowning in files and spent most of my time opening and closing tabs rather than actually reading them. That's when I came across Adobe's PDF Portfolio, which allows groupping multiple PDF files into a single bundle.
However, Adobe's portfolio implementation modifies the page tree. Standard viewers (Chrome or Preview) only see a generic cover page, forcing you to use Acrobat to actually access the rest of the pages. On top of that, modifying or creating these bundles requires a paid Acrobat subscription or a lot of manual work.
So I asked myself: what if I could scroll horizontally to see the pages of a file, and vertically to see more files, without touching the page tree?
I achieved this by embedding a small JSON manifest and bundling all documents sequentially into the main page tree. This produces a backwards-compatible PDF file.
- In standard viewers (Chrome, Acrobat, Preview): It reads smoothly as a single, continuous document.
- In the desktop app: (I called it PDFx) It parses the JSON metadata and renders the files onto a free-floating 2D canvas for batch processing.
The embedded JSON manifest maps where individual documents start and end and itβs a tiny metadata structure that scales well and adds negligible bytes to the bundle. To demonstrate the UX improvements, I coupled the spec extension with an open-source, cross-platform desktop client built with Electron and React (utilizing native Objective-C++ overrides to keep the window properties feeling premium and performant).
The project is open-source with an MIT license:
https://github.com/AlexandrosGounis/pdfx
I would highly appreciate your architectural feedback on the spec extension. My frustration with Adobe is the lack of evolution and the locked specs that require Acrobat Pro to take full advantage of.
Top comments (0)