これを行うにはいくつかの方法を試みましたが、まだそれを得ることはできません。 iTextSharpは画像がテキストの上に現れるように2パスの状況が必要です。 メモリストリームを使用してこれを実行しようとしていますが、エラーが発生し続けます。PDF itextSharpを使用すると、PDF文書を作成中にテキストの上にイメージを置くことができます
Public Function createDoc(ByRef reqResponse As HttpResponse) As Boolean
Dim m As System.IO.MemoryStream = New System.IO.MemoryStream()
Dim document As Document = New Document()
Dim writer As PdfWriter = iTextSharp.text.pdf.PdfWriter.GetInstance(document, m)
document.Open()
document.Add(New Paragraph(DateTime.Now.ToString()))
document.Add(New Paragraph(DateTime.Now.ToString()))
document.Add(New Paragraph(DateTime.Now.ToString()))
document.Add(New Paragraph(DateTime.Now.ToString()))
document.Add(New Paragraph(DateTime.Now.ToString()))
document.Add(New Paragraph(DateTime.Now.ToString()))
document.Add(New Paragraph(DateTime.Now.ToString()))
document.Close()
writer.Flush()
writer.Flush()
'yes; I get the pdf if this is the last statement
'reqResponse.OutputStream.Write(m.GetBuffer(), 0, m.GetBuffer().Length)
'this statment does not work it says the stream is closed
'm.Position = 0
Dim Reader As PdfReader = New PdfReader(m)
'Dim rm As MemoryStream = New MemoryStream(m.GetBuffer(), 0, m.GetBuffer().Length)
Dim PdfStamper As PdfStamper = New PdfStamper(Reader, reqResponse.OutputStream)
Dim cb As iTextSharp.text.pdf.PdfContentByte = Nothing
cb = PdfStamper.GetOverContent(1)
Dim locMyImage As System.Drawing.Image = System.Drawing.Image.FromStream(zproProduceWhiteImageToCovertBarCodeNumbers())
Dim BImage As iTextSharp.text.Image = iTextSharp.text.Image.GetInstance(locMyImage, iTextSharp.text.BaseColor.CYAN)
Dim overContent As PdfContentByte = PdfStamper.GetOverContent(1)
BImage.SetAbsolutePosition(5, 5)
overContent.AddImage(BImage)
PdfStamper.FormFlattening = True
PdfStamper.Close()
'rm.Flush()
'rm.Close()
'Dim data As Byte() = rm.ToArray()
'reqResponse.Clear()
'Dim finalMs As MemoryStream = New MemoryStream(data)
'reqResponse.ContentType = "application/pdf"
'reqResponse.AddHeader("content-disposition", "attachment;filename=labtest.pdf")
'reqResponse.Buffer = True
'finalMs.WriteTo(reqResponse.OutputStream)
'reqResponse.End()
'Dim data As Byte() = rm.ToArray()
'reqResponse.OutputStream.Write(data, 0, data.Length)
''Response.OutputStream.Write(m.GetBuffer(), 0, m.GetBuffer().Length);
''Response.OutputStream.Flush();
''Response.OutputStream.Close();
''Response.End();
HttpContext.Current.ApplicationInstance.CompleteRequest()
Return True
End Function
参照: Put text on top of an image?
さがすエンジン参照:上にitextpdf itextsharp画像と背景PDF 画像の重複と同じ色で画像を使用してPDF文書に 白飛びテキストトップ
おかげでテキスト itextpdf画像の上にテキストホワイトアウト itextsharpの場所の画像、の ダグLubeyルイジアナ
[PDF改訂](http://blogs.adobe.com/security/2009/12/how_to_properly_redact_pdf_fil.html)のように見えます。うまくいけばそれはあなたの意図ではない。 iText [Sharp]でさえこのようにして作成されたPDFからテキストを回復することができます。 [One link](http://www.mail-archive.com/[email protected]/msg58936.html)および[another](http://www.mail-archive.com/itext- [email protected]/msg57640.html)をメーリングリストから削除して、**適切な**修正作業のために別のツールを使用する方が簡単であることを説明しています。 (両方のスレッドで回答した人がAdobeのために働いていて、PDF **のエキスパート**です) – kuujinbo