C# / VB.NET在PDF中加盖骑缝章

 时间:2026-02-14 10:04:15

1、在E-iceblue中文官网下载并解压安装到本地指定路径,完成安装后,将安装路径下Bin文件夹下的Spire.Pdf.dll文件添加引用至VS程序。

如下引用效果:

C# / VB.NET在PDF中加盖骑缝章

1、using System.Collections.Generic;

using System.Drawing;

using Spire.Pdf;

using Spire.Pdf.Graphics;

namespace PagingSeal

{

    class Program

    {

        static void Main(string[] args)

        {

            //加载PDF测试文档

            PdfDocument doc = new PdfDocument();

            doc.LoadFromFile("test.pdf");         

            //获取分割后的印章图片

            Image[] images = GetImage(doc.Pages.Count);

            float x = 0;

            float y = 0;

            PdfUnitConvertor convert = new PdfUnitConvertor();

            PdfPageBase pageBase = null;

            //将图片绘制到PDF页面上的指定位置

            for (int i = 0; i < doc.Pages.Count; i++)

            {

                pageBase = doc.Pages[i];

                x = pageBase.Size.Width - convert.ConvertToPixels(images[i].Width, PdfGraphicsUnit.Point) - 40;

                y = pageBase.Size.Height / 2;

                pageBase.Canvas.DrawImage(PdfImage.FromImage(images[i]), new PointF(x, y));

            }

            //保存文档

            doc.SaveToFile("Result.pdf");

            System.Diagnostics.Process.Start("Result.pdf");

        }

        //定义GetImage方法,根据PDF页数分割印章图片

        static Image[] GetImage(int num)

        {

            List<Bitmap> lists = new List<Bitmap>();

            Image image = Image.FromFile("seal.png");

            int w = image.Width / num;

            Bitmap bitmap = null;

            for (int i = 0; i < num; i++)

            {

                bitmap = new Bitmap(w, image.Height);

                using (System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap))

                {

                    g.Clear(Color.White);

                    Rectangle rect = new Rectangle(i * w, 0, w, image.Height);

                    g.DrawImage(image, new Rectangle(0, 0, bitmap.Width, bitmap.Height), rect, GraphicsUnit.Pixel);

                }

                lists.Add(bitmap);

            }

            return lists.ToArray();

        }

    }

}

2、骑缝章添加效果:

C# / VB.NET在PDF中加盖骑缝章

1、Imports System.Collections.Generic

Imports System.Drawing

Imports Spire.Pdf

Imports Spire.Pdf.Graphics

Namespace PagingSeal

         Class Program

                   Private Shared Sub Main(args As String())

                            '加载PDF测试文档

                            Dim doc As New PdfDocument()

                            doc.LoadFromFile("test.pdf")

                            '获取分割后的印章图片

                            Dim images As Image() = GetImage(doc.Pages.Count)

                            Dim x As Single = 0

                            Dim y As Single = 0

                            Dim convert As New PdfUnitConvertor()

                            Dim pageBase As PdfPageBase = Nothing

                            '将图片绘制到PDF页面上的指定位置

                            For i As Integer = 0 To doc.Pages.Count - 1

                                     pageBase = doc.Pages(i)

                                     x = pageBase.Size.Width - convert.ConvertToPixels(images(i).Width, PdfGraphicsUnit.Point) - 40

                                     y = pageBase.Size.Height / 2

                                     pageBase.Canvas.DrawImage(PdfImage.FromImage(images(i)), New PointF(x, y))

                            Next

                            '保存文档

                            doc.SaveToFile("Result.pdf")

                            System.Diagnostics.Process.Start("Result.pdf")

                   End Sub

                   '定义GetImage方法,根据PDF页数分割印章图片

                   Private Shared Function GetImage(num As Integer) As Image()

                            Dim lists As New List(Of Bitmap)()

                            Dim image__1 As Image = Image.FromFile("seal.png")

                            Dim w As Integer = image__1.Width / num

                            Dim bitmap As Bitmap = Nothing

                            For i As Integer = 0 To num - 1

                                     bitmap = New Bitmap(w, image__1.Height)

                                     Using g As System.Drawing.Graphics = System.Drawing.Graphics.FromImage(bitmap)

                                              g.Clear(Color.White)

                                               Dim rect As New Rectangle(i * w, 0, w, image__1.Height)

                                             g.DrawImage(image__1, New Rectangle(0, 0, bitmap.Width, bitmap.Height), rect, GraphicsUnit.Pixel)

                                     End Using

                                     lists.Add(bitmap)

                            Next

                            Return lists.ToArray()

                   End Function

         End Class

End Namespace

  • 企业注册商标的流程
  • 就业拼音怎么拼写
  • 蘑菇中毒的急救?
  • 屏风隔断的生产工艺
  • 电子签章系统有哪些功能?
  • 热门搜索
    我爱我的祖国手抄报 科学手抄报内容 防溺水手抄报资料 关于文明的手抄报 元宵节手抄报图片大全简单又漂亮 饮食安全手抄报 春天的手抄报图片 网络安全手抄报内容 绿色校园手抄报 清明节手抄报内容文字