/// <summary> /// Sets PDF/A Conformance ColorProfile. /// </summary> public void SetColorProfile() { if (PageSetup.ConformanceLevel == PdfXConformance.PDFXNONE) { return; } var pdfDictionary = new PdfDictionary(PdfName.OUTPUTINTENT); pdfDictionary.Put(PdfName.OUTPUTCONDITIONIDENTIFIER, new PdfString("sRGB IEC61966-2.1")); pdfDictionary.Put(PdfName.INFO, new PdfString("sRGB IEC61966-2.1")); pdfDictionary.Put(PdfName.S, PdfName.GTS_PDFA1); var profileStream = StreamHelper.GetResourceByName("PdfRpt.Core.Helper.srgb.profile"); var pdfICCBased = new PdfICCBased(ICC_Profile.GetInstance(profileStream)); pdfICCBased.Remove(PdfName.ALTERNATE); pdfDictionary.Put(PdfName.DESTOUTPUTPROFILE, PdfWriter.AddToBody(pdfICCBased).IndirectReference); PdfWriter.ExtraCatalog.Put(PdfName.OUTPUTINTENTS, new PdfArray(pdfDictionary)); }
/// <summary> /// Sets PDF/A Conformance ColorProfile. /// </summary> public void SetColorProfile() { if (PageSetup.ConformanceLevel == PdfXConformance.PDFXNONE) { return; } var pdfDictionary = new PdfDictionary(PdfName.Outputintent); pdfDictionary.Put(PdfName.Outputconditionidentifier, new PdfString("sRGB IEC61966-2.1")); pdfDictionary.Put(PdfName.Info, new PdfString("sRGB IEC61966-2.1")); pdfDictionary.Put(PdfName.S, PdfName.GtsPdfa1); var profileStream = StreamHelper.GetResourceByName("PdfRpt.Core.core.helper.srgb.profile"); var pdfICCBased = new PdfIccBased(IccProfile.GetInstance(profileStream)); pdfICCBased.Remove(PdfName.Alternate); pdfDictionary.Put(PdfName.Destoutputprofile, PdfWriter.AddToBody(pdfICCBased).IndirectReference); PdfWriter.ExtraCatalog.Put(PdfName.Outputintents, new PdfArray(pdfDictionary)); }