PDA

View Full Version : تغییر سایز زمان اپلود



bbc_sh
سه شنبه 12 شهریور 1387, 18:09 عصر
سلام دوستان
من میخوام یه عکس اپلود کنم.زمانی که اپلود رو میزنم میخوام سایز عکس و فرمتش رو تشخیص بده واگر از سایز دلخاه من بزرگتر بود اون رو کوچک کنه.برای تغییر سایز اول باید اپلود کنیم توی به فولدر و بعد سایزش رو عوض کنیم یا همون زمان اپلود هم میشه؟

SAMARE
پنج شنبه 02 مهر 1388, 12:42 عصر
کسی نیست جواب این دوستمون رو بده تا مشکل منم حل بشه؟؟؟؟

A.S.Roma
جمعه 03 مهر 1388, 00:32 صبح
با سلام

در حین آپلود باید از طریق جاوا اسکریپت انجام بشه ( البته اگه بشه ! )
اما بعد از آپلود ( برای تایید ):

string uploadDirectory="";
System.Drawing.Image OrigImg = default(System.Drawing.Image);
string fullPath = "";
if (cmd == "content")
{
uploadDirectory = Path.Combine(Request.PhysicalApplicationPath, "Images");
string serverFileName = Path.GetFileName(myFile.PostedFile.FileName);
fullPath = Path.Combine(uploadDirectory, serverFileName);
myFile.PostedFile.SaveAs(fullPath);

OrigImg = System.Drawing.Image.FromFile(Server.MapPath("~/Images/" + serverFileName));
}
if (OrigImg.Width > 500 || OrigImg.Height > 600)
{
Response.Write("<script language='javascript'>alert('ابعاد عکس بزرگتر از حد معمول است')</script>");

OrigImg.Dispose();
FileInfo delFile = new FileInfo(fullPath);
if (delFile.Exists)
{
delFile.Delete();
}

اینم یک Sample که عکس را به سایز 50*50 تبدیل می کند :

private bool ThumbnailCallback()
{
return false;
}

protected System.Drawing.Image CreateThumbNail(System.Drawing.Image img)
{
System.Drawing.Image.GetThumbnailImageAbort dummyCallBack = default(System.Drawing.Image.GetThumbnailImageAbor t);
dummyCallBack = new System.Drawing.Image.GetThumbnailImageAbort(Thumbn ailCallback);
System.Drawing.Image imgResult = img.GetThumbnailImage(50, 50, dummyCallBack, IntPtr.Zero);
return imgResult;

}