aklıma ne eserse…
ASP (Active Server Pages) programlama dilinde yüklenen ya da seçilmiş sabit bir resmin nasıl boyutlarının değiştirildiğini,resim üzerine yazı yazmayı,resmin üzerine resim bastırmayı (watermark) anlatacağım.Çoğu zaman sitemizde sayfamızın hızlı açılması için küçük resimler (thumbnail) kullanmak isteriz,fakat her resmin boyutunu küçültmek ve onu kullanmak oldukça zahmetli bir iştir.Bu işlemi sunucuda yaparak kullanıcıya sadece istediğimiz boyutta resmi gösterebiliriz.Örnek olarak Bursasporum.com adresindeki çalışmamı inceleyebilirsiniz.
Öncelikle şunu söylemeliyim ki malesef ASP ‘de bu tip işlemler için ücretsiz bir kütüphane bulunmuyor.Bu tip işlemleri yapabilmek için sunucuda Persist firmasının AspJpeg bileşeninin (component) bulunması gerekiyor.Bu bileşeni bu sayfadan indirip,kurarak 30 günlük ücretsiz olarak kullanma hakkına sahip oluyorsunuz.Bileşenin ücreti ise tek sunucu kullanımı için $195.00.Kişisel fikrim bu fiyatın oldukça yüksek olduğudur. (bkz : PHP’de ücretsiz GD kütüphanesi)
Eğer hosting sağlayıcısı siz değil iseniz sistem yöneticisinden bu bileşenin var olup olmadığı hakkında bilgi almanız gerekiyor.Şunu belirtmeliyimki eğer bu bileşen sunucunuzda bulunmuyor,aşağıda anlattıklarımdan sonuç almanız mümkün değildir.
AspJpeg bileşeninin kurulu olduğunu varsayarak bu bileşeni nasıl kullanacağımızı anlatmaya başlıyorum ;
Bir Asp sayfası oluşturun.Bu sayfaya resim.asp ismi verebilirsiniz.
<% Response.Expires = 0
Set Jpeg = Server.CreateObject(”Persits.Jpeg”) ‘Bu arada bileşini çağırıyoruz
Jpeg.Open( Server.MapPath(Request(”resim”)) ) ‘İşlem yapılacak resmin yolu
genislik = Request(”genislik”) ‘Örneğin : 100 yukseklik = Request(”yukseklik”) ‘Örneğin : 100
Jpeg.Width = genislik ‘İstenilen resmin genisliğini atadık Jpeg.Height = yukseklik ‘İstenilen resmin yüksekliğini atadık
Jpeg.SendBinary ‘Sunucuya gönderdik %>
Yukarıdaki kodları Asp sayfasına yapıştırın.Her satırın sağ tarafında yapılan işlemlerde ne olduğunu ne yaptığımızı yazdım.Bu kodlar için şunları söyleyebiliriz :
Eğer resmimizi orantılı bir şekilde küçültme işlemi yapmak istiyor isek kodları şu şekilde kullanırız.
Örneğin 600 px genişliğinden 400 px yüksekliğindeki fotoğrafımızı genişliği 100 px olacak şekilde orantılı olarak küçültmek istiyor isek yukarıdaki kodları kullanıp,bir kaç değişiklik ile halledebiliriz.
Bu işlemde yükseklik genişliğe bağlı olarak değişecektir.
Yukarıda
Jpeg.Height = yukseklik ‘İstenilen resmin yüksekliğini atadık
şeklindeki kısmı ;
Jpeg.Height = Jpeg.OriginalHeight * Jpeg.Width / Jpeg.OriginalWidth
kodu ile değiştiriyoruz.Kullanımı resim.asp?resim=ornek.jpg&genislik=100 şeklindedir.Bu sayede resmimiz orantılı olarak küçülüyor,bu işlemin tam tersini (yüksekliğe bağlı genişlik değişimi) de aynı şekilde yapabilirsiniz.
Resmi orantılı küçültüp,kırpma işlemi yaparak kare şeklinde resim elde etmek isteyenler buraya tıklayarak örnek betiği inceleyebilirler.
Oldukça faydalı örnek sayfayada buradan ulaşabilirsiniz.
Bir sonraki yazımda resim üzerine yazı yazma ve resim bindirme (watermark) işlemini anlatacağım.Umarım sizlere faydalı olmuşumdur.
Not: AspJpeg bileşeni ile sadece jpeg formatındaki resimler ile değil jpeg,gif,bmp,tiff ve png formatındaki resimler ile de işlem yapabiliriz,fakat hepsinin kullanım şekilleri farklılıklar gösterir,yukarıda jpeg formatındaki resimler için anlatım mevcuttur.Diğer formatların kullanımları için bu sayfayı ziyaret edebilirsiniz.
Kişisel Bilgiler
Eğitim Bilgileri
Murat Tekin
December 22nd, 2007 at 5:13 pm
Çok güzel bir anlatım olmuş,yazı serisinin devamını bekliyoruz.
Teşekkürler…
Engin
December 25th, 2007 at 1:53 pm
Yıllardır yaptığım ASP sayfalarda ASPJpeg kullanırım. Dediğin gibi PHP’de aynı işi gören eklentinin ücretsiz olması ASP’nin tercih edilirliğini azaltıyor. Kısa ve öz anlatım için tebrikler.
Sadık CAM
December 26th, 2007 at 12:28 pm
iyi be n’olsun !
tuncay vardar
January 2nd, 2008 at 12:08 am
tolga ellerine sağlık güzel bir konuya değinmişsin, birde server’a yüklenen resme, gif resmi basmayıda anlatsan çok makbul geçer
Tolga Gezginis
January 2nd, 2008 at 4:31 pm
Tuncay o konuyuda uzun uzun anlatıcam fakat buaralar final dönemi yaklaştığından pek vakit ayıramıyorum.
hımm
April 9th, 2008 at 6:47 pm
peki resim.asp?resim=ornek.jpg&genislik=100&yukseklik=80 kodunu nereye yazıcaz?
Tolga Gezginis
April 11th, 2008 at 3:33 am
Sayfanızda kullanmak istediğiniz yere yazacaksınız.(HMTL kodlarıyla)
img src=”resim.asp?resim=ornek.jpg&genislik=100&yukseklik=80″ şeklinde
sRKn
May 13th, 2008 at 4:20 pm
teşekkürler hocam…
filiz
July 3rd, 2008 at 3:02 pm
merhabalar ben jpeg de bir fotoğrafımı resim kırpma ile küçülttüm. sadece kendi görüntümü aldım. ve arkadaşıma bu resmi göndermek istedim. göndermek istediğim resimde sadece kendi resmim olsun istiyordum. resmin diğer kısımlarının görünmesini istemiyordum. ama kırpılmış resme özgüne geri dönden resmin bütünü geliyormuş. bu durumu engellemek yani sadece resimde görülmesini istediğim kısmı görüntülemek için ne yapmalıyım? yardımcı olursanız sevinirim.
Tolga Gezginis
July 3rd, 2008 at 3:10 pm
Sevgili Filiz bahsetmiş olduğun olay cropping yani kesme olayıdır.AspJpeg de cropping olayını incelemek için verdiğim linki inceleyin.Takıldığınız bir yer olursa yardımcı olurum.Kolay gelsin.
http://www.aspjpeg.com/manual_04.html#4_3