可以在winForm / wpf应用程序中使用pdf阅读器(adobe acrobat reader)中的测量工具吗? 通过使用哪种api可以实现?
如何将pdf缩放到用户输入值?
提前致谢!
答案 0 :(得分:0)
在WinForms中,是的,您可以嵌入PDF阅读器控件,但我强烈建议您不要。它会将您锁定到特定版本,不会嵌入到64位应用程序中,并且不可靠。
使用WebBrowser
控件更容易:
WebBrowser1.Navigate(myPDFFilename)
要显示不同类型的文件,您需要编写一个小函数:
Sub ShowFileInWebBrowser(wb As WebBrowser, filename As String)
Select Case System.IO.Path.GetExtension(filename).ToLower
Case ".pdf"
wb.Navigate(filename)
Case ".tif"
Dim strHTML As String = "<html><img src='" & filename & "' /></html>"
wb.DocumentText = strHTML
Case Else
Throw New ArgumentException
End Select
End Sub
要编辑或检查TIF,请使用Graphics
对象:
Dim img As Image = Bitmap.FromFile(strFilename)
Dim gfx As Graphics = Graphics.FromImage(img)
您可以按如下方式获取图像的真实尺寸:
Dim strMessage As String = "Image size - Height " & (img.Height / img.VerticalResolution).ToString & " inches, Width " & (img.Width / img.HorizontalResolution).ToString & " inches"
MsgBox(strMessage)
PDF更难。您需要首先提取图像,这将需要一个库。 Aspose会这样做,但它不是免费的。 PdfSharp免费库无法可靠地提取图像。不确定免费的图书馆iTextSharp是否可以做到。