See chapter 10 of the PDF reference 
http://www.adobe.com/devnet/pdf/pdf_reference.html. Be warned that this is 
not for the faint of heart.

Paulo

----- Original Message ----- 
From: "ajsos" <[EMAIL PROTECTED]>
To: <[email protected]>
Sent: Friday, June 08, 2007 3:19 AM
Subject: Re: [iText-questions] Added support for PDF/A-1


>
> Paulo, You said "1b is easier but 1a is also possible if all the tagging 
> is
> added by hand."
>
> I'm new to this PDF/A stuff. If you get a chance, could you describe or
> point to materials (I tried googling & couldn't find much) on what tags to
> add for PDF/A-1a and how to add it please? Thanks.
>
>
> Paulo Soares wrote:
>>
>> 1b is easier but 1a is also possible if all the tagging is added by hand.
>>
>> Paulo
>>
>>> -----Original Message-----
>>> From: [EMAIL PROTECTED]
>>> [mailto:[EMAIL PROTECTED] On
>>> Behalf Of Leonard Rosenthol
>>> Sent: Tuesday, June 05, 2007 5:27 PM
>>> To: Post all your questions about iText here
>>> Subject: Re: [iText-questions] Added support for PDF/A-1
>>>
>>> Excellent - thanks!!
>>>
>>> Are you doing both 1a and 1b, or just 1b?
>>>
>>> Leonard
>>>
>>> On Jun 5, 2007, at 11:06 AM, Paulo Soares wrote:
>>>
>>> > I've added support for PDF/A-1 and is available in the iText SVN
>>> > and the iTextSharp CVS. An example:
>>> >
>>> > Document doc = new Document(PageSize.A4);
>>> > PdfWriter writer = PdfWriter.getInstance(doc, new FileOutputStream
>>> > ("C:\\hello_A1-b.pdf"));
>>> > writer.setPDFXConformance(PdfWriter.PDFA1B);
>>> > doc.open();
>>> > PdfDictionary outi = new PdfDictionary(PdfName.OUTPUTINTENT);
>>> > outi.put(PdfName.OUTPUTCONDITIONIDENTIFIER, new PdfString("sRGB
>>> > IEC61966-2.1"));
>>> > outi.put(PdfName.INFO, new PdfString("sRGB IEC61966-2.1"));
>>> > outi.put(PdfName.S, PdfName.GTS_PDFA1);
>>> > ICC_Profile icc = ICC_Profile.getInstance(new FileInputStream("c:\
>>> > \srgb.profile"));
>>> > PdfICCBased ib = new PdfICCBased(icc);
>>> > ib.remove(PdfName.ALTERNATE);
>>> > outi.put(PdfName.DESTOUTPUTPROFILE, writer.addToBody
>>> > (ib).getIndirectReference());
>>> > writer.getExtraCatalog().put(PdfName.OUTPUTINTENTS, new PdfArray
>>> > (outi));
>>> >
>>> > BaseFont bf = BaseFont.createFont("c:\\windows\\fonts\\arial.ttf",
>>> > BaseFont.WINANSI, true);
>>> > Font f = new Font(bf, 12);
>>> > doc.add(new Paragraph("hello", f));
>>> > writer.createXmpMetadata();
>>> > doc.close();
>>> >
>>> >
>>> > And for C#:
>>> >
>>> > Document doc = new Document(PageSize.A4);
>>> > PdfWriter writer = PdfWriter.GetInstance(doc, new FileStream("C:\
>>> > \hello_A1-b_cs.pdf", FileMode.Create));
>>> > writer.PDFXConformance = PdfWriter.PDFA1B;
>>> > doc.Open();
>>> > PdfDictionary outi = new PdfDictionary(PdfName.OUTPUTINTENT);
>>> > outi.Put(PdfName.OUTPUTCONDITIONIDENTIFIER, new PdfString("sRGB
>>> > IEC61966-2.1"));
>>> > outi.Put(PdfName.INFO, new PdfString("sRGB IEC61966-2.1"));
>>> > outi.Put(PdfName.S, PdfName.GTS_PDFA1);
>>> > ICC_Profile icc = ICC_Profile.GetInstance("c:\\srgb.profile");
>>> > PdfICCBased ib = new PdfICCBased(icc);
>>> > ib.Remove(PdfName.ALTERNATE);
>>> > outi.Put(PdfName.DESTOUTPUTPROFILE, writer.AddToBody
>>> > (ib).IndirectReference);
>>> > writer.ExtraCatalog.Put(PdfName.OUTPUTINTENTS, new PdfArray(outi));
>>> >
>>> > BaseFont bf = BaseFont.CreateFont("c:\\windows\\fonts\\arial.ttf",
>>> > BaseFont.WINANSI, true);
>>> > Font f = new Font(bf, 12);
>>> > doc.Add(new Paragraph("hello", f));
>>> > writer.CreateXmpMetadata();
>>> > doc.Close();
>>> >
>>> >
>>> > Paulo


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
iText-questions mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/itext-questions
Buy the iText book: http://itext.ugent.be/itext-in-action/

Reply via email to