0

How can I add the document object identifier (DOI) to a PDF File with Delphi XE6? Is there a tool (also commercial one) available? Thanks Walter

Walter Schrabmair
  • 1,251
  • 2
  • 13
  • 26
  • 1
    You could also get familiar with the PDF binary format and then add/modify/delete the PDF document using `TBinaryWriter` and `TBinaryReader` classes. –  May 01 '15 at 21:04
  • I do not think That The doi (which is usually in the subject line, as far as I have discovered) is in the binary ! I think that is in the metadata! – Walter Schrabmair May 01 '15 at 21:08
  • File is an array of bytes. A digital object identifier (DOI) is a character string. Strings are bytes. –  May 01 '15 at 21:14
  • Ok, do you know how I can write a example which writes to a PDF a new and longer DOI? – Walter Schrabmair May 01 '15 at 21:17
  • @RawN you are right. In the PDF there is an ASCII LINE like this `8 0 obj<> ` – Walter Schrabmair May 02 '15 at 10:07
  • After inserting that string I suspect you would need to adjust the numbers in the last PDF section. –  May 02 '15 at 10:19

1 Answers1

0

I found a solution: 3rd party tool this tool can write/read metadata from a pdf. the doi stands in the Subject field. Works great with Delphi XE6!

Walter Schrabmair
  • 1,251
  • 2
  • 13
  • 26