【问题标题】:How can I add an image as a pdf header?如何将图像添加为 pdf 标题?
【发布时间】:2013-07-19 17:44:49
【问题描述】:

我正在使用下面的代码生成 pdf。有没有办法可以指向图像并将其用作标题? “~/images/Header.png”?任何帮助,将不胜感激。谢谢。

Dim myUniqueFileName = String.Format("{0}.pdf", random)
    Dim pdfWrite As PdfWriter = PdfWriter.GetInstance(Doc1, New FileStream(path & myUniqueFileName, FileMode.Create))
    Dim ev As New itsEvents
    pdfWrite.PageEvent = ev

    Doc1.Open()
    Dim test As String
    test = Session("PDF")
    Doc1.Add(New Paragraph(test))

    Doc1.Close()
End Sub
Public Class itsEvents
    Inherits PdfPageEventHelper
    Public Overrides Sub OnStartPage(ByVal writer As iTextSharp.text.pdf.PdfWriter, ByVal document As iTextSharp.text.Document)
        Dim ch As New Chunk("This is my Header on page " & writer.PageNumber)
        document.Add(ch)
    End Sub
End Class

【问题讨论】:

标签: asp.net vb.net pdf-generation itextsharp


【解决方案1】:

试试这个:

Dim imagepath As String = Server.MapPath(".") & "/logo/Anjanlogo.jpg"
Dim image As iTextSharp.text.Image = iTextSharp.text.Image.GetInstance(imagepath)
image.ScalePercent(24F)
doc.Add(image)

注意:24F 缩放源于这样一个事实:默认情况下,嵌入式图像为 72 DPI,而大多数商业打印机使用 300 DPI,因此 72/300 * 100 = 24%。

要在页面上移动图像,您可以使用SetAbsolutePosition 方法,如下所示:

image.SetAbsolutePosition(36F, 36F)

注意:36F 是 PDF 的边距,所以这会将徽标推到 PDF 的左上角,但仍保持边框。

【讨论】:

  • 我怎样才能在每一页重复这个..?
猜你喜欢
  • 1970-01-01
  • 2021-04-09
  • 2015-06-06
  • 1970-01-01
  • 2011-09-18
  • 1970-01-01
  • 2013-04-04
相关资源
最近更新 更多