这是我到目前为止的代码:
Imports iTextSharp.text
Imports iTextSharp.text.pdf
Imports System.IO
Module Module1
Sub Main()
AddjImage("C:\test.png", "c:\pdfTemplate.pdf", "C:\output.pdf")
End Sub
Private Function AddjImage(ByVal strImageFileName As String, ByVal pdfTemplateFile As String, ByVal outputPdf As String) As Boolean
Try
Dim iPdfReader As PdfReader = New PdfReader(pdfTemplateFile)
Dim iPdfStamper As PdfStamper = New PdfStamper(iPdfReader, New FileStream(outputPdf, FileMode.Create))
Dim imgjImage As iTextSharp.text.Image
Dim bytContent As PdfContentByte
'Insert Image
imgjImage = iTextSharp.text.Image.GetInstance(strImageFileName)
imgjImage.Alignment = iTextSharp.text.Image.ALIGN_TOP
imgjImage.ScalePercent(78)
imgjImage.SetAbsolutePosition(445, 0)
bytContent = iPdfStamper.GetOverContent(1)
bytContent.AddImage(imgjImage)
iPdfStamper.FormFlattening = True
iPdfStamper.Close()
Return True
Catch ex As Exception
Return False
End Try
End Function
End Module
pdf采用横向布局。页面大小为A4。我想在pdf页面的右侧插入图像。我想在x = 445和y = 0位置上对齐图像。
我有两种尺寸的图像。他们是: 图像1,宽度= 500px;高度= 910px; 图像2,宽度= 500px;高度= 400像素;
问题是,两个图像都对齐底部而不是顶部。因为图像1的顶部被切掉了。
答案 0 :(得分:1)
我尝试了您的代码(经过修改)以适合wpf应用中的按钮单击事件。下面的线必须更改以使图像上升。我觉得您使用的0从下开始。
imgjImage.SetAbsolutePosition(445, 0)
要更改为
imgjImage.SetAbsolutePosition(445, 200)
200不是绝对的,必须根据图像的实际大小进行调整。