PDF export: keep metadata

I have OmniGraffle 6.6.1 Pro.

There are various pieces of metadata (“Document Data” in omnigraffle) that can be entered into a Omnigraffle document:

  • subject
  • description
  • keywords
  • comments
  • author
  • version

However, it seems none of this metadata is kept when Omnigraffle exports a document into PDF. The OSX inspector shows none of the data entered into Omnigraffle, neither can and find any programmatically.

This is a big problem for professional users with lots of documents that are exported to PDF. And here did I think Omnigraffle was a professional tool… :(

Without metadata it is impossible to maintain large numbers of documents in any sensible manner, be it in the file system or, say, a Web CMS, Intranet or Extranet.

What metadata DOES Omnigraffle export with PDF, and how is it stored?

1 Like

Hi Petri,

If you look into your PDF file, you will notice we export in PDF 1.3 format, which was 1 version before Metadata was added via XMP to PDF according to https://en.wikipedia.org/wiki/Portable_Document_Format#Metadata. To support the larger range of metadata, an upgrade to the PDF version we export would be required, which may make the scope a bit bigger than just writing out the data. The PDF spec for version 1.3 can be found at http://www.adobe.com/devnet/pdf/pdf_reference_archive.html by version. The metadata is stored in the Document Information Dictionary supported by PDF version 1.3. See section 8.2 in the spec http://wwwimages.adobe.com/content/dam/Adobe/en/devnet/pdf/pdfs/pdf_reference_archives/PDFReference13.pdf for a detailed list of what is supported in the table which includes what we currently export.

Please email omnigraffle@omnigroup.com to request that we export the Document Data to PDF metadata via the XMP packet. That is a great request that I think many may benefit other users. Others who would like this added, please send us a request in email as well so that our support humans can track them for the team to consider in future development decisions. Thank you for using OmniGraffle and for sharing your feedback.

Thanks,

Lanette

Thanks for your reply Lanette. I will submit a request. However, when I create an OmniGraffle document and fill EVERYTHING in the document’s “Document Data” section and export as PDF, the PDF does NOT contain the metadata, even in format of PDF version 1.3 as you seem to claim. It is NOT exported.

The Document Information Dictionary of the PDF only contains the following metadata:

  • CreationDate
  • ModDate
  • Producer (‘Mac OS X 10.11.6 Quartz PDFContext’)
  • Creator (‘OmniGraffle 6.6.1’)
  • Author (‘Petri Savolainen’)

None of these values come from the OmniGraffle document metadata I entered in the document.

I don’t really care where the metadata comes from, be it in 1.3 format or XMP. As long as it’s there. Right now it looks like it’s not.

It wasn’t possible to write custom metadata packets into PDF in the 1.3 format. It would only accept the Document Information Dictionary, which is the same place the information stored for the finder in each document. If you get info on the PDF file, you will see the same information in the Finder as what is in the PDF Properties. I’m sorry if I wasn’t clear before that none of the information from Document Data will be in your PDF. I was trying to be specific about what would be in there which is limited to Section 8.2 referenced above.

One last idea for you, it is possible to make a metadata file that can be loaded into a PDF later. There is some support for metadata sidecar files in more recent PDF versions. A script could be a possible solution to get document data out of OmniGraffle. If you want to look into it, the XMP Toolkit has some good information https://en.wikipedia.org/wiki/Extensible_Metadata_Platform and links.

Thank you for sending the request! I hope that it is something we can do in the future.

Thanks,
Lanette

I’ve been doing some research on this and have some questions about the capabilities of omnigraffle.

You can embed applescripts or omnigraffle script references in a pdf using the iOS “print” feature or OSX’s pdf export. Applescript embedding comes from special OSX comparability (i know there is some embedded data on a stencil to to store the compiled applescript as base64)

how are javascript automation references stored in the pdf? how are the stored in a pdf?

i’m trying to find a way to do a multi platform checkbox that i can encode in omnigraffle. i can encode the metadata but how do i build the state machine? I can side load javascript into the pdf but i think that’s a type adobe javascript and orthogonal to omnijs and webkit renderers.

You might ask over in the Automation group. There are more people writing scripts over there who may be able to help you.