Table dan birden fazla resim kaydını yanyana print etmek

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Clipper
Üye
Mesajlar: 9
Kayıt: 18 Tem 2005 06:19

Table dan birden fazla resim kaydını yanyana print etmek

Mesaj gönderen Clipper »

Merhaba

Data dosyasında kayıtlı resimleri yanyana prin etmek istediğim zaman sadece sonuncu resimi print ediyor. Aynı şekilde resmi sağ tarafına yazı da yazmak istediğim zaman aynı şey oluyor. Benim tahminim yazıcı resimi satır satır yazdıktan sonra diğer resmi veya yazıyı yazmak için sayfanın başına geri dönemiyor. Kod kısmını aşağıdaki gibi yazdım. Acaba bu sorunu nasıl çözebilirim.

Kod: Tümünü seç

Var ust,alt,sag,sol,rGen,rYuk,Genislik,Yukseklik : integer;
    mmGen,mmYuk : Extended;
begin
  Genislik:=Printer.PageWidth;
  Yukseklik:=Printer.PageHeight;
  mmGen:=Genislik/209;   // 1 mm.ye düşen nokta sayısı
  mmYuk:=Yukseklik/297;  // 1 mm.ye düşen nokta sayısı
  ust:=Trunc(mmYuk*6);
  alt:=Trunc(mmYuk*6);
  sol:=Trunc(mmGen*4);
  sag:=Trunc(mmGen*4);
  rGen:=Trunc((Genislik-(Sol+Sag))/3);
  rYuk:=Trunc((Yukseklik-(Ust+Alt))/4)-90;
  Printer.BeginDoc;
  try
    Image1.Picture.Graphic := jvDBImage1.Picture.Graphic;
    Printer.Canvas.StretchDraw(Rect(Sol,Ust,Sol+rGen,Ust+rYuk),
       jvDBImage1.Picture.Graphic);
    Table1.Next;
    Printer.Canvas.StretchDraw(Rect(Sol+rGen,Ust,Sol+rGen*2,Ust+rYuk),
       jvDBImage1.Picture.Graphic);
    Printer.Canvas.Font.Size:=4;
    Printer.Canvas.TextOut(Sol,Ust+rYuk,
      '123456789012345678901234567890');
    Printer.Canvas.Font.Size:=5;
    Printer.Canvas.TextOut(Sol,Ust+rYuk+90,
      '123456789012345678901234567890');
   finally
     Printer.Enddoc;
  end;
[/code]
Kullanıcı avatarı
tuanna
Üye
Mesajlar: 582
Kayıt: 06 Ara 2004 05:01
Konum: Ankara
İletişim:

Mesaj gönderen tuanna »

sorma 3 gündür resimlerle uğraşıyorum çıldıracam ben de...

ama birincisi resimleri veri tabanına kayıtlı halde ise onları fast report ile yanyana gösterebişliyorsun....bunu bi araştır istersen
Siz hayal edin...Biz yapalım TuannaSoft...
Clipper
Üye
Mesajlar: 9
Kayıt: 18 Tem 2005 06:19

Mesaj gönderen Clipper »

Benim basmak istediğim sayfa da 3x4 toplam 12 resim ve her resmin altında da resme ait açıklama yazısı var. Yukarıda kod olarak yazdığım yöntemle olmayınca sayfaya basmak istediğim resimler ve yazılar için ayrı bir paradoks dosyası oluşturup her basmak istediğim sayfadaki bilgileri tek bir kayıt olarak kaydettim ve Ace report programı ile sayfaları bastım. Bu şekilde oluyor. Ama burda da sorun basmak istediğim sayfayı print preview yaparken düzgün göstermesine rağmen yazıcıda baskı alırken bazı sayfaları düzgün basmasına rağmen bazı sayfalarda ise 1-2 tane resmi basamıyor. Bunun nedenini bir türlü çözemedim. Sizce acaba nedeni ne olabilir.
Cevapla