複数のフレームを持つ単一のtiffファイルを印刷しようとしています。ただし、javascript(window.print())を使用すると、tiff画像だけでなくWebページ全体が印刷されます。
そこで、StackOverflowを見回して、サンプルコードを見つけました。私はそれを実装しようとしましたが、問題はコードが絶対画像URLに対して機能することです:-「C:\img.jpeg」など
imgFax.ImageUrlを実際の画像名に変換する方法を誰かに教えてもらえませんか?(そうでない場合、エラーが発生します:-"パスに不正な文字があります" <--- System.Drawing.Image img = System.Drawing.Image.FromFile(imgFax.ImageUrl); code)
誰かが私に素晴らしいサンプルコードを見せてくれるなら!ありがとう。
protected void PrintAll_Click(object sender, EventArgs e)
{
// number of frames
int number = _FaxPages.Count;
// for loop to iterate through each frame
for (int i = 0; i < number; i++)
{
// fax ID
string _FaxId = Page.Request["FaxId"];
//string _Frame = Page.Request["Frame"];
// current frame
_PageIndex = i;
// IMG URL
imgFax.ImageUrl = "ShowFax.ashx?n=" + _FaxId + "&f=" + _PageIndex + "&mw=750";
PrintDocument pd = new PrintDocument();
pd.PrintPage += PrintPage;
pd.Print();
}
}
private void PrintPage(object o, PrintPageEventArgs e)
{
System.Drawing.Image img = System.Drawing.Image.FromFile(imgFax.ImageUrl);
Point loc = new Point(100, 100);
e.Graphics.DrawImage(img, loc);
}