PHP İle Resim Üzerine Yazı Yazma Scripti
Yazar: Caner | 29 Mart 2009 Pazar 10:51 “Su üzerine yazı yazılmaz…” fekat PHP sağolsun pek bi hamarat pek bi işlevsel olduğundan bize en azından resim üzerine yazı yazma imkanı sağlıyor. Bu özellik nerelerde kullanılır, ne işe yarar derseniz en çok oyun oynamak ardından istatistik raporlarını bastırmak veya değişken reklam görselleri hazırlamak için kullanılıyor. Bir çoğunuzun yabancı sitelerde rastladığına eminim, altında “Hi! I’m from ISTANBUL…” yazan ve arkadaş aradığını söyleyen güzel hanım avatarlarına. Bizler pek tabi bu tip yanıltıcı kullanımları tasvip etmiyoruz (da kimin umrunda herkesin gözünü para hırsı bürümüş, eskiden istemsiz açılan popuplar baş belasıyken şimdi paso kullanıcıyı yanıltmaya yönelik yöntemler var, kapatma tuşuna bastığınızda sizi reklamveren siteye yönlendiren öğeler gibi).
Sözü fazla uzatmadan gelelim scriptimize. Ben bu olayı pek bi seviyorum, sizlerinde işini göreceğini umuyorum.
Scripti son derece basit ve anlaşılır tuttum, daha önce denediniz veya indirdiniz mi bilmiyorum fakat bu işi nedense hep en zor yoldan halletmeye çalışıyorlar, oysa olay sanıldığından basit.
Kodlarımız aşağıdaki gibi:
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 34 | <?php // PHP Resim Üzerine Yazı Yazma // Herhangi bir resim üzerine yazı yazabilirsiniz. // Caner ÖNCEL - http://www.egonomik.com // Kullanım: // Yazılmak istenen metni $_GET ile çağırıyoruz // Örnek: resimyaz.php?text=Merhaba Dünya $resim = "bg_resim.png"; // Üzerine yazılacak resmi seçiyoruz $font = "fonts/segoepr.ttf"; // Font dosyası ve yolunu tanımlıyoruz $golge = "true"; // Resme gölge eklemek istiyosanız "true" istemiyorsanız boş $text = $_GET['text']; if(empty($text)) { $metin = "Metin yazin!"; } else { $metin = "$text"; } header('Content-type: image/png'); $resim_yaz = imagecreatefrompng("$resim"); // Yazı ve gölgenin renk hex kodlarını belirliyoruz $gri = imagecolorallocate($resim_yaz, 170, 170, 170); $siyah = imagecolorallocate($resim_yaz, 0, 0, 0); if ($golge == "true") { imagettftext($resim_yaz, 16, 15, 59, 222, $gri, $font, $metin); } imagettftext($resim_yaz, 16, 15, 58, 221, $siyah, $font, $metin); imagepng($resim_yaz); imagedestroy($resim_yaz); ?> |
Dilerseniz scripte bir form ekleyerek yazrıdma işlemi gerçekleştirebilirsiniz
1 2 3 4 | <form action="resimyaz.php" enctype="application/x-www-form-urlencoded" method="get"> <input name="text" size="15" type="text" style="border: 1px solid #666666" onclick="this.value=''"/> <input type="submit" value="Resim yaz" /> </form> |
Scripti çalıştırmak için yazdırmak istediğimiz metni “resimyaz.php?text=Yazi” şeklinde bir çağırma komutu gönderiyoruz. Ben burda Seogeo Print fontunu kullandım, siz isterseniz Türkçe karakterleri adam gibi gösteren farklı bir font kullanabilirsiniz.
Scriptin çalışan demosu:
İçerisinde hanım kızımızın resminin de bulunduğu script bileşenlerini buradan indirebilirsiniz
Benzer Yazılar
-
PHP – Resim üzerine yazılan yazıyı ortalama
Daha önce şu yazımda ImageCreate fonksiyonu ile bir resmin üzerine basitçe nasıl yazı yazılabileceğini anlatmıştım. Geçenlerde ise bir online sayacı devamı»
-
PHP – Resim üzerine yazı yazma (Watermark) fonksiyonu
Egonomik müdavimlerinden gevv için yaklaşık 3 gün önce halledeceğime söz verdiğim fakat kodların sunucuda kalması ve internetimin 2 gündür kesik devamı»
-
PHP – Rastgele yazı, resim, reklam görüntülemek
Php ile rastgele (random) içerik görüntülemek benim çok sık ihtiyaç duyduğum ve kullandığım bir özellik. Bu özelliği daha çok sayfada rastgele devamı»
-
PHP ile Güvenlik Kodu (Captcha) Scripti
Form girdilerini işleme gönderirken kullandığımız güvenlik kodu (capthca) unsuru, gerçek kişileri bot dediğimiz ve çoğunlukla iyi niyetli olmayan örümceklerden ayırmak için kullanılan etkili devamı»
-
Einstein’a yazı yazdırın
Web tabanlı dinamik resim oluşturma bilhassa resim üzerine yazı yazma modası son hız devam ediyor (bkz. şekil 1a) bu güzide devamı»





























