[Solved] PDF/A

The PDF Creator enables you to create secure PDF documents and to view, print and process existing PDF documents.
If you have any questions about the installation and usage of the PDF Creator please post them here.
Post Reply
zaksoft
Posts: 66
Joined: Fri Feb 20 2004

[Solved] PDF/A

Post by zaksoft »

How can I save a PDF as PDF/A ?

also in your sample there is no way ( Save as or Export )

TIA
Joan
Amyuni Team
Posts: 2799
Joined: Wed Sep 11 2002
Contact:

Re: PDF/A

Post by Joan »

Hello,
You can specify that you want to save the PDF file as PDFA by adding acFileSavePDFA_8 to your call of FileSaveOption.

For more info please check "PDF Creator Developer Manual.pdf" (p.113)

Hope this helps.
Custom Brand the Amyuni PDF Printer Driver http://www.amyuni.com/en/developer/branding/index.html

Amyuni PDF Converter tested for true PDF performance. View results - http://www.amyuni.com/benchmark
zaksoft
Posts: 66
Joined: Fri Feb 20 2004

Re: PDF/A

Post by zaksoft »

No, I mean the result is not a PDF/A document... maybe I've made some mistakes..

VS2008 SP1, C++ not managed code - MBCS - MFC Statically linked - Suite 3.03

pdf.Open( "Invoice.Pdf");
pdf.Save( "InvPdfA.pdf, CPdfcreactivex::acFileSavePDFA);

I've also tried using

pdf.Open( "Invoice.Pdf");
pdf.put_ObjectAttribute( "Document", "FileSaveOption", vt); // VT = lVal ( I4 ) = 4 ( acFileSavePDFA )
pdf.Save( "InvPdfA.pdf, CPdfcreactivex::acFileSaveDefault);

Note that I've used CPdfcreactivex::acFileSavePDFA since no _8 are enumered in C++ wrapper, but since value is the same as page 113 (4) I think is correct.

1) On save the document is created, but both Adobe (FULL) 8.1.1 and 9.0.0 Pro Extended reports error on PreFlight analyze.
2) There is a 'phone' before phone number on the invoice that is made up with a windings font (0x28), on the resulting document it become a pen (0x21)

Davide

P.S. no matter also with the license.pdf document that you install with libraries
Davide Zaccanti
Joan
Amyuni Team
Posts: 2799
Joined: Wed Sep 11 2002
Contact:

Re: PDF/A

Post by Joan »

Hello David,

Did you send your original pdf file and the generated PDF/A one to our Technical Support team?

Please note that to generate PDF/A files you need to have some settings like Font Embedding set. For more info please check http://www.amyuni.com/forum/viewtopic.php?f=13&t=1897

Hope this helps
Custom Brand the Amyuni PDF Printer Driver http://www.amyuni.com/en/developer/branding/index.html

Amyuni PDF Converter tested for true PDF performance. View results - http://www.amyuni.com/benchmark
zaksoft
Posts: 66
Joined: Fri Feb 20 2004

Re: PDF/A

Post by zaksoft »

Fonts are not embedded since this PDF is not created with PDF Creator but with Crystal Recports, and I cant change their settings, I thought I can save as PDF/A regardless the actual status...

TIA
Davide Zaccanti
Joan
Amyuni Team
Posts: 2799
Joined: Wed Sep 11 2002
Contact:

Re: PDF/A

Post by Joan »

David you need to check with our Technical team, i am not sure about the answer to this, sorry!
Custom Brand the Amyuni PDF Printer Driver http://www.amyuni.com/en/developer/branding/index.html

Amyuni PDF Converter tested for true PDF performance. View results - http://www.amyuni.com/benchmark
zaksoft
Posts: 66
Joined: Fri Feb 20 2004

Re: PDF/A

Post by zaksoft »

A C++ solution (even if on a document a Windings symbol is not correctly saved - support has a copy of the document showing the problem) using latest 3.03 creator

code is below and pdf is an instance of CPdfcreactivex class wrapper, there is no enumerated value for metadata parameters so the value is given.

pdf.Open( "Invoice.Pdf");
pdf.put_ObjectAttribute( "Document", "FileSaveOption", vtFSO); // VT = lVal ( I4 ) = 4 ( acFileSavePDFA - acro8)
pdf.put_ObjectAttribute( "Document", "Metadata", vtMD); // VT = lVal ( I4 ) = 3 ( Compatible metadata - acro 8)
pdf.Save( "InvPdfA.pdf, CPdfcreactivex::acFileSavePDFA);

I've tested the resulting doc both with Acrobat 8.10 and 9.00 (preflight option verify) and it's compliant.

To obtain an acrobat 7 compliant document just replace acFileSavePDFA (=4) with acFileSavePDFA_7 (=3) and metadata value 3 with 4 (yes, they are exacly inverted, funny.. isnt it?)

Hope this can help someone else.. C++ seems not so popular in today programming, but is straightforward to sue also in other environment.

Cheers
Davide Zaccanti
Post Reply