使用itextsharp c#在现有PDF上绘制圆圈

Jso*_*son 3 c# itextsharp

我在现有的PDF上画了一些麻烦,我找到了一个代码来在现有的PDF上添加文字,我试图让它适应画圈,但结果只是一个空白页有没有人知道如何解决这个问题?

我的代码:

        string oldFile = @"C:\...6166-21.pdf";
        string newFile = @"C:\...NEW.pdf";

        // open the reader
        PdfReader reader = new PdfReader(oldFile);
        Rectangle size = reader.GetPageSizeWithRotation(1);
        Document document = new Document(size);

        FileStream fs = new FileStream(newFile, FileMode.Create, FileAccess.Write);
        PdfWriter writer = PdfWriter.GetInstance(document, fs);
        document.Open();

        // the pdf content
        PdfContentByte cb = writer.DirectContent;

        cb.Circle(150f, 150f, 50f);
        cb.SetColorStroke(iTextSharp.text.BaseColor.GREEN);

        // create the new page and add it to the pdf
        PdfImportedPage page = writer.GetImportedPage(reader, 1);
        cb.AddTemplate(page, 0, 0);

        // close the streams and voilá the file should be changed :)
        document.Close();
        fs.Close();
        writer.Close();
        reader.Close();
Run Code Online (Sandbox Code Playgroud)

Ale*_*ach 6

你忘了添加 cb.Stroke();

请尝试这样:

cb.SetColorStroke(iTextSharp.text.BaseColor.GREEN);
cb.Circle(150f, 150f, 50f);
cb.Stroke();
Run Code Online (Sandbox Code Playgroud)