Doğrudan JavaScript ile Yazıcıya Yazdır

Çeşitli Javascript forumlarında çokça ortaya çıkan bir sorgu, sayfayı görüntülemeden önce doğrudan yazıcıya nasıl gönderileceğini sorar. Yazdır iletişim kutusu.

Bunu size söylemekten ziyade yapılamaz belki de böyle bir seçeneğin neden mümkün olmadığının açıklaması daha faydalı olabilir.

Birisi, baskı düğmesi tarayıcılarında veya Javascript'te window.print () yöntemi çalışır, işletim sistemine ve bilgisayarda hangi yazıcıların yüklü olduğuna bağlıdır.

Çoğu kişi bilgisayarlarında Windows çalıştırdığından, önce yazdırma kurulumunun bu işletim sisteminde nasıl çalıştığını açıklayalım. * Nix ve Mac işletim sistemleri ayrıntılarda biraz farklılık gösterir, ancak genel olarak benzer şekilde ayarlanır.

Yazdırma İletişim Kutusu

Windows'ta yazdırma iletişim kutusunun iki bölümü vardır. Bunlardan ilki Windows API'sının (Uygulama Programlama Arayüzü) bir parçasıdır. API, çeşitli DLL dosyalarında (Dinamik Bağlantı Kütüphanesi) Windows'un parçası olan dosyalar işletim sistemi. Herhangi bir Windows programı, Yazdırma İletişim Kutusu'nu görüntüleme gibi ortak işlevleri gerçekleştirmek için API'yı arayabilir (ve etmelidir); tüm programlarda aynı şekilde çalışın ve farklı yerlerde yazdırma seçeneğinin DOS programında yaptığı gibi farklı seçeneklere sahip değil günler. Yazdırma İletişim Kutusu API'sı ayrıca tüm programların aynı yazıcı sürücüsü grubuna erişmesine izin veren ortak bir arabirim sağlar kullanmak isteyen her bir program için yazıcıları için sürücü yazılımı oluşturmak zorunda olan yazıcı üreticilerinin o.

instagram viewer

Yazıcı sürücüleri, yazdırma iletişim kutusunun diğer yarısıdır. Farklı yazıcıların sayfanın nasıl yazdırıldığını kontrol etmek için kullandıklarını anladıkları birkaç farklı dil vardır (ör. PCL5 ve Postscript). Yazıcı sürücüsü, Yazdırma API'sına standart dahili yazdırma biçiminin nasıl çevrileceği konusunda talimat verir işletim sisteminin, belirli yazıcının özel biçimlendirme dilini anlaması anlar. Ayrıca, Yazdır iletişim kutusunun görüntülediği seçenekleri, belirli bir yazıcı tarafından sunulan seçenekleri yansıtacak şekilde ayarlar.

Yazıcının Çalıştırılması

Tek bir bilgisayarda yüklü yazıcı olmayabilir, bir yerel yazıcı olabilir, ağ üzerinden birden fazla yazıcıya erişim, PDF veya önceden biçimlendirilmiş baskıya yazdırmak için bile ayarlanabilir dosya. Birden fazla "yazıcı" tanımlandığında, bunlardan biri varsayılan yazıcı olarak adlandırılır; bu, ilk görüntülendiğinde yazdırma iletişim kutusunda ayrıntılarını görüntüleyen yazıcıdır.

İşletim sistemi varsayılan yazıcıyı izler ve bu yazıcıyı bilgisayardaki çeşitli programlara tanıtır. Bu, programların yazdırma API'sına, önce yazdırma iletişim kutusunu görüntülemeden doğrudan varsayılan yazıcıya yazdırmasını bildiren fazladan bir parametre geçirmesini sağlar. Birçok program iki farklı yazdırma seçeneğine sahiptir - yazdırma iletişim kutusunu görüntüleyen bir menü girişi ve doğrudan varsayılan yazıcıya gönderen bir araç çubuğu hızlı yazdırma düğmesi.

İnternette ziyaretçilerinizin yazdıracağı bir web sayfanız olduğunda, hangi yazıcı (lar) hakkında bilgi sahibi değilsiniz. Dünyadaki çoğu yazıcı A4 kağıda yazdırılmak üzere yapılandırılmıştır, ancak yazıcının bu varsayılan ayara ayarlandığını garanti edemezsiniz. Bir Kuzey Amerika ülkesi, A4'ten daha kısa ve daha geniş standart olmayan bir kağıt boyutu kullanır. Çoğu yazıcı dikey modda (daha dar yönün genişlik olduğu ancak bazıları daha uzun boyutun genişlik olduğu manzaraya göre) yazdırmak üzere ayarlanmıştır. Tabii ki, her yazıcının üst, alt ve yanlarında farklı varsayılan kenar boşlukları vardır. sayfanın sahibi girmeden ve yazıcıyı istedikleri şekilde almak için tüm ayarları değiştirmeden önce istemek.

