pillinetwork hesabınızla giriş yapın.

asp.net Neodynamic ImageDraw ile resim boyutlandırma

bu yazıda size asp.net'teki fileUpload bileşeni ile resim upload ederken Neodynamic ImageDraw ile resmi istediğimiz ordan küçültüp server kısmına kaydetmeyi anlatıcam...

öncelikle Neodynamic ImageDraw bileşenini bilgisayarına indirin ve projenize referans olarak ekleyin...

sonra projemize bir adet fileUpload bileşeni, bir adet button , bilgi amacıyla bir label ve yüklediğimiz resmi göstermesi için bir image ekliyoruz.
sonra buttonun kod kısmı ise şöyle olacak :

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
protected void fileUpload_Click(object sender, EventArgs e)
{
if ( fileUpload.HasFile)
{
string dosyaIsmi = karakterIslem(fileUpload.FileName).ToLower();
fileUpload.SaveAs(Server.MapPath("<strong>resmin kaydedeileceği yol</strong>") + dosyaIsmi);
image1.ImageUrl = "../resimler/magaza/" + dosyaIsmi;
label1.Text = dosyaIsmi;
Neodynamic.SDK.ImageElement yuklenenResim;
yüklenenResim = Neodynamic.SDK.ImageElement.FromBinary(fileUpload.FileBytes);
Neodynamic.SDK.Resize actResize = new Neodynamic.SDK.Resize();
actResize.Width = 100;
actResize.LockAspectRatio = Neodynamic.SDK.LockAspectRatio.WidthBased;
yüklenenResim.Actions.Add(actResize);
Neodynamic.SDK.ImageDraw imgDraw = new Neodynamic.SDK.ImageDraw();
imgDraw.Elements.Add(yuklenenResim);
imgDraw.ImageFormat = Neodynamic.SDK.ImageDrawFormat.Jpeg;
imgDraw.JpegCompressionLevel = 90;
string dosyaAdi = Server.MapPath("<strong>resmin kaydedeileceği yol</strong>") + dosyaIsmi;
imgDraw.Save(dosyaAdi);
}
else
{
label1.Text = "Lütfen Resim Seçiniz";
}
}

ve karakterIslem diye bir fonksiyon oluşturuyoruz... bu fonksiyon yüklediğmiz dosyanın ismini ileride problem çıkartmayacak şekilde değiştiriyor

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public string karakterIslem(string dosyaAdi)
{
dosyaAdi = dosyaAdi.Replace("ğ", "g");
dosyaAdi = dosyaAdi.Replace("ş", "s");
dosyaAdi = dosyaAdi.Replace("ö", "o");
dosyaAdi = dosyaAdi.Replace("ı", "i");
dosyaAdi = dosyaAdi.Replace("ç", "c");
dosyaAdi = dosyaAdi.Replace(" ", "_");
dosyaAdi = dosyaAdi.Replace("Ğ", "g");
dosyaAdi = dosyaAdi.Replace("Ş", "s");
dosyaAdi = dosyaAdi.Replace("Ö", "o");
dosyaAdi = dosyaAdi.Replace("İ", "i");
dosyaAdi = dosyaAdi.Replace("Ç", "c");
dosyaAdi = dosyaAdi.Replace("Ü", "u");
dosyaAdi = dosyaAdi.Replace("ü", "u");
return dosyaAdi;
}

işte bu kadar basit... afiyet olsun

/* Etiketler: , , , */
/* mmacit yazdı. 30 Haziran 2009 15:51. 8 yorum var */

Yorumlar

güzel paylasım tesekkurler

/* www.renkkat.blogspot.com www.dekorasyonel.blogspot.com Bloglarımızı beğendiyseniz takibe alırsanız seviniriz :) */

rica ederim

Merhabalar,

Öncelikle bu güzel paylaşım ve anlatım için teşekkü ederim. Çok ihtiyacım vardı böyle birşeye. Elinize sağlık.
Neodynamic ImageDraw dosyası sanırım ücretli bir dosya yada siz linkini vermeyi unutmuş olabilir misiniz?

Teşekkürler.

ücretli olduğu için tam sürümünü burda yayınlamamın sorun teşkil edebileceğini düşündüm ve bunun için linki yayınlamadım...

ücretsiz halini code project de bulabilirsiniz.
iki fonksiyon zaten

ya kaç saatir uğraşıyorum adam akıllı crop image kodu bulamadım klasik resmi basan thumbnail istemiyorum. en sonunda bişeyler çıkarttım ama zor oldu. derme çatma da olsa uzun resmleri ortalayıp thumbnaili öyle yapıyor? acaba bu nasıl crop özelliği var mı?

@vectro evet bileşenin crop özelliği var ama çevresinden kırpmak için belli değerler vermen gerekeceğinden her resim için pek sağlıklı olmayabilir... bunun için jquery ile yazılmış birçok çalışma internette mevcut... hatta bende bir ara böyle birşey kullanmıştım.

üye olunpillinetwork sitelerine yorum ekleyebilmek ve daha fazlası için, üye olun ya da giriş yapın.

Bu Yazıyı Tutanlar

Bu yazıyı rapor et. Kural dışı içeriğe rastladığınızda editörlerimize rapor ederek müdahale edilmesini sağlayabilirsiniz. (Hangi durumlarda rapor edebilirim?)

Bu site

Nokta ve pilli ortak yapımı olan kodaman.org hep birlikte içerik üretip gelirini yazarları ile paylaştığımız kolektif bir kod yazarları blogudur. Siz de katılabilirsiniz.

pilliilan

son yorumlar

arama

pillinetwork