好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

C#给PDF文件添加水印

本文实例为大家分享了C#添加PDF文件水印的具体代码,供大家参考,具体内容如下

?

using System;

using System.Collections.Generic;

using System.Linq;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using iTextSharp.text.html.simpleparser;

using iTextSharp.text.pdf;

using iTextSharp.text;

using System.IO;

using System.Web.UI.HtmlControls;

using System.Drawing;

 

//itextsharp.dll version:5.1.10

 

protected void Button1_Click( object sender, EventArgs e)

   {

   string source = @"D:\My.Sample\C#NET\Exoport2PDF\Web2\Chap1011.pdf" ; //模板路径

   string output = @"D:\My.Sample\C#NET\Exoport2PDF\Web2\Chap1012.pdf" ; //导出水印背景后的PDF

   string watermark = @"D:\My.Sample\C#NET\Exoport2PDF\Web2\gp0.jpg" ; // 水印图片

 

   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;

    }

 

    image.SetAbsolutePosition(left, (height - image.Height) - top);

 

 

    //每一页加水印,也可以设置某一页加水印

    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();

   }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

dy("nrwz");

查看更多关于C#给PDF文件添加水印的详细内容...

  阅读:45次