Tüm bu faktörler göz önüne alındığında, varsayılan yapılandırmasına sahip varsayılan yazıcının web sitenizi yazdırıp yazdırmayacağını söyleyemezsiniz. A3'te ihmal edilebilir kenar boşluklarına veya büyük kenar boşluklarına sahip A5'e (sayfanın ortasında posta pulu büyüklüğünde bir alandan biraz daha fazla boşluk bırakarak) sayfa). Muhtemelen çoğu sayfada yaklaşık 16cm x 25cm (artı veya eksi% 80) bir baskı alanına sahip olacağını varsayabilirsiniz.

Baskı İhtiyaçları

Yazıcılar potansiyel ziyaretçileriniz arasında çok fazla değişiklik gösterdiğinden (birisi lazer yazıcılardan, mürekkep püskürtmeli yazıcılardan, renkli veya siyah beyazdan bahsetti mi? yalnızca fotoğraf kalitesi, taslak modu ve çok daha fazlası) sayfanızı makul bir şekilde yazdırmak için ne yapmaları gerektiğini söyleyemezsiniz. biçim. belki de ayrı bir yazıcı veya aynı yazıcı için özel bir web sayfası için tamamen farklı ayarlar sağlayan ikinci bir sürücü var.

Daha sonra, ne yazdırmak istedikleri konusu geliyor. Tüm sayfayı istiyorlar mı yoksa sayfanın yalnızca yazdırmak istedikleri bir bölümünü mi seçtiler? Siteniz çerçeveler kullanıyorsa, tüm çerçeveleri sayfada göründüğü gibi yazdırmak istiyorlar mı, her çerçeveyi ayrı ayrı mı yazdırmak istiyorlar, yoksa sadece belirli bir çerçeveyi mi yazdırmak istiyorlar?

Tüm bu soruları cevaplama ihtiyacı, yazdırma iletişim kutusunun baskıya çarpmadan önce ayarların doğru olduğundan emin olabilmeleri için bir şey yazdırmak istersiniz buton. Tarayıcıların çoğu, izin vermek için tarayıcı araç çubuklarından birine "hızlı yazdırma" düğmesi ekleme olanağı sağlar yazdırılacak öğeye ilişkin varsayılan tarayıcı ayarları kullanılarak varsayılan yazıcıya yazdırılacak sayfa ve Nasıl.

JavaScript

Tarayıcılar bu çok sayıda tarayıcı ve yazıcı ayarını Javascript için kullanılabilir hale getirmez. Javascript öncelikle akımı değiştirmekle ilgilidir internet sayfası ve böylece web tarayıcıları tarayıcının kendisi hakkında minimum bilgi sağlar ve kullanılabilir işletim sistemi hakkında hiçbir bilgi yanında JavaScript çünkü Javascript'in Javascript'in yapmak istediği şeyleri gerçekleştirmek için bunları bilmesine gerek yoktur.

Temel güvenlik, Javascript gibi bir şeyin işletim sistemi hakkında bilgi sahibi olması gerekmediğini ve web sayfasını manipüle etmek için tarayıcı yapılandırması bilgi. Javascript, yazıcı ayarlarını uygun değerlere değiştirebilmeli Javascript'in amacı bu olmadığından geçerli sayfayı yazdırmak - baskının işi budur iletişim. Bu nedenle tarayıcılar Javascript'e yalnızca Javascript'in bilmesi gereken şeyleri, örneğin ekranın boyutu, tarayıcı penceresinde kullanılabilir alan sayfayı ve Javascript'in sayfanın nasıl düzenlendiğini öğrenmesine yardımcı olan benzer şeyleri görüntülemek için. Geçerli web sayfası Javascript'in tek endişesidir.

İntranetler

İntranetler elbette tamamen farklı bir konudur. Bir intranet sayesinde, herkesin sayfaya erişim belirli bir tarayıcı kullanıyor (genellikle Internet Explorer'ın son sürümü) ve belirli bir ekran çözünürlüğüne ve belirli yazıcılara erişimi var. Bu, bir intranette doğrudan yazıcıya yazdırabilmenin mantıklı olduğu anlamına gelir web sayfasını yazan kişi hangi yazıcı olacağını bildiği için yazdırma iletişim kutusunu görüntüleme üzerine basılmıştır.

Javascript (JScript olarak adlandırılır) için Internet Explorer yerine kullanılan, Javascript'in kendisi tarafından kullanılan tarayıcı ve işletim sistemi hakkında biraz daha fazla bilgiye sahiptir. Ağdaki intraneti çalıştıran tek tek bilgisayarlar JScript'e izin verecek şekilde yapılandırılmış olabilir window.print () Yazdır iletişim kutusunu görüntülemeden doğrudan yazıcıya yazma komutunu verin. Bu yapılandırmanın her istemci bilgisayarda ayrı ayrı ayarlanması gerekir ve Javascript'teki bir makalenin kapsamı dışındadır.

İnternetteki web sayfalarına gelince, Javascript komutu doğrudan varsayılan yazıcıya göndermek için. Ziyaretçileriniz bunu yapmak istiyorsa, tarayıcı araç çubuklarında kendi "hızlı yazdırma" düğmelerini ayarlamaları gerekecektir.