Mevzubahis ben isem hemen her şey teferruâttır.
Bağlantılar
Dörtlük
Yıkılupdur bu cihan sanmaki bizde düzele
Devlet-i çerh-i denî verdi kamu müptezele
Şimdi ebvâb-ı saadetle gezen hep hezele
İşimiz kaldı hemân merhamet-i Lem Yezel'e.

Bu dörtlük, III. Selim öldürüldüğünde kaftanının cebinde bulunmuştur. Yazarı da III. Selim'in babası III. Mustafa'dır.

Printer - YazıcıBu site için çok gerekli değil ama uzun makaleler ihtiva eden bazı siteler var ki içeriğini yazdırmak işkenceye dönüşebiliyor. Kenarlardaki menüler, gereksiz renkler ve logolar gibi yazdırılmasını istemediğimiz şeylerden kurtulmak gerekiyor.

Direkt yazdır butonuna tıkladığımızda sitenin tüm görüntüsü yazdırılacağından, bu işe bir çözüm olarak Yazıcı Dostu Görünüm (Printer Friendly Version) adı altında çeşitli çözümler geliştirilmiş. Gerek web sitesi sahipleri, gerekse okuyucuları için.

Biraz bu çözümlerden bahsedelim.

Kendi web sitenizde Yazıcı Dostu Görünüm hizmeti verebilmenin en kolay ve bilgi gerektirmeyen yöntemi http://www.printfriendly.com/button adresi üzerinden elde edilebilecek olan kodu web sitenizde kullanmak. Biraz yavaş gibi geldi ama etkili bir yöntem.

Bu siteyi kullanabilmek için bir web sitenizin olmasına gerek yok. Yazdırmak istediğiniz web sitesinin adresini http://www.printfriendly.com adresindeki kutuya yazıp, Yazıcı Dostu Görünüm elde edebiliyorsunuz ya da tarayıcınıza bir bookmarklet ekleyerek kullanabiliyorsunuz. Kendi sitesi üzerinden Yazıcı Dostu Görünüm elde etmek Türkçe sitelerde karakter problemine neden olabiliyor. Ayrıca yazdırılacak alanı iyi analiz edemeyebiliyor. Bookmarklet ile kullanımda bu şekilde bir soruna rastlamadım. Oluşturulan görüntüde yazdırmak istemediğiniz yerleri de bir mouse darbesi ile silebiliyorsunuz. Bir başka güzel özelliği de sitenin pdf versiyonunu da elde edebiliyorsunuz.

Web sitenize Yazıcı Dostu Görünüm özelliği kazandırabilmenizin bir başka yolu da Css teknikleri kullanmak.

Ana mantık iki adet Css dosyası kullanmaktan geçiyor. Birincisi zaten kullanmakta olduğunuz style dosyanız. Diğeri de sadece print (çıktı) alınırken kullanılmak üzere yazılacak.

Basitce örneklendirirsek;

Printer Friendly - Yazıcı Dostu

Soldaki görüntüye sahip bir web sitesinden çıktı almak bir hayli mürekkep ziyanlığına sebep olacağı kadar karmaşık bir görüntüyü de beraberinde getirecektir.

Bu sitenin kodları aşağıda.

