使用Itext将文本插入现有Pdf [英] Inserting Text To an Existing Pdf using Itext

查看:139
本文介绍了使用Itext将文本插入现有Pdf的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的要求是



1.想在现有的pdf中插入多行文字。

2.如果我有更多超过1 pdf,如何以超过1 pdf的方式插入文本。



我已经提供了我的代码,这里我以pdf输出为单行文本在编码中添加vbnewline之后。不是多行,它是如何可能的?

以及多页插入文本。请通过以下代码向我提供解决方案

 公共 功能 pdfwrite()
Dim newFile As String = D:\ Temp \ new.pdf
Dim oldfile as string = < span class =code-string> D:\ Temp \old.pdf
Dim reader As PdfReader(oldfile)
Dim size As Rectangle = reader.GetPageSizeWithRotation( 1
Dim 文件作为 文档(大小)
Dim Fs As FileStream = FileStream(newFile,FileMode.Create,FileAccess.Write)
Dim writer As PdfWriter = PdfWriter.GetInstance(Document,Fs)
Document.Open( )
Dim cb As PdfContentByte = writer.DirectContent
Dim bf 作为 BaseFont = BaseFont.CreateFont(BaseFont.HELVETICA,BaseFont.CP1252,BaseFont.NOT_EMBEDDED)
' <跨度类= 代码注释> cb.SetColorFill(BaseColor.DARK_GRAY)
cb.SetFontAndSize(BF,<跨度类=代码数字> 8 )
cb.BeginText()
stext =
部分:类似•类型:特征•支持:60000•计数:127•& vbNewLine& 大小:544.02& vbNewLine& ID:807
cb.ShowTextAligned( 1 ,stext, 320 80 0
cb.EndText()
Dim page As PdfImportedPage = writer.GetImportedPage(读取器,<跨度类= 代码位> 1
cb.AddTemplate(页面,<跨度类= 代码位> 0 0
Document.Close()
Fs.Close()
writer.Close()
reader。关闭()
返回 0
结束 功能

解决方案

我不确定PDF编写者会考虑换行符。查看 http://itextpdf.com/examples/iia.php?id=246 [ ^ ]我认为您需要单独添加每个行部分。

My requirement is

1. Want to insert a multi-line text in existing pdf.
2. If iam having more than 1 pdf, how it is possible to insert text in more than 1 pdf.

I have given my code, Here iam getting as single line text in pdf output even after adding vbnewline in coding. Not as multi-line,How is it possbile ?
and also about multi-page insert text. Kindly provide me a solution from below code

 Public Function pdfwrite()
    Dim newFile As String = "D:\Temp\new.pdf"
    Dim oldfile as string = "D:\Temp\old.pdf"
    Dim reader As New PdfReader(oldfile)
    Dim size As Rectangle = reader.GetPageSizeWithRotation(1)
    Dim Document As New Document(size)
    Dim Fs As FileStream = New FileStream(newFile, FileMode.Create, FileAccess.Write)
    Dim writer As PdfWriter = PdfWriter.GetInstance(Document, Fs)
    Document.Open()
    Dim cb As PdfContentByte = writer.DirectContent
    Dim bf As BaseFont = BaseFont.CreateFont(BaseFont.HELVETICA, BaseFont.CP1252, BaseFont.NOT_EMBEDDED)
    'cb.SetColorFill(BaseColor.DARK_GRAY)
    cb.SetFontAndSize(bf, 8)
    cb.BeginText()
    stext = " Section:Similar • type :Feature • support:60000 •  count:127 • " & vbNewLine & "Size:544.02" & vbNewLine & "ID:807"
    cb.ShowTextAligned(1, stext, 320, 80, 0)
    cb.EndText()
    Dim page As PdfImportedPage = writer.GetImportedPage(reader, 1)
    cb.AddTemplate(page, 0, 0)
    Document.Close()
    Fs.Close()
    writer.Close()
    reader.Close()
    Return 0
End Function

解决方案

I am not sure that PDF writers take account of newline characters. Looking at http://itextpdf.com/examples/iia.php?id=246[^] I think you need to add each line part separately.


这篇关于使用Itext将文本插入现有Pdf的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