Adobe acrobat (and maybe reader) is really the only app that fully supports the full PDF spec as understood by the authors of the spec. There are ridiculous parts of the spec that allow support for things like JS, etc.
I've seen many third party PDF viewers; I think all supported JavaScript. It's commonplace, not 'ridiculous' at all.
> Adobe acrobat (and maybe reader) is really the only app that fully supports the full PDF spec
The full spec is large and afaik has many obscure pieces, including 3-D, etc. Like many specs, they don't match reality and nobody takes completeness too seriously. For almost all users, supporting the entire PDF spec doesn't matter (does it matter for any user - does any person or organization use the entire spec over their lifetimes?).
Also, do we know that Adobe supports the entire spec?
Yeah, even Adobe doesn't really use the full spec. Or at least didn't.
There's a fairly big chunk in the spec of special presentation attributes for slideshows. When I implemented them I was surprised that slide shows produced by Acrobat didn't work. Well, obviously my implementation was buggy.
Er, no, Adobe didn't use their own slide show attributes for the slide shows produced by Acrobat. They used JavaScript instead.
That is true, but I have never encountered a PDF that is not produced by me and cannot be faithfully represented in third party PDF readers. And I give up the idea of producing those kinds of PDFs because I know the people I send to will complain about me rather than their PDF readers. So, Adobe Acrobat doesn't have any monopoly power here, since almost no one cares about those things only they can do.
We often get PDF's that does not work in our pipeline and it's always blamed on the pipeline, not on the creating software. The user usually converts the PDF to an image with adobe reader and screenshot, load up Libreoffice, paste and export it as PDF archive.
So the PDF that does not work in your pipeline is created by LibreOffice rather than Adobe Acrobat? That doesn't seem to add any strength to the argument that "Adobe Acrobat has unusual powers because only it can handle the full spec of PDF".
No, you missread. The PDF that works is created by anything that does not use the full spec of new PDF versions. We have chosen Libreoffice because we already use it for other things. If we recreate the PDF in Libreoffice as PDF archive version it works just fine. The problem is usually a pamphlet created by some ad agency using the absolutely latest version of some layout program, neither adobe nor libreoffice. The PDF usually works just fine in Adobe but not in our pipeline that uses all sorts of linux programs to process into a JPG in the format and orientation our system needs. Noone has had the time or energy to fix it since most stuff works so for now it will be downsampled by a screenshot and just showed into the system. The added benefit is the PDF shrinks from 150 MB to 300 kB in the process.
Adobe Acrobat is the only thing that can handle all cases yes. All other programs uses (different) special cases each and most of them fail in some edge cases. It can be funny letters showing up because of fonts not working properly or images disapearing or all sorts of things. I have given up to fix them all. I still have a library of PDF's that we used to run through to try to get as many as possible to work.
I don’t think it’s ridiculous to want a scriptable document, especially for complicated forms. Likewise for the other much-dragged features for 3d scenes.
How does that work exactly? Is it widely supported?
I recently had to add an embed feature to our pdf rendering, to allow users to embed other pdfs inside the one we generate for them. Since we use headless Chrome, I used pdfjs from mozilla to render the embedded pdf on screen before generating the pdf, so you can actually see and read the embedded pdf.
Works pretty well, but was wondering about this attachment feature of pdfs.
PDF is a container format and yoy can just shove files in there. pdftk supports this with attach_files, and at the very least the linux pdf readers I’ve used know how to deal with them.
good question. how it works is an implementation question. read the PDF spec (big, and somewhat hard to grok in parts) or Google about it. I don't know. I just knew about the fact, because I have done some work with PDF. also don't know if it is widely supported, sorry.
I'd guess it's the fact that nothing supports editing PDFs except Adobe Acrobat. Not to any sufficient extent. LibreOffice Draw kinda try to do it but also corrupts the file IME.
Edit: Apparently some people can edit PDFs reliably with MacOS Preview.app, LibreOffice Draw or pdftk.