<html>
<head>
<title>Css ile Yazıcı Dostu Sayfa</title>
<link rel="stylesheet" type="text/css" href="web.css" media="screen">
<link rel="stylesheet" type="text/css" href="print.css" media="print">
</head>
<body>
<div class="ana">
<div class="ust">
<h2>Üst Menü</h2>
<h3>Resim, logo, slogan gibi yazıcıda çıkmasına ihtiyaç olmayan yerler.</h3>
</div>
<div style="clear:both;"></div>
<div class="sol">
<h2>Sol Menü</h2>
<h3>Site menüsü ya da linklerin bulunduğu bölüm. </h3>
</div>
<div class="orta">
<h2>İçerik</h2>
<h3>Yazdırılması gereken içeriğin bulunduğu bölüm.</h3>
<h1>BAŞLIK</h1>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam nibh ipsum, imperdiet sit amet eleifend id, ultrices ut lacus. Curabitur tellus nunc; elementum et adipiscing tempus, euismod ac dolor. Duis sodales diam ullamcorper orci egestas porta quis vitae ligula. Etiam elementum scelerisque varius. Sed laoreet elementum euismod. Maecenas eget lectus in est rutrum laoreet ut eget quam. Maecenas bibendum dolor in sapien auctor in lobortis est facilisis. Aenean quis risus nec dolor hendrerit bibendum. Etiam in lacus eu lorem imperdiet tincidunt eu quis arcu. Nulla facilisi. In neque diam, facilisis eget elementum at, molestie in nisi. Donec vitae libero tortor, vel sodales elit?
</div>
<div class="sag">
<h2>Sağ Menü</h2>
<h3>Hakkımda vs. gibi bilgilerin yer aldığı bölüm. </h3>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam nibh ipsum, imperdiet sit amet eleifend id, ultrices ut lacus. Curabitur tellus nunc; elementum et adipiscing tempus, euismod ac dolor. Duis sodales diam ullamcorper orci egestas porta quis vitae ligula. Etiam elementum scelerisque varius. Sed laoreet elementum euismod. Maecenas eget lectus in est rutrum laoreet ut eget quam. Maecenas bibendum dolor in sapien auctor in lobortis est facilisis. Aenean quis risus nec dolor hendrerit bibendum. Etiam in lacus eu lorem imperdiet tincidunt eu quis arcu.
</div>
<div style="clear:both;"></div>
<div class="alt">
<h2>Alt Menü</h2>
<h3>Kullanılan yazılımın versiyonu teması ve benzeri bilgilerin bulunduğu bölüm.</h3>
</div>
</div>
</body>
</html>

Görüldüğü gibi iki adet Css dosyası bu kodlara eklenmiştir. Bunlardan web.css bu renkli görüntüyü oluşturmamızı sağlayan Css dosyasıdır. Diğer dosyamız print.css ise print (çıktı) alırken kullanılacak olan Css dosyası.

Web.css dosyasının kodları aşağıda.

/* CSS Document */
body
{
background-color:#99CCFF;
}
.ana
{
margin:0 auto;
width:800px;
}
.ust
{
background-color:#99FF00;
width:800px;
height:100px;
float:left;
}
.sol
{
background-color:#FFCC00;
float:left;
width:200px;
height:600px;
}
.orta
{
background-color:#66CCFF;
width:400px;
height:600px;
float:left;
font-family:"Courier New", Courier, mono;
font-size:9px;
}
.sag
{
background-color:#66CCCC;
width:200px;
height:600px;
float:left;
}
.alt
{
background-color:#FF99CC;
width:800px;
height:100px;
float:left;
}
h1
{
color:#FF0000;
font-size:36px;
}

Burada da görüleceği üzere her yeri renklendirmişiz.

Bir de print.css dosyasının kodlarını inceleyelim.

/* CSS Document */
.ust
{
display:none;
}
.sol
{
display:none;
}
.sag
{
display:none;
}
.alt
{
display:none;
}
.orta
{
font-family:Arial, Helvetica, sans-serif;
font-size:11pt;
}
h1
{
color:#000000;
font-size:12pt;
}

Bu css dosyalarını sitemize

<link rel="stylesheet" type="text/css" href="web.css" media="screen">
<link rel="stylesheet" type="text/css" href="print.css" media="print">

kodları ile tanıtıyoruz. Bir başka yöntem de @import yöntemi.

<style type="text/css">
@import url("web.css") screen;
@import url("print.css") print;
</style>

@import yöntemi ile cssleri tanımladığım zaman Internet Explorer'da geçerli sonucu elde edemedim. Sürüm 8.0.6001. Birşeyi gözden kaçırmış olabilirim.

Print.css'e dikkat edilirse, oldukça basitleştirilmiş. Normalde sitede izlenebilen üst, sol, sağ ve alt menüler

.ust
{
display:none;
}

mantığı ile kaldırılmış. Küçük punto ile yazılmış olan orta kısım düzenlenmiş ve h1 tagi de siyah renge çevrilip daha küçük bir karakterle yazılmış.

Bu uygulamayı yaptıktan sonra tarayıcınızın Yazdırma Önizleme ya da Baskı Önizleme'sine tıklarsanız sadece istediğiniz bölümün istediğiniz gibi gözüktüğünü görebilirsiniz.

Son olarak bir javascript uygulaması ile ziyaretçinin Yazdırma Önizleme ya da Baskı Önizleme'ye basmadan site üzerinden nasıl bir çıktı alacağını görmesini sağlıyoruz.

