PDFsharp 位图大小
PDFsharp bitmap size
我正在使用 PDFsharp 库将控件转换为 PDF 文件。问题是位图图像,即使我设置了高度和宽度并且格式是 A4,也不会填充 Adobe 中的视图 Reader。
我还尝试从 DPI 手动设置参数,但它不起作用。脚本是:
Dim docum As New PdfDocument()
For i As Integer = 0 To FoglioFattura1.listaPagIndex.Count - 1
Dim memImage = New Bitmap(FoglioFattura1.Width, FoglioFattura1.Height) 'A4Size
FoglioFattura1.DrawToBitmap(memImage, New Rectangle(0, 0, FoglioFattura1.Width, FoglioFattura1.Height))
Dim oPage As New PdfPage()
oPage.Orientation = PageOrientation.Portrait
oPage.Size = PageSize.A4
'oPage.TrimMargins.Left = 30
'oPage.TrimMargins.Top = 50
docum.Pages.Add(oPage)
Dim xgr As XGraphics = XGraphics.FromPdfPage(oPage)
Dim img As XImage = XImage.FromGdiPlusImage(memImage)
xgr.DrawImage(img, 0, 0)
Next
这些是文档的尺寸,出于隐私原因我隐藏了内容。我想让文档填满视图。
问题是您调用 DrawImage
时没有指定 PDF 中图像的目标大小。将宽度和高度添加到 DrawImage
调用,图像将按您指定的尺寸绘制。
PDF 没有 DPI。 PDF 页面的大小以点为单位 - 而点不是像素。
另请参阅:
https://en.wikipedia.org/wiki/Point_(typography)
我正在使用 PDFsharp 库将控件转换为 PDF 文件。问题是位图图像,即使我设置了高度和宽度并且格式是 A4,也不会填充 Adobe 中的视图 Reader。
我还尝试从 DPI 手动设置参数,但它不起作用。脚本是:
Dim docum As New PdfDocument()
For i As Integer = 0 To FoglioFattura1.listaPagIndex.Count - 1
Dim memImage = New Bitmap(FoglioFattura1.Width, FoglioFattura1.Height) 'A4Size
FoglioFattura1.DrawToBitmap(memImage, New Rectangle(0, 0, FoglioFattura1.Width, FoglioFattura1.Height))
Dim oPage As New PdfPage()
oPage.Orientation = PageOrientation.Portrait
oPage.Size = PageSize.A4
'oPage.TrimMargins.Left = 30
'oPage.TrimMargins.Top = 50
docum.Pages.Add(oPage)
Dim xgr As XGraphics = XGraphics.FromPdfPage(oPage)
Dim img As XImage = XImage.FromGdiPlusImage(memImage)
xgr.DrawImage(img, 0, 0)
Next
这些是文档的尺寸,出于隐私原因我隐藏了内容。我想让文档填满视图。
问题是您调用 DrawImage
时没有指定 PDF 中图像的目标大小。将宽度和高度添加到 DrawImage
调用,图像将按您指定的尺寸绘制。
PDF 没有 DPI。 PDF 页面的大小以点为单位 - 而点不是像素。
另请参阅:
https://en.wikipedia.org/wiki/Point_(typography)