ブリーフ
ビジネスのニーズは、我々は2次元コードのPDF図面に機能を追加する必要があり、実装プロセスレコード
ダウンロードライブラリ
参照の追加
名前空間を追加します。
使用してSystem.IOを。 使用して iTextSharp.text.pdfを。
ピクチャーハンドラを挿入
/// <まとめ> /// PDF画像に付加 /// </要約> /// <PARAM NAME = "oldp"> 元アドレスPDF </ PARAM> /// <PARAM NAME = "IMP"> 画像のURL </ PARAM> /// <PARAM NAME = "X"> X軸座標</ PARAM> /// <PARAM NAME = "Y"> Y軸座標</ PARAM> 保護された ボイド AddImg(文字 oldp、列 IMP、int型 X、INT Y) { 文字列 NEWP = Path.GetDirectoryName(oldp)+パス。GetFileNameWithoutExtension(oldP)+ " _temp.pdf "; ; 試す { 使用して(ストリームinputPdfStream = 新規のFileStream(oldP、FileMode.Open、FileAccess.Read、FileShare.Read)) 用いて(ストリームinputImageStream = 新規のFileStream(IMP、FileMode.Open、FileAccess.Read、FileShare.Read))を 使用して(ストリームoutputPdfStream = 新規のFileStream(NEWP、FileMode.Create、FileAccess.Write、FileShare.None)) { VARのリーダー= 新しい PdfReader(inputPdfStream)。// 读取原有のpdf のvarスタンパー= 新しいですPdfStamper(リーダー、outputPdfStream); VAR pdfContentByte stamper.GetOverContent =(1); // 取得し最初のPDFページのコンテンツ iTextSharp.text.Imageイメージ= iTextSharp.text.Image.GetInstance(inputImageStreamは); // 取得画像 image.ScalePercent (40); // 画像比率設定 image.SetAbsolutePosition(X、Y)を; // 画像の絶対位置設定 pdfContentByte.AddImage(イメージ); stamper.Close(); } } キャッチ(例外EX) { スローEXと、 } 最後に { File.Copy(NEWP、oldP、真)。 File.Delete(NEWP)。 } }
実現
プライベート 無効のButton1 Click(オブジェクト送信者、EventArgsの電子) { しようと { 文字列 destPhysicalFile = @ " C:\ユーザーは、管理者\デスクトップ\ K0000113_舱容图のPDFファイルを\ " 。 文字列 IMG = @ " C:\ユーザーは\ 1572568425.png管理者\デスクトップ\します"。// 图片文件路径 AddImg(destPhysicalFile、IMG、129、574 )。 MessageBox.Show(" OK " ); } キャッチ(例外例) { スローEXを。 } }
効果