欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#給PDF文件添加水印

 更新時(shí)間:2020年04月18日 10:31:42   作者:DODONG  
這篇文章主要為大家詳細(xì)介紹了C#給PDF文件添加水印的相關(guān)代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了C#添加PDF文件水印的具體代碼,供大家參考,具體內(nèi)容如下

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"; //導(dǎo)出水印背景后的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//旋轉(zhuǎn)
   //image.RotationDegrees//旋轉(zhuǎn)角度
   //水印的位置 
   if (left < 0)
   {
    left = width - image.Width + left;
   }

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


   //每一頁(yè)加水印,也可以設(shè)置某一頁(yè)加水印 
   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();
  }

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Visual Studio連接unity編輯器的實(shí)現(xiàn)步驟

    Visual Studio連接unity編輯器的實(shí)現(xiàn)步驟

    unity編輯器中打開(kāi)C#腳本的時(shí)候發(fā)現(xiàn)Visual Studio沒(méi)有連接unity編輯器,本文主要介紹了Visual Studio連接unity編輯器的實(shí)現(xiàn)步驟,感興趣的可以了解一下
    2023-11-11
  • 讀寫(xiě)XML文件的內(nèi)容并將其顯示在ListView控件上的方法

    讀寫(xiě)XML文件的內(nèi)容并將其顯示在ListView控件上的方法

    下面小編就為大家?guī)?lái)一篇讀寫(xiě)XML文件的內(nèi)容并將其顯示在ListView控件上的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-02-02
  • 使用GetInvalidFileNameCharts生成文件名

    使用GetInvalidFileNameCharts生成文件名

    這篇文章主要介紹了一個(gè)很實(shí)用的函數(shù)Path.GetInvalidFileNameCharts(),他可以很方便的生成一個(gè)有效的文件名稱(chēng)
    2014-01-01
  • C#使用CDO發(fā)送郵件的方法

    C#使用CDO發(fā)送郵件的方法

    這篇文章主要介紹了C#使用CDO發(fā)送郵件的方法,涉及C#使用Windows COM組件實(shí)現(xiàn)郵件發(fā)送的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-07-07
  • 基于C# 寫(xiě)一個(gè) Redis 數(shù)據(jù)同步小工具

    基于C# 寫(xiě)一個(gè) Redis 數(shù)據(jù)同步小工具

    Redis支持主從同步。數(shù)據(jù)可以從主服務(wù)器向任意數(shù)量的從服務(wù)器上同步,從服務(wù)器可以是關(guān)聯(lián)其他從服務(wù)器的主服務(wù)器。這篇文章主要介紹了用 C# 寫(xiě)一個(gè) Redis 數(shù)據(jù)同步小工具,需要的朋友可以參考下
    2020-02-02
  • C# 刪除數(shù)組內(nèi)的某個(gè)值、一組值方法詳解

    C# 刪除數(shù)組內(nèi)的某個(gè)值、一組值方法詳解

    在本篇文章里小編給大家整理的是關(guān)于C# 如何刪除數(shù)組內(nèi)的某個(gè)值、一組值的相關(guān)知識(shí)點(diǎn),需要的朋友們學(xué)習(xí)下。
    2020-03-03
  • Unity UGUI實(shí)現(xiàn)簡(jiǎn)單拖拽圖片功能

    Unity UGUI實(shí)現(xiàn)簡(jiǎn)單拖拽圖片功能

    這篇文章主要為大家詳細(xì)介紹了Unity UGUI實(shí)現(xiàn)簡(jiǎn)單拖拽圖片功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • C#實(shí)現(xiàn)文章添加內(nèi)鏈的方法

    C#實(shí)現(xiàn)文章添加內(nèi)鏈的方法

    文章添加內(nèi)鏈有利于提高讀者閱讀體驗(yàn),有利于搜索引擎優(yōu)化,提升頁(yè)面瀏覽量,下面小編通過(guò)兩種方法說(shuō)下用c#實(shí)現(xiàn)文章添加內(nèi)鏈的方法,一起看看吧
    2018-08-08
  • C#使用反射機(jī)制實(shí)現(xiàn)延遲綁定

    C#使用反射機(jī)制實(shí)現(xiàn)延遲綁定

    這篇文章介紹了C#使用反射實(shí)現(xiàn)延遲綁定的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • C#單例模式(Singleton Pattern)實(shí)例教程

    C#單例模式(Singleton Pattern)實(shí)例教程

    這篇文章主要介紹了C#單例模式(Singleton Pattern)的實(shí)現(xiàn)方法,主要講述了即時(shí)加載的單例模式、延遲加載的單例模式與線程安全的單例模式,需要的朋友可以參考下
    2014-09-09

最新評(píng)論