SetTagged() public méthode

public SetTagged ( ) : void
Résultat void
        // ---------------------------------------------------------------------------
        public byte[] CreatePdf()
        {
            using (MemoryStream ms = new MemoryStream()) {
            using (document = new Document(PageSize.A5)) {
              // step 2
              writer = PdfWriter.GetInstance(document, ms);
              writer.SetTagged();
              // step 3
              document.Open();
              // step 4
              PdfStructureTreeRoot root = writer.StructureTreeRoot;
              root.MapRole(new PdfName("chapter"), PdfName.SECT);
              root.MapRole(new PdfName("title"), PdfName.H);
              root.MapRole(new PdfName("para"), PdfName.P);
              top = new PdfStructureElement(
            root, new PdfName("chapter")
              );

              canvas = writer.DirectContent;
              column = new ColumnText(canvas);
              column.SetSimpleColumn(36, 36, 384, 569);
              font = new Font(
            BaseFont.CreateFont(
              "c:/windows/fonts/arial.ttf", BaseFont.WINANSI, BaseFont.EMBEDDED
            ), 12
              );

              using (XmlReader xr = XmlReader.Create(RESOURCE)) {
            xr.MoveToContent();
            while (xr.Read()) {
              switch (xr.NodeType) {
                case XmlNodeType.Element:
                  StartElement(xr.Name);
                  break;
                case XmlNodeType.Text:
                  buf.Append(Regex.Replace(xr.Value.Trim(), "\n", " "));
                  break;
                case XmlNodeType.EndElement:
                  EndElement(xr.Name);
                  break;
              }
            }
              }
            }
            return ms.ToArray();
              }
        }
Exemple #2
0
        private void InitializeDocument(String name, char pdfVersion) {
            output = OUT + name + ".pdf";
            document = new Document();
            writer = PdfWriter.GetInstance(document, new FileStream(output, FileMode.Create));
            writer.PdfVersion = pdfVersion;
            writer.SetTagged();
            document.Open();

            //Required for PDF/UA
            writer.ViewerPreferences = PdfWriter.DisplayDocTitle;
            document.AddLanguage("en-US");
            document.AddTitle("Some title");
            writer.CreateXmpMetadata();
            Chunk c = new Chunk("Document Header", new Font(Font.FontFamily.HELVETICA, 14, Font.BOLD, BaseColor.BLUE));
            h1 = new Paragraph(c);
            h1.Role = PdfName.H1;
        }
        public byte[] SetMetadati(System.IO.MemoryStream inputPdf, IDictionary <string, string> md)
        {
            inputPdf.Position = 0;
            iTextSharp.text.pdf.PdfReader prd   = new iTextSharp.text.pdf.PdfReader(inputPdf);
            iTextSharp.text.Rectangle     psize = prd.GetPageSize(1);
            Document doc = new Document(psize, 50, 50, 50, 70);

            System.IO.MemoryStream output = new System.IO.MemoryStream();
            output.Position = 0;

            iTextSharp.text.pdf.PdfWriter wr = iTextSharp.text.pdf.PdfWriter.GetInstance(doc, output);
            doc.AddAuthor(md["author"]);
            doc.AddCreator(md["creator"]);
            doc.AddSubject(md["subject"]);
            wr.SetTagged();

            doc.Open();

            /*
             * EndPage pageEvent = new EndPage();
             * pageEvent.CIU = md["ciu"];
             * pageEvent.IDUfficio = md["id_ufficio"];
             * pageEvent.DocumentDate = md["data_emissione"];
             *
             * wr.PageEvent = pageEvent;
             */
            //wr.SetPdfVersion(PdfWriter.PDF_VERSION_1_7);
            wr.SetPdfVersion(PdfWriter.PDF_VERSION_1_6);
            PdfContentByte content = wr.DirectContent;

            for (int i = 1; i <= prd.NumberOfPages; i++)
            {
                doc.NewPage();
                PdfImportedPage pg = wr.GetImportedPage(prd, i);
                content.AddTemplate(pg, 0, 0);
            }
            doc.Close();
            return(output.ToArray());
        }