Php-yazıcı-delphi???
Php-yazıcı-delphi???
Nereye yazacağımı biraz şaşırdım aslında..
Sorunu yaşayan bir arkadaşım, biraz yorumlarınıza ihtiyacım var.
php kullanıyorlar, formu yazıcıdan çıkarmak için yazıcı ayarlarını phpde yapamıyorlarmı, windowsta oluyormuş ama serverları linux olduğundan yapamamış bi türlü çünkü olmuyomuş. Acaba dedi yazıcı olayını delphi ile mi halletsem ama bu internetten çalışan birşey ve her yerde kullanılacak. Yani mesela adam x ilçesinde bu sayfaya girdiğinde formu yazıcıya göre istediği şekilde ayarlayıp yazdırabilecek. Böyle bir istek için önerileriniz ne olur?
Umarım isteği tam olarak anlayıp anlatabilmişimdir.
Sorunu yaşayan bir arkadaşım, biraz yorumlarınıza ihtiyacım var.
php kullanıyorlar, formu yazıcıdan çıkarmak için yazıcı ayarlarını phpde yapamıyorlarmı, windowsta oluyormuş ama serverları linux olduğundan yapamamış bi türlü çünkü olmuyomuş. Acaba dedi yazıcı olayını delphi ile mi halletsem ama bu internetten çalışan birşey ve her yerde kullanılacak. Yani mesela adam x ilçesinde bu sayfaya girdiğinde formu yazıcıya göre istediği şekilde ayarlayıp yazdırabilecek. Böyle bir istek için önerileriniz ne olur?
Umarım isteği tam olarak anlayıp anlatabilmişimdir.
Merhaba Naile hn.
Bahsettiğiniz olay web üzerinden olduğundan php tarafta böyle bir ayar yapma imkanı nasıl olur tam bilemiyorum:( Sonuçta php nin oluşturduğu html yi sistemde tanımlı yazıcıdan bastırabilmek lazım. Server in ne olduğu önemli değil ulaşılan ortam ne ise ve sisteme tanımlı bir yazıcı varsa sorun yok. Ama eğer siz raporu istediğim gibi düzenliyeyim diyorsanın yine php ile bir form sayfasında raporda çıkmasını istediğiniz alanları işaretleyip o şekilde de yazdırabilirsiniz. php den direkt yazdırma olabileceği gibi browser dan html i de yazdırabilirsiniz.
Bahsettiğiniz olay web üzerinden olduğundan php tarafta böyle bir ayar yapma imkanı nasıl olur tam bilemiyorum:( Sonuçta php nin oluşturduğu html yi sistemde tanımlı yazıcıdan bastırabilmek lazım. Server in ne olduğu önemli değil ulaşılan ortam ne ise ve sisteme tanımlı bir yazıcı varsa sorun yok. Ama eğer siz raporu istediğim gibi düzenliyeyim diyorsanın yine php ile bir form sayfasında raporda çıkmasını istediğiniz alanları işaretleyip o şekilde de yazdırabilirsiniz. php den direkt yazdırma olabileceği gibi browser dan html i de yazdırabilirsiniz.
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
yazıcı ayarları
merhaba nailenin bahsettiği arkadaş benim. Ben sorunumu biraz daha açacak olursam ben php'de bir form hazırladım bu form veritabanı ile bağlantılı ve veritabanından istenilen bilgileri aldıktan sonra A5 kağıdı boyutunda bir form oluyor. Fakat bu formun çıktısının A5 kağıdına olması gerekiyor. Bu yüzden bu formun çıktısını alacak kişi gidip browserın yazdır alanından A5 işaretlemesi gerekiyor birde herkesin bilgisayarındaki yazıcılar farklı ve sayfa yapıları da farklı olduğu için A5 seçilme bile bazen çıktı düzgün olmayabiliyor. Benim istediğim bu ayarları kullanıcılardan bağımsız program kodlarıyla yapmak. Yani kağıt boyutunu,sayfa yapısını program kodlarıyla ayarlayayım ve yazdır diye bir buton koyup, kullanıcı bu butona bastığı zaman çıktı yı alsın yani yazıcı ayarlarıyla uğraşmasın. Bunu php'de çok araştırdım fakat bunu sadece sunucu tabanlı yapılabileceğini öğrendim o yüzden bunu delphinin internet komponentlerini kullanarak yapıp yapamayacağım araştırıyorum. Bu konuda bana yardımcı olursanız çok sevinirim. (Bu programın mutlaka internet üzerinde çalışması gerekiyor veritabanıyla bağlantılı olup yazıcı ayarlarınında program koduyla yapılması gerekiyor)
aşağıdaki linkde cevabı bulunabilir.
http://tr.php.net/manual/tr/function.printer-open.php
diğer ilgili linkler
http://www.php.net
http://www.php.org.tr
http://tr.php.net/manual/tr/function.printer-open.php
diğer ilgili linkler
http://www.php.net
http://www.php.org.tr
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
Bu sayfayı çok inceledim ama bu kodlar sadece sunucu bilgisayarına bağlı yazıcı için geçerli oysa benim istediğim herkes kendi bilgisayarından internetten benim yaptığım sayfaya gitsin ordan kendi yazıcısından yada ağdaki bir yazıcı da olabilri çıktı alsın.
rsimsek yazdı:aşağıdaki linkde cevabı bulunabilir.
http://tr.php.net/manual/tr/function.printer-open.php
diğer ilgili linkler
http://www.php.net
http://www.php.org.tr
eğer browser'a header dan bu tarz bilgiler gönderebiliyor olsaydık
haliyle php ile yapılırdı ama sanırım mümkün değil.
activeX ile şöyle bişey denemişler
burda
x.SendKeys("aa");
değeri default olanı
onu
x.SendKeys("a5");
yaptım tuttu
yazdır penceresi geliyor orada benimkinde a5 çıktı ve a5 formunda yazdırdı
(a5 a4 ten ebat olarak küçükmüş, öğrendim böylece)
burdaki 200 değeri aslında o anda page setup penceresini açıyor o pencerenin ne kadar açık kalacağını gösteriyor siz onu
düşürdükçe o kadar erken kapanıyor
tek sorun activeX uygulaması çalıştırmak istiyor musunuz diye bir pencere çıkartıyor
http://codingforums.com/showthread.php?t=36037
umarım hallolmuştur
haliyle php ile yapılırdı ama sanırım mümkün değil.
activeX ile şöyle bişey denemişler
Kod: Tümünü seç
<script language=javascript>
var x;
function SetPrintProperties()
{
x = new ActiveXObject("WScript.Shell")
x.SendKeys("+(%fu)");
window.setTimeout("javascript:SetPaperSize();", 200)
}
function SetPaperSize()
{
x.SendKeys("aa");
x.SendKeys("~");
x.SendKeys("+(%f)p");
}
</script>
x.SendKeys("aa");
değeri default olanı
onu
x.SendKeys("a5");
yaptım tuttu
yazdır penceresi geliyor orada benimkinde a5 çıktı ve a5 formunda yazdırdı
(a5 a4 ten ebat olarak küçükmüş, öğrendim böylece)
Kod: Tümünü seç
window.setTimeout("javascript:SetPaperSize();", 200)
düşürdükçe o kadar erken kapanıyor
tek sorun activeX uygulaması çalıştırmak istiyor musunuz diye bir pencere çıkartıyor
http://codingforums.com/showthread.php?t=36037
umarım hallolmuştur
yazıcı ayarları
kodu nereye yerleştirmem gerekiyor ben head'lerin arasına yerleştirdim ama bunu nerde ve nasıl çağıracağımı bilemedim.
onaydin yazdı:eğer browser'a header dan bu tarz bilgiler gönderebiliyor olsaydık
haliyle php ile yapılırdı ama sanırım mümkün değil.
activeX ile şöyle bişey denemişler
burdaKod: Tümünü seç
<script language=javascript> var x; function SetPrintProperties() { x = new ActiveXObject("WScript.Shell") x.SendKeys("+(%fu)"); window.setTimeout("javascript:SetPaperSize();", 200) } function SetPaperSize() { x.SendKeys("aa"); x.SendKeys("~"); x.SendKeys("+(%f)p"); } </script>
x.SendKeys("aa");
değeri default olanı
onu
x.SendKeys("a5");
yaptım tuttu
yazdır penceresi geliyor orada benimkinde a5 çıktı ve a5 formunda yazdırdı
(a5 a4 ten ebat olarak küçükmüş, öğrendim böylece)
burdaki 200 değeri aslında o anda page setup penceresini açıyor o pencerenin ne kadar açık kalacağını gösteriyor siz onuKod: Tümünü seç
window.setTimeout("javascript:SetPaperSize();", 200)
düşürdükçe o kadar erken kapanıyor
tek sorun activeX uygulaması çalıştırmak istiyor musunuz diye bir pencere çıkartıyor
http://codingforums.com/showthread.php?t=36037
umarım hallolmuştur
aslında kodun nerde duracağı pek önemli değil
body içindende okuma yapabiliyor
Birde font özelliklerini CSS kullanarak belirlerseniz
kullanıcı hemen hemen sizdeki tasarımı görecektir,
aksi halde mesela browser / view / text size da yazı tipi boyutunu
büyük küçük diye ayarlarsa fontlar sizdekinden farklı gözükür.
body içindende okuma yapabiliyor
Kod: Tümünü seç
<html>
<head>
<title>A5 .. yazdırma</title>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1254">
<script language=javascript>
var x;
function SetPrintProperties()
{
x = new ActiveXObject("WScript.Shell")
x.SendKeys("+(%fu)");
window.setTimeout("javascript:SetPaperSize();",200)
}
function SetPaperSize()
{
x.SendKeys("a5");
x.SendKeys("~");
x.SendKeys("+(%f)p");
}
</script>
<style type="text/css">
<!--
.verd {
font-family: Verdana, Arial, Helvetica, sans-serif;
font-size: 11px;
}
-->
</style>
</head>
<body>
<input type=button name=btnClick value="Print" onclick="javascript:SetPrintProperties();">
<div class="verd">A5 yazdır..</div>
</body>
</html>
kullanıcı hemen hemen sizdeki tasarımı görecektir,
aksi halde mesela browser / view / text size da yazı tipi boyutunu
büyük küçük diye ayarlarsa fontlar sizdekinden farklı gözükür.
activeX le browser ın baya bi özelliğine erişilebildiğinden olsa
gerek güvenlik nedeniyle çalıştırılmıyor olabilir
bende i.e 6.0 ing , winXP üzerinde çalışıyor, sizde çalışmamasının sebebi
versiyon farklılığından ya da güvenlik ayarlarınızdan kaynaklanabilir.
bi deneme yapıp hangi versiyonlarda çalışıp çalışmadığına bakmak lazım.
bu formu basacak bilgisayarlar bir firmanın farklı bilgisayarları ise
belki bunlarda uygun versiyonların kurulması istenir.
http://www.meadroid.com/scriptx/index.asp
adresinde bi uygulama geliştirmişler, sayfa alt ve üst bilgilerini değiştirebiliyor sanırım bunları yapan sayfa ebatını da değiştirebilir.
gerek güvenlik nedeniyle çalıştırılmıyor olabilir
bende i.e 6.0 ing , winXP üzerinde çalışıyor, sizde çalışmamasının sebebi
versiyon farklılığından ya da güvenlik ayarlarınızdan kaynaklanabilir.
bi deneme yapıp hangi versiyonlarda çalışıp çalışmadığına bakmak lazım.
bu formu basacak bilgisayarlar bir firmanın farklı bilgisayarları ise
belki bunlarda uygun versiyonların kurulması istenir.
http://www.meadroid.com/scriptx/index.asp
adresinde bi uygulama geliştirmişler, sayfa alt ve üst bilgilerini değiştirebiliyor sanırım bunları yapan sayfa ebatını da değiştirebilir.