0 امتیاز

من میخوام یه عکس که توی دیتابیس دارم رو بفرستم به استیمول ...

اون بصورت بایت ذخیره شده و من اینکار رو میکنم .

اشکال از کجاست ؟

                byte[] Array = (byte[])(dt.Rows[0]["PicNameOf1"]);
                byte[] Array1 = (byte[])(dt.Rows[0]["PicNameOf2"]);
                byte[] Array2 = (byte[])(dt.Rows[0]["PicNameOf3"]);
                byte[] Array3 = (byte[])(dt.Rows[0]["PicNameOf4"]);

                MemoryStream MS = new MemoryStream(Array);
                MemoryStream MS1 = new MemoryStream(Array1);
                MemoryStream MS2 = new MemoryStream(Array2);
                MemoryStream MS3 = new MemoryStream(Array3);
                System.Drawing.Image image = System.Drawing.Image.FromStream(MS);
                System.Drawing.Image image1 = System.Drawing.Image.FromStream(MS1);
                System.Drawing.Image image2 = System.Drawing.Image.FromStream(MS2);
                System.Drawing.Image image3 = System.Drawing.Image.FromStream(MS3);

                Report["image1"] = image;
                Report["image2"] = image1;
                Report["image3"] = image2;
                Report["image4"] = image3;

بسته شده

1 پاسخ

0 امتیاز
 
بهترین پاسخ

سلام

از این روشها استفاده کنید

StiReport report = new StiReport();
report.Load("D:\\myimage.mrt");
StiImage im = new StiImage();
im.Image = Image.FromFile("d:\\SomeImage.jpg");
report.Compile();
report["MyImage"] = im.Image;
report.Show();

 

 

 

public byte[] imageToByteArray(System.Drawing.Image imageIn)
{
    MemoryStream ms =n ew MemoryStream();
    imageIn.Save(ms, imageIn.RawFormat);
    return ms.ToArray();
}





اینو تو باتن چاپ بزارید
var img = new System.Drawing.Bitmap(@"C:\\Users\\Ali\\Desktop\\multipage_tif_example.tif");
byte[] array1 = imageToByteArray(img);

MemoryStream ms = new MemoryStream(array1);
System.Drawing.Image image = System.Drawing.Image.FromStream(ms);

StiReport rpt = new StiReport();
rpt.Load(Application.StartupPath + "\\Report(image).mrt");
rpt.Dictionary.Variables.Add("Image1", image);
rpt.Compile();
rpt.Show();

 

 

روش سوم


byte[] ImageByteArray = ReadLogoFromSqlDataBase();
MemoryStream ms = new MemoryStream(ImageByteArray);
System.Drawing.Image image = System.Drawing.Image.FromStream(ms);

StiReport rpt = new StiReport();
rpt.ReportFile = "rpt1.mrt";
rpt.Dictionary.Variables.Add("Logo", image);
rpt.Design(); or rpt.Print();

 

روش سوم رو میخواستم

لایک داری
توسط (197 امتیاز) 6 20
سوال جدید

2,337 سوال

2,871 پاسخ

3,725 دیدگاه

3,919 کاربر

دسته بندی ها

...