Exemplo n.º 1
0
        public FileStreamResult Annotate(int id)
        {
            string tempFile = GetTempFilePath();

            using (PdfReader reader = new PdfReader(GetFilePath()))
            {
                reader.SetUnethicalReading(true);
                using (PdfDocument pdfDoc = new PdfDocument(reader, new PdfWriter(tempFile)))
                {
                    PdfAcroForm pdfForm = PdfAcroForm.GetAcroForm(pdfDoc, true);
                    //var list = pdfForm.GetPdfObject().Values();

                    foreach (var de in pdfForm.GetFormFields())
                    {
                        var           formField = de.Value;
                        PdfAnnotation text      = PdfAnnotation.MakeAnnotation(formField.GetPdfObject()); //, PdfAnnotation.(){ , new Rectangle(200f, 250f, 300f, 350f), "Fox", "The fox is quick", true, "Comment");
                        if (text != null)
                        {
                            text.s(new PdfString(de.Key));
                        }
                        //fields.Add(new PdfFormField() { Name = de.Key, Value = formField.GetValueAsString() });
                    }
                    pdfDoc.Close();
                }
            }

            return(new FileStreamResult(new FileStream(tempFile, FileMode.Open), "application/pdf"));
        }