大分前になりますが、当ブログでiTextSharpを使ってPDFファイルのページ数を取得したり、結合するスクリプトを紹介しました。
最近、PDFを扱えるMITライセンスのライブラリ「PdfSharp」の存在を知ったので、さっそくPowerShellから試してみることにしました。
PdfSharpのインストール
PdfSharpはNuGetでインストールできます。
nuget install PdfSharp
PdfSharpを使ってPDFファイルを作成するスクリプト
さっそく、PDFを作成するスクリプトを書いてみました。
# *** 下記サイト参照 ***
#https://gammasoft.jp/blog/pdf-japanese-font-by-csharp/
#https://qiita.com/KazTag/items/c8a746baf2792ed47852
[void][Reflection.Assembly]::LoadFile("C:\System\PdfSharp\PdfSharp.dll") #DLL読み込み
$doc = New-Object PdfSharp.Pdf.PdfDocument
$doc.Info.Title = "PdfSharpによって作成されたPDF"
$page = $doc.AddPage()
$page.Size = [PdfSharp.PageSize]::A4
$page.Orientation = [PdfSharp.PageOrientation]::Portrait
$gfx = [PdfSharp.Drawing.XGraphics]::FromPdfPage($page)
$font = [PdfSharp.Drawing.XFont]::new("游明朝", "48")
$rect = [PdfSharp.Drawing.XRect]::new(0, 0, $page.Width, $page.Height)
$gfx.DrawString("こんにちは、世界", $font, [PdfSharp.Drawing.XBrushes]::Black, $rect, [PdfSharp.Drawing.XStringFormats]::Center)
$doc.Save("C:\Test\Sample_PdfSharp.pdf")
上記コードを実行すると、無事に指定した場所にPDFが出力されました。
上記の通り、PdfSharpを使うと簡単にPDFファイルを作成することができます。
日本語でも文字化けすること無く、ライセンスは扱いやすいMIT!
コードサンプルを見る限り、PDFの分割や結合もできるみたいです。
PowerShellからも比較的簡単に扱えるので、覚えておくといつか役立つかもしれないライブラリですね!
参考Webサイト
今回のスクリプトを作成するにあたって、下記サイトを参考にさせていただきました。

 
  ![[PowerShell]iTextSharpを使ってPDFファイルのページ数を取得する](https://www.ka-net.org/blog/wp-content/uploads/eyecatch-PowerShell-120x120.png)
![[PowerShell]iTextSharpを使ってPDFファイルを結合する](https://www.ka-net.org/blog/wp-content/uploads/eyecatch-Other-120x120.png)


















この記事へのコメントはありません。