Kodumuz aşağıda. <head></head> tagleri arasına koyabiliriz. Ya da genel bir javascript dosyanız varsa içine entegre edebilirsiniz.

<script language="javascript">
function Clickheretoprint()
{
var disp_setting="toolbar=no,location=no,directories=no,menubar=yes,"; //* Tarayıcımızın açacağı pencerenin özellikleri bu satırda belirleniyor.
disp_setting+="scrollbars=yes,width=650, height=600, left=100, top=25"; //* Pencerenin eni, boyu, soldan uzaklığı vb. değerler burada.
var content_vlue = document.getElementById("orta").innerHTML; //* getElementById("orta") Buradaki orta tanımlamasını aklımızda tutalım.
var docprint=window.open("","",disp_setting); //* Pencere açılıyor.
docprint.document.open();
docprint.document.write('<html><head><title>aQuaRiST.Gen.Tr</title>') //* Title'yi kendi sitenize uyarlayın.
docprint.document.write('<link rel="stylesheet" type="text/css" href="print.css">'); //* Daha önce oluşturduğumuz print.css dosyasını bu pencereye de tanıtıyoruz.
docprint.document.write('</head><body onLoad="self.print()"><div class="orta">'); //* Pencere açıldığında otomatik olarak Yazdır diyalog kutusu açılıyor. Ayrıca print.css de tanımladığımız orta classını burada da tanımlıyoruz.
docprint.document.write(content_vlue); //* Aklımızda tutalım dediğim orta tanımlamasının aldığı değeri pencereye yazdırıyoruz.
docprint.document.write('</div></body></html>'); // Taglerimizi kapatalım.
docprint.document.close(); // Kapanış.
docprint.focus();
}
</script>

Yukarıdaki kodda aklımızda tutalım şeklinde belirttiğim "orta" tanımlamasını yazdırılmasını istediğimiz <div> lere id olarak tanımlıyoruz.

Örneğimizi hatırlarsanız sadece

<div class="orta"></div>

tagleri arasındakileri yazdırmak istiyorduk. O zaman bu kodu

<div class="orta" id="orta">

olarak düzenlememiz gerekiyor.

Print (çıktı) linkini istediğimiz bir yere aşağıdaki kod yardımı ile yerleştiriyoruz. 

<a href="javascript:Clickheretoprint()">Yazıcı Dostu Görünüm</a>

Printer Friendly - Yazıcı DostuSon halimiz yandaki şekilde oluyor.

Bütün bunların çalışır haldeki örneğine http://blog.aquarist.gen.tr/ornek/printerfriendly/ adresinden ulaşabilirsiniz.

Ayrıca bu sitede de bu yönteme benzer bir yöntemle Yazıcı Dostu Görünüm - Printer Friendly Version elde ediliyor. Aşağıda linkini görebilirsiniz.

Daha başka Yazıcı Dostu Görünüm elde etme yolları da var mutlaka. Php ile ve Asp ile olanlarını gördüm araştırırken. Tabii olarak Php ya da Asp destekli hostlarda çalışabilirler. Bu örnek ise bütün hostlarda çalışıyor.


Favorilere Ekle. Delicious'a Ekle. Digg This. Facebook'ta Paylas. Google Favorilere Ekle Reddit Yahoo Favorilere Ekle Stumble It. Nedir?

Yazan: Tolga
Kategoriler: Web
Yorum Eklenmemiş...

Yorum Yaz

Adınız: *
E-Mail Adresiniz: *
Web Sitesi:
Yorum: *
Güvenlik Kodu: *
 
Arama
  Ara
