ASP: Resim Kare Boyutlandırıcı

<span style=”font-family:trebuchet ms;”>Bu script Persits.Jpeg bileşeni ile çalışmaktadır.

Mantık olarak; görüntünün eni boyundan uzunsa genişliğini yüksekliğine orantılayıp kısaltır, boyu eninden uzunsa yüksekliğini genişliğine orantılayıp kısaltır. Ortaya kare bir görüntü oluşturur. HTML uzantılı sayfalarda da kullanabilirsiniz.

Kullanımı çok basittir. Sayfanızda resim çağırmak istediğiniz yere resmin direkt URL’si yerine aşağıda belirtilen çağırma yöntemini yazmanız resmin boyutlandırılıp gösterilmesini sağlayacaktır. Resim galerileri, haber sayfaları yahut profil sayfaları gibi düzenlilik gerektiren yerlerde kullanımı idealdir. Bizzat şahsım kodlamıştır.

Kırmızı renkli yere (path) fotoğrafın bulunduğu klasörü ve resmin dosya adını yazmanız, “bx”‘in tanımında ise istediğiniz kenar uzunluğunu belirtmeniz yeterlidir.

Örn : <img src=”resim.asp?path=foto/05.jpg&bx=80 />


Test etmek için tıklayın


Resim.asp dosyasının kaynak kodları :

<%
© 2007 / Murat Tahtacı (The-Mg)
‘ASP.JPEG ile resim boyutlandırma ve crop ederek kareye dönüştürmek
‘Iyi günlerde kullanın…
‘Örneğin : ?path=resimler/snap.jpg&bx=100

Response.Expires = 0

If Not Request(“path”)=”" Then

Set Jpeg = Server.CreateObject(“Persits.Jpeg”) ‘Bileşen çağırılıyor

Jpeg.Open( Server.MapPath(Request(“path”)) ) ‘Sayfa adres yerinde resmin adresi

ebat = Request(“bx”)
‘Örn : 80

If ebat=”" Then
ebat = Jpeg.OriginalWidth
End if

If Jpeg.OriginalHeight > Jpeg.OriginalWidth Then ‘Eğer boyu eninden uzunsa

Jpeg.Width = ebat ‘Enini istediğimiz boyuta çekiyoruz
Jpeg.Height = Jpeg.OriginalHeight * Jpeg.Width / Jpeg.OriginalWidth ‘Yüksekliğini orantılı şekilde ayarlıyoruz
kenarpayi = Round(Int((Jpeg.Height-ebat)/2))
‘Üst ve alttan kesilecek kısmı ayarlıyoruz
Jpeg.Crop 0, kenarpayi, ebat, ebat+kenarpayi
‘Üstten kırparak ölçüyü ortalıyoruz

Else
‘ Boy-en eşit yahut en daha uzunsa…

Jpeg.height = ebat
Jpeg.width = Jpeg.OriginalWidth * Jpeg.Height / Jpeg.OriginalHeight
kenarpayi = Round(Int((Jpeg.Width-ebat)/2))
Jpeg.Crop kenarpayi, 0, ebat+kenarpayi, ebat

End if

Jpeg.SendBinary ‘ sunucuya gönder…

End if

%>

1 Comment

  1. pozitive
    Nis 16, 2009

    süpersin adamım….

Submit a Comment

Captcha Captcha Reload