2009-06-18 21 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

+0

img2を定義するコードを投稿できますか? PDFを挿入するにはライブラリが必要です.PDFを操作するための.NETフレームワークには何もバックアップされていないためです。 – Kelsey

答えて

1

これにはサードパーティのツールが必要です。

+0

はい私はitextSharpを使用しました.... – Penguen

+0

あなたの質問を編集してその情報を含める価値があります - おそらく質問ヘッダーにも。 – Jeffrey

2

imagesのiTextSharpチュートリアルです。より多くのコードを見ることなく、これから必要となるコードを判断するのは難しいです。

2

変数を宣言すると、値を代入せずにimg2のケースimg2で絶対に何も指していません。 img2を使用する前に、img2を何かに初期化してください。コードのスニペットはかなりあいまいです

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

私は道オフ可能性があるかのように:

は、私はあなたのimg2.Saveラインに変更したいものを考えます。

2

これはうんざりですが、img2の値をTry-Catchブロック内に割り当てると、割り当てが行われないような例外が発生する可能性があります。例:

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"); 
関連する問題