MuPDF conveter(MuPDFLib)でPDFを画像に変換してみる
MuPDFという軽量なPDFレンダラの.NETバインディングのMuPDF conveter(MuPDFLib)を使ってみた。簡単にPDFをWPFで表示できたりする。地味に32bit/64bit両対応しているのも良い。
MuPDFのソースなりドキュメントを読まないとパラメータの意味がわからない部分があるのだけど、以下のコードで動作することを確認した。
var pdfPath = "test.pdf"; var pdfPassword = String.Empty; //無指定の場合はパスワードなし var width = 0; //0の場合はauto(リサイズしない) var height = 0; var dpiX = 96.0f; var dpiY = 96.0f; var rotation = 0; var renderType = MuPDFLib.RenderType.RGB; var rotateLandscape = false; //よくわからない var convertToLetter = false; //よくわからない var maxPixels = 0; //よくわからない using (var pdf = new MuPDFLib.MuPDF(pdfPath, pdfPassword)) { pdf.Page = 1; //1-origin, 明示的に指定しないとコケる pdf.AntiAlias = true; //アンチエイリアス有効 // WPFのImageにそのまま食わせる imageView.Source = pdf.GetBitmapSource( width, height, dpiX, dpiY, rotation, renderType, rotateLandscape, convertToLetter, maxPixels); }