2009-06-18 118 views
2

我需要您的幫助將圖像添加到PDF。如何使用C#和iTextSharp在pdf中添加圖像?

我使用:

string imgPath2 = localPath + "\\TempChartImages\\" + LegendPath; 
img2.Save(imgPath2); 
ith.WriteImage(imgPath2, 80); 

但這個代碼給我的錯誤:

Use of unassigned local variable img2

我怎樣才能解決這個問題?

+0

我不確定你的代碼是幹什麼的(因爲它不是很清晰),但你是否想要添加圖片到PDF?如果是這樣,請使用iTextSharp。 – David 2009-06-18 13:54:21

+0

你能發佈定義img2的代碼嗎?您將需要一個庫來執行PDF中的插入操作,因爲在.NET框架中沒有任何操作PDF的操作。 – Kelsey 2009-06-18 22:49:13

回答

1

您需要一些第三方工具。

2

這是關於images的iTextSharp教程。如果沒有看到更多的代碼,就很難判斷你需要哪些代碼。

2

當你聲明一個變量,在你的情況下img2,沒有分配一個值,它指向什麼都沒有。確保你在使用它之前初始化img2。

我想你想你的img2.Save線改變什麼:

Image img2 = Image.FromFile(yourInitialImageHere); // You could be reading from memory as well. 
img2.Save(imgPath2); 

我可能是遙遠,彷彿你的代碼片斷是相當模糊的。

2

這是一種預感,但是如果您在Try-Catch塊內分配img2的值,您可能會遇到妨礙分配發生的異常。例如:

var img2; 
try 
{ 
    var x = 5/0; // Generate a DivideByZero exception 
    img2 = GetImage(); // <-- the above exception will prevent this code from executing 
} 
catch 
{ 
} 
img2.Save(imgPath2); <-- img2 wasn't assigned, so another exception will occur 
1

我相信你必須首先實例化圖像。

Image img2 = new Image(); 

它解決了我的問題。希望它能解決你的問題。

1

你必須創建一個圖像的getinstance。

iTextSharp.text.Image img = iTextSharp.text.Image.GetInstance("path of the image"); 
相關問題