2013-04-03 71 views
3

環境

C#2008 Express Edition,Windows Forms,iTextSharp 5.4.0。iTextSharp無法在Winforms項目中運行

我把iTextSharp.dll在我的項目bin文件夾,我添加了一個參考它在我的項目,我有命名空間using iTextSharpiTextSharp.textiTextSharp.text.pdf,我已經試過下面的代碼片段,但沒有創建並沒有錯誤消息。

這是第一個塊:

Document doc1 = new Document(); 
string path = "C:/Temp/Testing"; 
PdfWriter.GetInstance(doc1, new FileStream(path + "first.pdf", FileMode.Create)); 
doc1.Open(); 
doc1.Add(new Paragraph("Test")); 
doc1.Close(); 

,這裏是第二塊:

FileStream fs = new FileStream("C:\\Temp\\Testing" + "Test.pdf", FileMode.Create); 
Document doc = new Document(); 
PdfWriter writer = PdfWriter.GetInstance(doc, fs); 
doc.Open(); 
doc.Add(new Paragraph("Hello")); 
doc.Close(); 
writer.Close(); 
fs.Close(); 
+0

在C以外的任何其他驅動器上嘗試您的代碼。 – Shaharyar

+2

您可能正在尋找文件c:\ Temp \ Testing \ Test.pdf。文件名似乎保存到C:\ Temp \ TestingTest.pdf「 – Crispy

+0

在C:\\ Temp \\結尾處添加\\測試完成了。 – KFP

回答

0

這個例子打開一個對話框,用戶可以保存文件。用代碼轉換器將VB代碼轉換爲C#。

Using ms As New System.IO.MemoryStream() 
Using doc As New iTextSharp.text.Document(iTextSharp.text.PageSize.A4) 
Using w As iTextSharp.text.pdf.PdfWriter = iTextSharp.text.pdf.PdfWriter.GetInstance(doc, ms) 

Dim FileName As String = "Name.pdf" 


Here create your document end close it 

Response.Clear() 
Response.ContentType = "application/octet-stream" 
Response.AddHeader("content-disposition", "attachment;filename= " & FileName) 
Response.Buffer = True 
Response.Clear() 
Dim bytes = ms.ToArray() 
Response.OutputStream.Write(bytes, 0, bytes.Length) 
Response.OutputStream.Flush() 


End Using 
End Using 
End Using 
+0

我已經轉換它並使用System.Web.UI添加,但是響應是無法識別的。這是針對Windows窗體而非網頁的。 – KFP