Etiket Bulutu
Blogsa Asp.NET C# Blog Franz Kafka Değişim Dönüşüm Kitap Adam Fawer Olasılıksız Sosyal İmleme Social Bookmarking RSS Besleme Feed Alternatif Feeder Yazar Roman Saatleri Ayarlama Enstitüsü Ahmet Hamdi Tanpınar Şair Şiir Stephenie Meyer Göçebe Alacakaranlık Toprak Yeşerince Knut Hamsun Nobel Edebiyat Ödülü Ridley Pearson Beşikteki Flüt Stephen King Isaac Asimov Gül ve Haç Kardeşliği Aytunç Altındal Avrupa Birliği Takibat Arşiv Beyaz Diş Jack London Ay Vadisi Parıltı Yayıncılık Kitapyurdu Muazzez İlmiye Çığ Cahit Külebi Cengiz Aytmatov Muhtar Şahanov Kuz Başındaki Avcının Çığlığı Yüzyılların Kavşağında Sırdaşlık Kur`an, İncil ve Tevrat`ın Sumer`deki Kökeni Google Michael Jackson Facebook Mynet Yahoo Youtube Web Sitesi Web 2.0 Lev Nikolayeviç Tolstoy Savaş ve Barış John Steinbeck Gazap Üzümleri The Grapes of Wrath Tema Orange Grey Ernest Hemingway Yüzüklerin Efendisi J. R. R. Tolkien John Ronald Reuel Tolkien Ömer Seyfettin Bütün Hikâyeleri Doğan Kardeş Ansiklopedisi Sabah Akşam Üç Harf Yayınları Seyhan Müzik Musa da Böyle Buyurdu Sedat Memili Israel Potter Herman Melville Aforizmalar Mavi Oktav Defterleri Ayla Dikmen Anlamazdın Fikret Şeneş Issız Adam Çağan Irmak Leo Dan Kırmızı Başlıklı Kız Kırmızı Takkeli Kız Grimm Kardeşler Grimm Masalları Masal Varlık Yayınları Horozlu Saat Tavuklu Saat Serkisof Sri Lanka Limon Ağacı Sandy Tolan Bir Arap, Bir Yahudi ve Ortadoğu´nun Kalbi Elif Şafak Social Sharing Sosyal Paylaşım Tevrat Terörizm Pan Behçet Necatigil Victoria Rosa Printer Friendly Yazıcı Dostu Web Javascript Css Beyaz Balina Moby Dick Katip Bartleby Jorge Luis Borges Babil Kitaplığı Seyhan Kitap Wikipedia Biseksüel Bisexual writers Louis Aragon Hans Christian Andersen Simone de Beauvoir André Gide D.H. Lawrence Marquis de Sade Oscar Wilde Virginia Woolf Pastoral Senfoni Dar Kapı Billy Budd Jules Verne 80 Günde Devriâlem Kaptan Grant`ın Çocukları Robensonlar Mektebi Denizler Altında 20.000 Fersah Ölmeden Önce Okumanız Gereken 1001 Kitap Aşk Dire Straits Mark Knopfler Tunnel of Love İlkel Efsaneler Adli Moran Unikornis Gulyabani Tupilek Serber Feniks Zümrüdüanka Simurg Saba Melikesi Belkıs Lilith Makeda Sweet Garden Kumral Ada Mavi Tuna Buket Uzuner Mabel Williams Dorothea Lange Bir Numaralı Evde Olanlar Rubyx Emeraldx Arkadaş Mihail Panait Istrati Yaşar Nabi Nayır Sünger Avcısı Neoneon Pelit Palamut Meşe Tanen Ağaç Dünya Nimeti Star Masumiyet Müzesi Korkma Ben Varım Rüzgâr Enerjisi Fotoğraf Photobucket Flickr Imageshack Deviantart Hakkı Devrim Halid Ziya Uşaklıgil Aşk-ı Memnu Hüseyin Rahmi Gürpınar Gönül Bir Yeldeğirmenidir Hurma Trabzon Hurması Osuruk Hurması Hamyenen Diospyros kaki Diospyros lotus Phoenix dactylifera Abanoz Diospyros ebenum Şubat Miladi Takvim Gregoryen Takvimi Jülyen Takvimi Güneş Takvimi Ay Takvimi Mehmet Akif Ersoy Hasbihâl Safahat Aksiyon 100 Türk Edebiyatçısı 100 Temel Eser MEB Eflatun Cem Güney Nasreddin Hoca Mona Lisa La Joconde Leonardo da Vinci Anthony Hopkins Elephant Man Fil Adam David Lynch Joseph Carey Merrick Anne Rice Pandora Vampirle Görüşme Garum Barnabas İncili Hürriyet Sfumato Kılıçlar Adası Wayne Thomas Batson William Wallace Cesur Yürek Braveheart
Blogsa 1.0 RC Fix
Free Open Source Blog Project
Tema Orange Grey D.Ok Tolga K.