|
|
|
Export Image to Excel โดยกำหนดขนาดของภาพ ผมจะ export image to excel ครับ โดยต้องการ กำหนด ขนาดของภาพ |
|
|
|
|
|
|
|
ผมจะ export image to excel ครับ โดยต้องการ กำหนด ขนาดของภาพ
ไม่รู้ว่าใช้คำสั่งอะไร (c#) ใน vb มีตัวอย่างครับแต่ผมแกะมาเป็น c# ไม่ได้
รบกวนพี่ๆช่วยทีครับ Code (C#)
datatable dtImageStyle = new datatable();
sb.Remove(0, sb.Length);
sb.Append("select productid,productpicture from product ");
sb.Append(" where productid = '" + dtImage.Rows[i]["productid"] + "'");
sb.Append(" and productpicture <>''");
sb.Append(" group by productid,productpicture ");
sql = sb.ToString();
dtImageStyle = showdata.showquerydatasql(sql, "dt_ImageStyle");
if (dtImageStyle.Rows.Count != 0)
{
ExcelSheets.Cells[x + 11, P] = dtImageStyle.Rows[0]["styleno"].ToString();
ExcelSheets.get_Range(ExcelSheets.Cells[x + 11, P], ExcelSheets.Cells[x + 11, P]).Font.Bold = true;
ExcelApp.Application.ScreenUpdating = true;
try
{
oImageItem = Image.FromFile (dtImageStyle .Rows [0]["productpicture"].ToString ());
Clipboard .SetDataObject (oImageItem ,true);
ExcelSheets.Paste(ExcelSheets.Cells[x + 13, P],dtImageStyle.Rows[0]["productpicture"].ToString());
//ExcelApp.Selection.ShapeRange.Height = 50; // ตรงนี้เป็นโค้ด vb อยากแปลงเป็น c#
//ExcelApp.Selection.ShapeRange.Width = 50;
}
catch (Exception)
{
ExcelSheets.Cells[x + 11, P] = "";
}
P = P + 2;
}
ขอบคุณครับ
Tag : - - - -
|
|
|
|
|
|
Date :
2010-06-11 16:01:48 |
By :
tee |
View :
2373 |
Reply :
6 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (C#)
// เจ้านี่น่าจะเป็น object Image
oImageItem = Image.FromFile(dtImageStyle .Rows[0]["productpicture"].ToString());
การ resize ต้องเปลี่ยน image เป็น bitmap ก่อนแล้วค่อยเอา bitmap ไปใช้
Code (C#)
Size imageSize = new Size(int width, int height); // กำหนดเองนะ
// แปลงเป็น bitmap โดยกำหนดขนาดให้ใหม่
Bitmap imgOutput = new Bitmap(oImageItem, imageSize.Width, imageSize.Height);
|
|
|
|
|
Date :
2010-06-11 16:16:13 |
By :
tungman |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ขอบคุณหลายๆๆ .. ครับ พี่ tangman
|
|
|
|
|
Date :
2010-06-11 18:24:02 |
By :
tee |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
รบกวนอีกครั้งครับ พี่ๆทุกท่าน
กรณีที่ pro_style.rows[0]["productpicture"] มีค่า คือไม่เท่ากับค่าว่าง
ซึ่งผมเก็บเป็นชื่อ path ไว้ใน DB ตัวอย่างเช่น d:\picturestyle\style001\pic.jpg
ถ้ามีการลบโฟล์เดอร์ style001 ทิ้ง แต่ pro_style.rows[0]["productpicture"] ยังมีค่าอยู่
ตอน export excel ตรง xSheete.Paste(...); จะไม่สามารถว่างภาพได้ แล้ว excel error โปรแกรมก็ไม่ทำงานต่อ
ผมอยากเช็คว่า ถ้าวางภาพไม่ได้ ก็ให้เป็น ว่างๆ ไปครับ
กรณีนี้จะแก้ไขยังไงครับ รบกวนด้วยนะครับ
Code (C#)
Image xImageItem;
xImageItem = Image.FromFile(Pro_PicStyle.Rows[0]["ProductPicture"].ToString()); //ไฟล์ภาพ
Bitmap _Image = new Bitmap(xImageItem, 246, 158);// กำหนดขนาด
Clipboard.SetDataObject(_Image, true);
xSheets.Paste(xSheets.Cells[1, 1], Pro_PicStyle.Rows[0]["ProductPicture"].ToString()); // วางภาพลง
|
|
|
|
|
Date :
2010-08-10 09:14:05 |
By :
tee |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (C#)
//ตรวจสอบไฟล์มามีหรือไม่
if (File.Exists(@"d:\picturestyle\style001\pic.jpg"))
{
//do something
}
else
{
//do something
}
|
|
|
|
|
Date :
2010-08-10 09:19:58 |
By :
tungman |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
พี tungman ครับ รอบแรกวางได้ครับ แต่รอบสอง error ครับ
แก้ไขยังไงครับ ขอบคุณครับ
Code (C#)
string _pathImage = Pro_PicStyle.Rows[rowImage]["ProductPicture"].ToString();
if (_pathImage != string.Empty)
{
if (File.Exists(@""+_pathImage))
{
xImageItem = Image.FromFile(Pro_PicStyle.Rows[rowImage]["ProductPicture"].ToString());
Bitmap ImageSBN = new Bitmap(xImageItem, 266, 190);
Clipboard.SetDataObject(ImageSBN, true);
xSheets.Paste(xSheets.Cells[_cellstyle + 1, _colImage], Pro_PicStyle.Rows[rowImage]["ProductPicture"].ToString());
_colImage = _colImage + 2;
}
}
|
ประวัติการแก้ไข 2010-08-10 10:19:08
|
|
|
|
Date :
2010-08-10 10:16:52 |
By :
tee |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
runtime error ต้อง debug แระว่า path อันไหนทำให้ error
ลองให้มันโชว์ path ที่ error ก่อนนะ
Code (C#)
string _pathImage = Pro_PicStyle.Rows[rowImage]["ProductPicture"].ToString();
if (_pathImage != string.Empty)
{
if (File.Exists(_pathImage))
{
try
{
xImageItem = Image.FromFile(_pathImage);
Bitmap ImageSBN = new Bitmap(xImageItem, 266, 190);
Clipboard.SetDataObject(ImageSBN, true);
xSheets.Paste(xSheets.Cells[_cellstyle + 1, _colImage], _pathImage);
_colImage = _colImage + 2;
}
catch (Exception ex)
{
MessageBox.Show(string.Format("error [{0}]: {1}", ex.Message, _pathImage));
}
}
}
|
ประวัติการแก้ไข 2010-08-10 10:44:37
|
|
|
|
Date :
2010-08-10 10:37:53 |
By :
tungman |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 00
|