投稿者 snowmansnow  (社会人) 投稿日時 2022/8/28 15:42:11

 こんにちは、
   誰もかまってくれなかったので、独学で試行錯誤しました。

using System;
using System.Windows.Forms;
using iText.Kernel.Colors;
using iText.Kernel.Pdf;
using iText.Kernel.Pdf.Annot;
using Rectangle = iText.Kernel.Geom.Rectangle;

namespace WindowsFormsApp_PdfInkAnnoCS
{
    public partial class Form1Line11 : Form
    {
        public Form1Line11()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {

            String SRC = "C:/ほげほげ/元.PDF";

            String DEST = "C:/ほげほげ/追加.PDF";

            int p = 1;
            //Initialize PDF document
            PdfDocument pdfDoc = new PdfDocument(new PdfReader(SRC), new PdfWriter(DEST));

                //Creating a PdfPage
                PdfPage page = pdfDoc.GetPage(p);

                //creating PdfLineAnnotation object
                Rectangle rect = new Rectangle(0, 0, 0, 0);

            float[][] inklist = new float[8][];
            inklist[0] = new float[2];                 
            inklist[1] = new float[2];                 
            inklist[2] = new float[2];
            inklist[3] = new float[2];
            inklist[4] = new float[2];
            inklist[5] = new float[2];
            inklist[6] = new float[2];
            inklist[7] = new float[2];
            inklist[0][0] = 100;                     
            inklist[0][1] = 0;                    
            inklist[1][0] = 130;                     
            inklist[1][1] = 30;                    
            inklist[2][0] = 50;                    
            inklist[2][1] = 50;                    
            inklist[3][0] = 70;                   
            inklist[3][1] = 70;
            inklist[4][0] = 100;
            inklist[4][1] = 100;
            inklist[5][0] = 240;
            inklist[5][1] = 200;
            inklist[6][0] = 70;
            inklist[6][1] = 200;
            inklist[7][0] = 100;
            inklist[7][1] = 0;

            PdfArray outer = new PdfArray();
            PdfArray inner = new PdfArray();

            for (int k = 0; k < inklist.Length; ++k)
            {
                float[] deep = inklist[k];
                for (int j = 0; j < deep.Length; ++j)
                {
                    inner.Add(new PdfNumber(deep[j]));
                }
               
            }
            outer.Add(inner);
            //dummy
            outer.Add(inner);

            PdfInkAnnotation inkAnnotation = new PdfInkAnnotation(rect, outer);

            // Set arrow's border style 
            PdfDictionary borderStyle = new PdfDictionary();
                borderStyle.Put(PdfName.S, PdfName.S);
                borderStyle.Put(PdfName.W, new PdfNumber(3));
                inkAnnotation.SetBorderStyle(borderStyle);

                //Setting color of the PdfLineAnnotation
                inkAnnotation.SetColor(ColorConstants.RED);

                //Setting title to the PdfLineAnnotation
                inkAnnotation.SetTitle(new PdfString("iText"));

                //Setting contents of the PdfLineAnnotation
                inkAnnotation.SetContents("Hi welcome to finddevguides");

                //Adding annotation to the page
                page.AddAnnotation(inkAnnotation);

            //Closing the document
            pdfDoc.Close();

            }
        }
    }


フォームアプリケーションです。
一応動きます。
一人はつらいです。また宜しくお願いします。