• C# PDF添加水印


    需要iTextSharp.dll, 下载地址http://sourceforge.net/projects/itextsharp/

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;

    using iTextSharp.text.html.simpleparser;
    using iTextSharp.text.pdf;
    using iTextSharp.text;
    using System.IO;


    namespace pdf_test
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }

            private void button1_Click(object sender, EventArgs e)
            {
                string source = @"D:Sample18.pdf"; //模板路径
                string output = @"D:SampleChap1018.pdf"; //导出水印背景后的PDF
                string watermark = @"D:Sample3.gif";   // 水印图片

                bool isSurrcess = PDFWatermark(source, output, watermark, 10, 10);

            }

            public bool PDFWatermark(string inputfilepath, string outputfilepath, string ModelPicName, float top, float left)
            {
                //throw new NotImplementedException();
                PdfReader pdfReader = null;
                PdfStamper pdfStamper = null;
                try
                {
                    pdfReader = new PdfReader(inputfilepath);

                    int numberOfPages = pdfReader.NumberOfPages;

                    iTextSharp.text.Rectangle psize = pdfReader.GetPageSize(1);

                    float width = psize.Width;

                    float height = psize.Height;

                    pdfStamper = new PdfStamper(pdfReader, new FileStream(outputfilepath, FileMode.Create));

                    PdfContentByte waterMarkContent;

                    iTextSharp.text.Image image = iTextSharp.text.Image.GetInstance(ModelPicName);

                    image.GrayFill = 20;//透明度,灰色填充
                    //image.Rotation//旋转
                    //image.RotationDegrees//旋转角度
                    //水印的位置
                    if (left < 0)
                    {
                        // left = width - image.Width + left;   //h////////////
                    }

                    //image.SetAbsolutePosition(left, (height - image.Height) - top);     //h////////////
                    image.SetAbsolutePosition(136, 36);

                    //每一页加水印,也可以设置某一页加水印
                    for (int i = 1; i <= numberOfPages; i++)
                    {
                        waterMarkContent = pdfStamper.GetUnderContent(i);

                        waterMarkContent.AddImage(image);
                    }
                    //strMsg = "success";
                    return true;
                }
                catch (Exception ex)
                {
                    ex.Message.Trim();
                    return false;
                }
                finally
                {

                    if (pdfStamper != null)
                        pdfStamper.Close();

                    if (pdfReader != null)
                        pdfReader.Close();
                }
            }



            //
        }
    }

  • 相关阅读:
    商品房买卖合同备案
    收房注意事项!--经典!
    商河水木清华业主告媒体书
    商河水木清华全体业主告开发商书
    商河县水木清华全体业主给县委县府的一封信
    大家不要在水木清华买房子了,我的都一年了,还没交房!
    呼吁所有商河水木清华业主拒绝不合理的交房流程
    说说无耻的商河水木清华开发商2013"交房
    拒绝无效的“交房”写给所有商河水木清华业主
    iframe 里的高度适应的问题
  • 原文地址:https://www.cnblogs.com/hutie1980/p/4483072.html
Copyright © 2020-2023  润新知