Evren Bayraktar | EvrenWeb.NET | Evren'ce
15 Mayıs 2009 [03:00]
PHP İle Resim Üzerine Yazı Yazma Scripti…
Sahile, köprüye istediğimiz yazıyı yazdırdığımız birçok site mevcuttu bunları hepimiz biliyoruzdur. Fakat bunu nasıl yapıyorlar merak edenlerimiz varsa Caner arkadaşım blog unda çok güzel anlatmış.
Aslına bakarsanız çok basit, bi…
Egonomik » PHP – Resim üzerine yazılan yazıyı ortalama
19 Temmuz 2009 [20:07]
[...] önce şu yazımda ImageCreate fonksiyonu ile bir resmin üzerine basitçe nasıl yazı yazılabileceğini [...]
AHMET
28 Ağustos 2009 [17:50]
Merhaba eline koluna sağlık ben bu kodu aldım farklı jpg ve font kullandım ama bir türlü yapamadım.
lafı uzatmayacağım siz acaba *** sitesi tarzında bir scipriti bana yazarmısınız, fiyatı ne olur? Teşekkürler.
hakan
7 Ekim 2009 [04:22]
Selam bu çalışmayı çok beğendim elinize sağlık.
Bu çalışmayı gif animasyonu olan bir resime yazdırabilirmiyiz 2 frameli mesela.
http://img198.imageshack.us/img198/1829/testfy.gif buradaki resim gibi yapabilirmiyiz ?
Caner
7 Ekim 2009 [21:30]
Pek emin değilim ama bu işi bazı classlar yardımıyla yapabilirsiniz gibi, burdaki gibi kodlarla olacak iş değil ama
Selim Emre
4 Kasım 2009 [19:11]
Caner’cim sana bir soru
Sitedeki resimlerin üzerine otomatik bir yazı eklenmesini istiyorum varmı bildigin boyle bir script…?
Caner
4 Kasım 2009 [22:14]
Selim’cim o tür bir sistem olup olmadığını bilemiyorum açıkcası araştırmak lazım, eve döndüğüm zaman bir bakayım
Selim Emre
4 Kasım 2009 [22:17]
Sagol ya gerek yok buldum ama şimdi bütün sitenin düzenini bozamam zaten table’yle çalışıyor ie’de farklı mozilla’da farklı opera’yı hiç sorma
Egonomik » Einstein’a yazı yazdırın
15 Kasım 2009 [05:26]
[...] dinamik resim oluşturma bilhassa resim üzerine yazı yazma modası son hız devam ediyor (bkz. şekil 1a) bu güzide Einstein uygulamasını da aynı furya çerçevesinde takdim etmekten onur duyuyorum. [...]
gevv
20 Aralık 2009 [14:50]
Teşekkürler ufak bir sorum var
Yazı yazdırmayı bir upload scriptine entegre edebilirmiyiz ? yani resimlere yazı yazarak yükleme yapılabilirmi
resim gönderimi için kullanacağım script: http://shorttext.com/cl5i4kxex
Caner
20 Aralık 2009 [17:19]
@gevv Tabiki yapılabilir ve hatta bunu geçen seferki detaylı bilgilendirmen hatrına senin için yapacam, ama önce taşınmamız gereken bir server var biraz müsade istiyorum
gevv
20 Aralık 2009 [17:30]
Kolay gelsin
teşekkürler
gevv
21 Aralık 2009 [23:46]
Caner hocam bir gelişme varmı
ben bittim yerli yabancı bir sürü site gezdim %89 alıntı kaldık ortada
Caner
22 Aralık 2009 [15:05]
@gevv scripte baktım biraz mıncıklama fırsatı buldum
http://www.cesurbolge.com/test/phUploader.php
Bugün bir fırsatını bulup hallederiz
gevv
23 Aralık 2009 [00:31]
Teşekkürler caner bende biraz ilerleme kaydettim
ama sorunsuz olurmu olmaz tabi 


