qreportta a4- ve a-5 kağıdı ayarı

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
y.kulac
Üye
Mesajlar: 276
Kayıt: 08 Kas 2003 12:03
Konum: serdivan/sakarya

qreportta a4- ve a-5 kağıdı ayarı

Mesaj gönderen y.kulac »

s.a.

raporumu qreport ile alıyorum. rapor dizaynını a4 kağıdına göre yaptım. raporun üzerinde çizimlerde mevcut. ama yazma olayını a5 kağıdına da aldırmak istiyorum. reprot settigs ten kağıt boyutunu a5 olarak ayarladığımda rapor üzerindeki şekiller kağıda sığmıyor. yazı fonları da büyük olarak sırıtıyor. benim aklıma gelen bir rapordan 2 tane hazırlanması birisi a4 diğeri a5 olarak. ama bu iş baya bir zahmetli ve zaman alıyor.

qreportta a4 olarak tasarımı yazpılmış bir kağıdı a5 olarak yazdırmak istediğimde rapor üzerindeki bütün yazı şekil v.s. a5 kağıdına göre otomatik veya kod ile nasıl ayarlayabilirim. yani a4 kağıdındaki şekil ile a5 kağıdındaki şeklin boyutları farklı olmak zorunda.

iyi çalışmalar dilerim.
Kullanıcı avatarı
nitro
Üye
Mesajlar: 1112
Kayıt: 23 Ağu 2004 01:18
Konum: Çanakkale
İletişim:

Mesaj gönderen nitro »

ben önceleri benzer burumlarda 2 farklı quickrep hazırlıyordum. Her objenin A5 kağıda göre boyutları ve konumu için kod yazmaktan daha kolay.
Ama yine de 2 farklı raporla uğraşmayayım dersen objeleri scaleby ile topluca A5 kağıda ölçekleyebilirsin.
kolay gelsin
Kullanıcı avatarı
y.kulac
Üye
Mesajlar: 276
Kayıt: 08 Kas 2003 12:03
Konum: serdivan/sakarya

Mesaj gönderen y.kulac »

nitrokonat yazdı:ben önceleri benzer burumlarda 2 farklı quickrep hazırlıyordum. Her objenin A5 kağıda göre boyutları ve konumu için kod yazmaktan daha kolay.
Ama yine de 2 farklı raporla uğraşmayayım dersen objeleri scaleby ile topluca A5 kağıda ölçekleyebilirsin.
kolay gelsin
scaleby olayını biraz daha açabilir misiniz?
Kullanıcı avatarı
sabanakman
Kıdemli Üye
Mesajlar: 3081
Kayıt: 17 Nis 2006 08:11
Konum: Ah bi Antalya olaydı keşke (Ankara)

Mesaj gönderen sabanakman »

Merhaba;

Kod: Tümünü seç

QuickRep1.ScaleBy(1,2);
kodu ile 1/2 olarak boyutlandırma yapabilirsin. Böylelikle tüm değerler %50 küçülecektir.

ScaleBy(Çarpan Değer,Bölen Değer) metodunu detaylandırmak gerekirse bu metod hangi kontrol için çalıştırılıyorsa o kontrol ve içindeki tüm kontroller 1. parametre ile çarpılıp 2. parametre ile bölünerek yeni görünümüne kavuşacaktır. Tabi bu çarpma ve bölme işlemleri kontrollerin Left, Top, Height ve Width özellikleri üzerinden uygulanır. Bu işlemin istenilen sonucu verdiğine ya da vermediğine dair sonucu burada belirtirseniz iyi olacaktır. Kolay gelsin.
En son sabanakman tarafından 28 Eki 2006 03:39 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
Şaban Şahin AKMAN
_________________
Derin olan kuyu değil kısa olan iptir. - .
Kullanıcı avatarı
y.kulac
Üye
Mesajlar: 276
Kayıt: 08 Kas 2003 12:03
Konum: serdivan/sakarya

Mesaj gönderen y.kulac »

Kod: Tümünü seç

QuickRep1.ScaleBy(1,2);
teşekkür ederim.
yukarıdaki kod bütün raporu yazı, şekiller v.s. yarı yarıya (%50) küçülltü. ama kağıdın boyu a-4 olarak kaldı.
yazdırma esnasında kod ile kağıdın buyutunuda a-5 olarak ayarlarsam istediğim olacak. ben biraz daha çalışayım.
kolay gelsin.
Kullanıcı avatarı
y.kulac
Üye
Mesajlar: 276
Kayıt: 08 Kas 2003 12:03
Konum: serdivan/sakarya

Mesaj gönderen y.kulac »

Kod: Tümünü seç

quickrep1.page.papersize := A5;
olarak atama yaptım "undeclared identifier 'A5'" dedi delhi. yani tanımsız. sanırım a5 yerine boyut olarak vermek gerekecek.
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

Kod: Tümünü seç

quickrep1.page.papersize := A5;
için Uses'a QrPrntr eklersen sorun çözülür...

Tanımlı sayfa büyüklükleri.

Kod: Tümünü seç

TQRPaperSize = (Default, Letter, LetterSmall, Tabloid, Ledger, Legal, Statement, Executive, A3, A4, A4Small, A5, B4, B5, Folio, Quarto, qr10X14, qr11X17, Note, Env9, Env10, Env11, Env12, Env14, CSheet, DSheet, ESheet, Custom)
Resim
Resim ....Resim
Cevapla