vb.net - VB.NET 不是将页面插入 PDF 而是替换
问题描述
我正在尝试在 Page to PDF 中插入一个页面。这是我生成PDF的代码
Dim MyPdfFilePath As String = "C:\BLH Data\MyPdf.pdf"
Dim PdfDoc As New Document()
PdfDoc = New Document(New Rectangle(579.5F, 936.0F).Rotate)
PdfDoc.SetMargins(0.0F, 0.0F, 0.0F, 100.0F)
Dim PdfImg As iTextSharp.text.Jpeg
Using bm As New Bitmap(ContainerOfFeedBack.Width, ContainerOfFeedBack.Height)
ContainerOfFeedBack.DrawToBitmap(bm, New System.Drawing.Rectangle(0, 0, bm.Width, bm.Height))
Using ms As New MemoryStream
bm.Save(ms, Imaging.ImageFormat.Jpeg)
PdfImg = New iTextSharp.text.Jpeg(ms.GetBuffer)
End Using
End Using
Using fs As New FileStream(MyPdfFilePath, FileMode.Create, FileAccess.Write, FileShare.None)
Using pdfWrite As PdfWriter = PdfWriter.GetInstance(PdfDoc, fs)
PdfDoc.Open()
PdfDoc.Add(PdfImg)
PdfDoc.Close()
End Using
End Using
PdfDoc.Dispose()
这是我在插入新页面中的代码
Dim MyPdfFilePath As String = "C:\BLH Data\MyPdf.pdf"
Dim document As Document = New Document()
PdfWriter.GetInstance(document, New FileStream("C:\BLH Data\MyPdf.pdf", FileMode.Append, FileAccess.Write, FileShare.None))
document.Open()
Dim p1 = New Paragraph("This is First Page")
document.Add(p1)
document.NewPage()
Dim p2 = New Paragraph("This is Second Page")
document.Add(p2)
document.Close()
当我单击生成 PDF(第一个代码)时,它将创建一个 PDF 文件。现在的问题是,当我单击插入新 PDF(第二个代码)时,将生成插入“新 PDF 代码”,现在将替换第一个 PDF。我的问题是,当我单击第一个代码时,现在正在生成 pdf1,当我单击第二个代码时,pdf1 正在被 pdf2 替换。有人可以指出我如何解决这个问题的正确方向吗?
解决方案
推荐阅读
- javascript - 来自浏览器的 HTTP 请求,是否已记录?
- amazon-web-services - 有没有办法在 Amazon CodeCommit 存储库上使用 MD 来锚定文档本身的会话?
- c# - 在 ConfigureServices 方法中访问数据库
- node.js - Nodejs可读流,在expressjs中使用管道无法响应
- intellisense-documentati - javascript中的三点操作被vscode intelisense阻止
- java - 无需任何交易即可将 PayPal Vault 保存在 Braintree 中
- c++ - MinGW-w64 g++ 不生成可执行文件
- neo4j - new Neo4jGraphQL({ typeDefs, driver }) 导致未知指令错误
- c - 我可以确定重新分配更少的内存总能找到足够的内存吗?
- flutter - Flutter 依赖兼容性问题“syncfusion_flutter_pdf”