我是使用这个库的新手,我找到了几个例子(我按页面拆分PDF):
但是当有人开始使用时会发生Filestream
错误(Object reference not ...)
。创建Filestream
时,不会发生任何错误。怎么了?图书馆我已下载here。
修改
private static void Test()
{
Document pdfDocument = new Document( );
PdfWriter.GetInstance(pdfDocument,
new FileStream("D:\\WDPT.PDF", FileMode.Create));
// here is eror
pdfDocument.Open( );
pdfDocument.Add(new Paragraph("Here is a test of creating a PDF"));
pdfDocument.Close( );
}
此代码在控制台应用程序中运行。当我们开始使用filestream时会出现错误(如在其他情况下)。
答案 0 :(得分:0)
试试这个,你必须使用对象编写器
Document pdfDocument= new Document(PageSize.A4);
new PdfWriter.GetInstance(pdfDocument, new FileStream(OutPutFileNameFullPath+ ".pdf", FileMode.Create));
pdfDocument.Open();
pdfDocument.Add(new Paragraph("Here is a test of creating a PDF"));
pdfDocument.Close( );
答案 1 :(得分:0)
你必须写这个来使用DLL引用(这里是VB的代码)
Imports iTextSharp.text
Imports iTextSharp.text.pdf
Imports iTextSharp.text.html.simpleparser
Imports iTextSharp.text.html
然后传递您的流对象以生成PDF。
如果您收到错误:“对象引用集不是对象的实例”,即某处 在声明之后,将其设置为null(或者它将作为null传递)。 编写如下代码
Dim pDoc As New Document(pRec)
Dim pWriter As PdfWriter
Response.AddHeader("Content-Disposition", "attachment;filename=" & Title & " .pdf")
pWriter = PdfWriter.GetInstance(pDoc, Response.OutputStream)
pRec.Border = 1
pRec.BorderColor = BaseColor.MAGENTA
pDoc.Open()
'Add pdf Detail
pDoc.AddTitle("REPORTS")
pDoc.AddSubject(Title)
pDoc.AddAuthor("ADMIN")
pDoc.AddHeader("Company", "DK LTD")
pDoc.AddHeader("PageSize", DocSize)
在此处添加您的流编写器对象, 然后循环直到EOF 然后
pdoc.close()
我会尽力解释我所知道的最好的东西。