Exemplo n.º 1
0
 public static byte[] AddPdfAFlag(byte[] fileContents)
 {
     using (var memoryStream = new MemoryStream())
     {
         using (var pdfReader = new PdfReader(fileContents))
         {
             using (var pdfStamper = new PdfStamper(pdfReader, memoryStream, '\0', true))
             {
                 using (var pdfaMemoryStream = new MemoryStream())
                 {
                     var xmpWriter = new XmpWriter(pdfaMemoryStream, pdfStamper.MoreInfo);
                     xmpWriter.SetProperty(XmpConst.NS_PDFA_ID, PdfAProperties.PART, "3");
                     xmpWriter.SetProperty(XmpConst.NS_PDFA_ID, PdfAProperties.CONFORMANCE, "A");
                     xmpWriter.Close();
                     pdfStamper.XmpMetadata = pdfaMemoryStream.ToArray();
                 }
             }
         }
         return(memoryStream.ToArray());
     }
 }
Exemplo n.º 2
0
        public static void AddPdfAFlag(string filePath)
        {
            var newFilePath = filePath.CombineFilePathWithGuid();

            using (var fileStream = new FileStream(newFilePath, FileMode.Create))
            {
                using (var pdfReader = new PdfReader(filePath))
                {
                    using (var pdfStamper = new PdfStamper(pdfReader, fileStream, '\0', true))
                    {
                        using (var pdfaMemoryStream = new MemoryStream())
                        {
                            var xmpWriter = new XmpWriter(pdfaMemoryStream, pdfStamper.MoreInfo);
                            xmpWriter.SetProperty(XmpConst.NS_PDFA_ID, PdfAProperties.PART, "3");
                            xmpWriter.SetProperty(XmpConst.NS_PDFA_ID, PdfAProperties.CONFORMANCE, "A");
                            xmpWriter.Close();
                            pdfStamper.XmpMetadata = pdfaMemoryStream.ToArray();
                        }
                    }
                }
            }

            File.Copy(newFilePath, filePath, true);
        }