PDA

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



majnun
سه شنبه 18 آبان 1389, 00:23 صبح
سلام دوستان

یه برنامه از برنامه نویس گرفته بودم برای تغییر سایز دیدم کلی کد نوشته خودمم نفهمیدم چی میگه ولی خب کار میکرد کامل

یکم سرچ کردم این چند خط را دیدم گفتم شاید بدرد شما هم بخوره


System.Drawing.Image img = System.Drawing.Image.FromFile(FileUpload1.PostedFi le.FileName);
System.Drawing.Bitmap bmp=new System.Drawing.Bitmap(img,200,300);
bmp.Save(@"C:/picture.jpg");
img.Dispose();

maxpayn2
سه شنبه 18 آبان 1389, 09:27 صبح
با تشکر از جناب majnun منم یه کلاس گیر آوردم که از این آدرس (http://www.barnamenevis.org/forum/attachment.php?attachmentid=53850&d=1281353613) میتونید دانلود کنید ، خیلی کامله

اینم یه httphandler که اگه به فایلی با پسوند thumb بر بخوره اون رو با استفاده از کلاس بالا به اندازه تعیین شده تغییر سایز میده :




using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.IO;
using System.Drawing;

namespace MyIIS7_Demos
{
public class ThumbHandler : IHttpHandler
{
#region IHttpHandler Members

public bool IsReusable
{
get { return true; }
}

public void ProcessRequest(HttpContext context)
{
string full_filename = Path.GetFileName(context.Request.Path);
string filename_without_ext = Path.GetFileNameWithoutExtension(context.Request.P ath);

DirectoryInfo di = new DirectoryInfo(context.Server.MapPath("~/Images"));
FileInfo[] fi = di.GetFiles(filename_without_ext + ".*");
if(fi.Length > 0)
{
string physical_filename = fi[0].FullName;
if(File.Exists(physical_filename + ".thumb"))
{
Image img = Bitmap.FromFile(physical_filename + ".thumb");
Bitmap bmp = new Bitmap(img);
bmp.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
}
else
{
Image img = Bitmap.FromFile(physical_filename);
Bitmap bmp = new Bitmap(img);
bmp = BitmapManipulator.ThumbnailBitmap(bmp, 100, 100);
bmp.Save(physical_filename + ".thumb", System.Drawing.Imaging.ImageFormat.Jpeg);
bmp.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
}
}
}

#endregion
}
}

reza4359
یک شنبه 27 آذر 1390, 00:49 صبح
سلام دوستان

یه برنامه از برنامه نویس گرفته بودم برای تغییر سایز دیدم کلی کد نوشته خودمم نفهمیدم چی میگه ولی خب کار میکرد کامل

یکم سرچ کردم این چند خط را دیدم گفتم شاید بدرد شما هم بخوره


System.Drawing.Image img = System.Drawing.Image.FromFile(FileUpload1.PostedFi le.FileName);
System.Drawing.Bitmap bmp=new System.Drawing.Bitmap(img,200,300);
bmp.Save(@"C:/picture.jpg");
img.Dispose();


سلام دوست عزیز من از این کد استفاده میکنم
string img;
img = AppDomain.CurrentDomain.BaseDirectory.ToString() + "/img/" + TextBox2.Text + ".jpg";
FileUpload1.PostedFile.SaveAs(img);
TextBox1.Text = TextBox2.Text + ".jpg";
System.Drawing.Image img1 = System.Drawing.Image.FromFile(img);
System.Drawing.Bitmap bmp=new System.Drawing.Bitmap(img1,550,220);
bmp.Save(@"C:/picture.jpg");
img1.Dispose();
حالا میخوام به جای آدرس درایو c آدرس پوشه img رو داخل پروژه بدم که عکس با تغییر اندازه اونجا ذخیره بشه باید چکار کنم؟
ممنون

reza4359
یک شنبه 27 آذر 1390, 13:45 عصر
دوستان لطفا کمک کنید من میخوام وقتی عکس تغییر سایز پیداکرد به جای آدرس درایو c بره داخل پوشه img در مسیر پروژه بایدچه کار کنم؟

Saman Hashemi
یک شنبه 27 آذر 1390, 14:17 عصر
server.mappath("~/img")

reza4359
یک شنبه 27 آذر 1390, 14:32 عصر
server.mappath("~/img")
ممنون ولی ارور میده فکر کنم باید اسم فایل رو هم بدیم
error
{"A generic error occurred in GDI+."}
bmp.Save(Server.MapPath("~/img"));

adineh67
دوشنبه 28 آذر 1390, 15:52 عصر
System.Drawing.Image img = System.Drawing.Image.FromFile(FileUpload1.PostedFi le.FileName);
System.Drawing.Bitmap bmp=new System.Drawing.Bitmap(img,200,300);
bmp.Save(@"C:/picture.jpg");
img.Dispose();


سلام دوستان خسته نباشین
من از کد بالا در برنامم استفاده کردم موقع اجرا و با کلیک روی دکمه آپلود روی این خط کد پیغام زیر رو میده علت چیه؟

System.Drawing.Image img = System.Drawing.Image.FromFile(FileUpload1.PostedFi le.FileName);

پیغام:FileNotFoundException: Desert.jpg

fakhravari
دوشنبه 28 آذر 1390, 18:18 عصر
با سلام
این یه سمپل برای دوستان گل:بوس:
http://mohamad-hoosein.persiangig.com/asp/Upload-Image-Resize.rar