ilk olarak yüklenen resime yazı yazılmıyor bir serim daha yüklenirse diğer resime yazı yazılıyor yani iki yükle 1 yazılsın
ikinci sorun sadece jpg resimlere yazı yazılıyor
diğerleri ise yazıyı sağ alt köşeye almak ve yazının arka planını transparan yapmak şuan yazı siyah bant üzerinde resime ekleniyor
yazı yazdırmak için kodları phupload.php dosyasına ekledim
kodlar: http://shorttext.com/b0p5lgdlx8
Caner
23 Aralık 2009 [00:45]
@gevv ama şimdi olmadı ki e hani sen o diğer scriptle tümleşik istiyordun? Bu kodlar nere o diğer verdiklerin nere
Diğerinde çoklu dosya yükleniyor (zip, png vs.) bu kodlar ise sadece resim için, sen söylesene “bana sadece resim yükleyen ve o esnada üzerine watermark ekleyen script lazım” diye ben de kasıyorum kodları ayıklayacam şöyle yapacam böyle yapacam diye
Şimdi ben sana bu işi gören bir script hazırlayayım ve hatta siteye de ekleyeyim madem
gevv
23 Aralık 2009 [01:31]
phuploads.php son hali
http://shorttext.com/0cmj8hyyhn
Caner
23 Aralık 2009 [01:36]
Hehe ellerine sağlık
Dur ben şimdi sana franteştayn bir script hazırlıyorum kendim de kullanacam
gevv
23 Aralık 2009 [19:14]
Teşekkürler hocam merakla bekliyorum frantestaynupload.php
orhan
27 Aralık 2009 [22:16]
Arkadaşlar bunun türkçe sorununu nasıl çözdünüz. Her yolu denedim nerdeyse ama yinde de Türkçe bazı karakterlerde sorun çıkarıyor
Caner
27 Aralık 2009 [22:19]
@orhan Türkçe karakterleri destekleyen bir font dosyası kullanırsan sorunun çözülür sanırım.
orhan
27 Aralık 2009 [22:28]
türkçe fontlarda da ” ı , ş , ğ ” harflerinde sorun yaşadım. Destekleyen bildiğiniz bir font varmı … tşk.
Caner
27 Aralık 2009 [22:33]
Corbelz fontunu kullanabilirsin, son dönem watermark scriptlerinde bunu kullanıyorum ve Türkçe karakterleri destekliyor.
http://www.egonomik.com/fonts/corbelz.ttf
informatique
30 Ocak 2010 [20:48]
merhaba acaba bunu nasıl çoklayabilirim birden fazla yazı girmek istiyorum resime ama beceremedim..
Caner
30 Ocak 2010 [21:20]
Önce kaç tane yazı girmek istiyorsanız formda o sayıda text inputu oluşturun, isimleri text2, text3 olsun diyelim, ardından scriptin içinden değişkenleri tanımlayın:
$metin2 = $_GET['text2'];
$metin3 = $_GET['text3'];
gibi, daha sonra imagettftext($resim_yaz, 16, 15, 58, 221, $siyah, $font, $metin); satırını girmek istediğiniz metin sayısı kadar kopyalayıp çoğaltın ve $metin yazan yerlere yeni tanımladığınız $metin2, $metin3 değişkenlerini girin. 58, 221 gibi rakamları değiştirerekte metnin resim üzerindeki koordinatlarını ayarlayın.
informatique
30 Ocak 2010 [21:48]
olmadı sanırım..
adres barda nasıl gözükmesi gerekiyor?
resimyaz.php?text=yazı?text1=yazı 1
gibi mi?
informatique
30 Ocak 2010 [22:13]
oldu çok saolun
Caner
30 Ocak 2010 [22:23]
Aslında sizin için detaylı bir cevap hazırlamıştım ama sitede oluşan teknik bir hata yüzünden gümbürtüye gitti, neyse sonuç olarak çalıştıysa ne sorun yok
Osman
19 Mart 2010 [01:25]
Türkçe karakter desteği olan bir font kullanıyorum. Fakat yine de Türkçe sorununu çözebilmiş değilim. Yardımcı olabilirseniz sevinirim.
Ayrıca böyle güzel bir şeyi bizle paylaştığınız ve açıkladığınız için kendi adıma teşekkür ederim.
kaan
1 Mayıs 2010 [09:43]
güzel ama olmuyor
Gokhan
23 Haziran 2010 [14:59]
Merhaba
Bu scriptteki arkaplan resminin yerine başka bir resim koyduğumda hata veriyor.
Yardımcı olabilir misiniz ?
Birde o resimdeki metnin bulunacağı konumu nasıl belirleyebilriz ?
kamaleddin
18 Mayıs 2011 [18:05]
fontu yazdırma formundan seçmek mümkün olabilirmi?
Caner
18 Mayıs 2011 [20:10]
Tabiki olabilir. $font değişkenini $font = $_GET['font']; şeklinde tanımladıktan sonra url’yi ?text=yazi&font=fonts/herhangifont.ttf şeklinde çağırarak bu istediğini yapabilirsin.
kamaleddin
19 Mayıs 2011 [01:36]
Teşekkür ederim
Galiba doğru anlatamadım benim istediyim siteye siren üyelerin bunu yapa bilmesiyi.
kral
18 Kasım 2011 [01:08]
Caner Hocam harika açıklamalar olmuş. Diğer arkadaşlarada katılımlarından dolayı teşekkürler. Php adına harika çalışma olmuş..
Hasan
18 Şubat 2012 [13:31]
S.a hocam ben bunu yaptım ama yeni resim nasıl eklerim yardımcı olurmusun by_antocio@hotmail.com
furkan
2 Mart 2012 [14:34]
merhaba hocam ben bunu hallettim tamam ama kendi istediğim yazıyı nasıl yazdırabilirim ve birden çok resim nasıl ekleyebilirim bknz : http://www.erenfazlioglu.com/signyap/ burdaki sing yapma scriptide bu kodu kullanmış ama bunda istediğimiz yazıyı yazdırabiliyoruz birde nasıl yazıyı istediğimiz yere yazdıracağız ?