PDA

View Full Version : سوال: مشخص کردن سایز و اندازه تصاویر در زمان آپلود



scorpion_sincity
سه شنبه 11 خرداد 1389, 10:32 صبح
با سلام
با استفاده از ابزار fileupload فایل رو انتخاب می کنیم، حالا می خواهم اندازه و سایز تصویر را مشخص کنم

ممنون

ali_zzr
سه شنبه 11 خرداد 1389, 11:01 صبح
سایزش رو نمیدونم ولی برای حجمش : فایل آپلود خصوصیت filesize داره که اگر از مقداری که میخوای بیشتر باشه میتونی ذخیره اش نکنی و به کاربر پیغام بدی

Vahid_moghaddam
سه شنبه 11 خرداد 1389, 11:46 صبح
برای حجم فایل:

int size = fu.PostedFile.ContentLength;
int max=500*1024;
if (size <= max)
{
}


برای اندازه عکس:

System.Drawing.Image objImage = System.Drawing.Image.FromStream(fu.PostedFile.Inpu tStream);
if ((objImage.Width<=YourWidth) && (objImage.Height<=YourHeight))
{
}

maxpayn2
سه شنبه 11 خرداد 1389, 11:54 صبح
جستجو ، جستجو ، جستجو

http://barnamenevis.org/forum/showthread.php?t=222661

Mostafa_Dindar
سه شنبه 11 خرداد 1389, 12:23 عصر
روشهايي كه دوستان ارائه دادند تنها كاربر را محدود ميكند كه چه عكسهايي و با چه سايزهايي ميتونند ارسال كنند . ولي روش بهتر اين است كه كاربر هر عكسي و با هر سايزي كه خواست وارد كنه و سيستم شما اون رو به اندازه دلخواه تبديل كنه . چون اين احتمال هست كه كاربر سيستم توانايي اين رو نداشته باشه كه عكس رو به اندازه دلخواه شما در بياره ، همچنين امكان استفاده از نرم افزار هاي ويرايش عكس رو نداشته باشه .

پس براي اينكار از متد GetThumbnailImage بر روي شيي Image استفاده كنيد و عكس ديگري از عكس ورودي با سايز دلخواهتون ايجاد كنيد ( ضمن اينكه حجم فايل رو هم كاهش ميديد )

سربلند باشيد

maxpayn2
سه شنبه 11 خرداد 1389, 12:44 عصر
با جناب Lastphoenix (http://barnamenevis.org/forum/member.php?u=122118) موافقم

z_bluestar
سه شنبه 11 خرداد 1389, 12:52 عصر
میشه در مورد دو تا پارامتر آخر این متد یه توضیحی بدید ؟؟

منظورم این 2 هست

System.Drawing.Image.GetThumbnailImageAbort CallBack
Intptr CallBackData

sahele_sheni
سه شنبه 11 خرداد 1389, 12:52 عصر
سلام دوست عزیز .
من با این روش فایل رو روی هاست آپ میکنم . بعد تغییر اندازه میدم و ازش 2 نسخه کپی میکنم . بعد فایل اصلی رو حذف میکنم .


Dim imagefilename As String
imagefilename = fileupload1.PostedFile.FileName()
imagefilename = System.IO.Path.GetFileName(imagefilename)
Dim filepath As String = Server.MapPath("../pic") + "\" + imagefilename
fileupload1.PostedFile.SaveAs(filepath)

Dim TNImage As System.Drawing.Image
TNImage = Drawing.Image.FromFile(Server.MapPath("../pic") + "\" + imagefilename)
'Dim TNImgAbort As System.Drawing.Image.GetThumbnailImageAbort

Dim objimage As New Bitmap(TNImage, 160, 190)
Dim imageformat = TNImage.RawFormat
objimage.Save(Server.MapPath("../pic") + "\sm_" + imagefilename, imageformat)

Dim objimage1 As New Bitmap(TNImage, 400, 400)
imageformat = TNImage.RawFormat
objimage1.Save(Server.MapPath("../pic") + "\big_" + imagefilename, imageformat)

TNImage.Dispose()
TNImage = Nothing
objimage.Dispose()
objimage1.Dispose()
objimage = Nothing
objimage1 = Nothing
System.IO.File.Delete(Server.MapPath("../pic") + "\" + imagefilename)


موفق باشید

scorpion_sincity
سه شنبه 11 خرداد 1389, 13:23 عصر
برای اندازه عکس:

System.Drawing.Image objImage = System.Drawing.Image.FromStream(fu.PostedFile.Inpu tStream);
if ((objImage.Width<=YourWidth) && (objImage.Height<=YourHeight))
{
}
[/QUOTE]

با سلام و تشکر
می و وی بی دارم می نویسم
و این کد البت با تغییرات هم کار نکرد
میشه یک راهنمایی بفرمایید؟

ممنون

Vahid_moghaddam
چهارشنبه 12 خرداد 1389, 00:08 صبح
کار نکرد یعنی چی؟ اگه پیغام خطا می ده، پیغام خطا رو بذارید.

scorpion_sincity
چهارشنبه 12 خرداد 1389, 20:55 عصر
بی زحمت همین کد را برای vb بزارید
یعنی asp تحت vb

ممنون

صفر کیلومتر 1389
سه شنبه 20 مهر 1389, 11:11 صبح
میشه یه دوستی در مورد تغییر سایز تصویر در هنگام اپلود توضیح بیشتری بده ، یا اگر نمونه کدی هست معرفی کنه ؟
واقعا ممنون می شم اگر کمک کنید

unishomal
چهارشنبه 21 مهر 1389, 14:13 عصر
میشه یه دوستی در مورد تغییر سایز تصویر در هنگام اپلود توضیح بیشتری بده ، یا اگر نمونه کدی هست معرفی کنه ؟
واقعا ممنون می شم اگر کمک کنید

آدرس عکسو بده + طول و عرض دلخواه =>آدرس عکس با سایزه جدیدو واسه ذخیره تو بانک بگیر،حله؟





public string thumbnailsImageSave(string ImageSavePath,int width,int height)
{
string Filename = System.IO.Path.GetFileName(ImageSavePath);
int endpath = ImageSavePath.LastIndexOf("\\") + 1;
string pathnewimg = ImageSavePath.Substring(0, endpath) + "thumb" + Filename;
System.IO.Stream fs = new System.IO.FileStream(ImageSavePath, System.IO.FileMode.Open, System.IO.FileAccess.Read);

System.Drawing.Image im = System.Drawing.Image.FromStream(fs);

System.Drawing.Bitmap tmpnail = new System.Drawing.Bitmap(im, width, height);
tmpnail.Save(pathnewimg, im.RawFormat);
im.Dispose();
fs.Close();
fs.Dispose();
tmpnail.Dispose();
return pathnewimg;
}

ramin149
چهارشنبه 21 مهر 1389, 14:21 عصر
http://www.barnamenevis.org/forum/sh...d.php?t=250456 (http://www.barnamenevis.org/forum/showthread.php?t=250456)