AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi kein Ausdruck im Sparmodus
Thema durchsuchen
Ansicht
Themen-Optionen

kein Ausdruck im Sparmodus

Ein Thema von punker-lili · begonnen am 2. Jul 2008 · letzter Beitrag vom 2. Jul 2008
Antwort Antwort
punker-lili

Registriert seit: 22. Apr 2007
91 Beiträge
 
#1

kein Ausdruck im Sparmodus

  Alt 2. Jul 2008, 12:12
Hiho.. ich hab folgende Prozedure geshcrieben, damit ich Bilder ausdrucken kann. Leider funktioniert das nicht, wenn ich meinen Drucker auf Sparmodus stelle... Woran liegt das?

Delphi-Quellcode:
Procedure DruckPos(iLeft, iTop: integer; Graphic: TGraphic);
var i,breite,hoehe,zoom,start:integer;
begin
//Änderung Breite
  breite := GetDeviceCaps(Printer.Handle, HORZRES);//Bestimmung Blattbreite in Pixel
  zoom:=breite div graphic.Width;
  if zoom = 0 then
   begin
    printer.Orientation:=polandscape;
    breite := GetDeviceCaps(Printer.Handle, HORZRES);//Bestimmung Blattbreite in Pixel
    zoom:= breite div graphic.Width;
    //Meldung abgeben an Benutzer
   end;
//Änderung Höhe
  hoehe:=GetDeviceCaps(Printer.Handle,VERTRES);
    for i:=0 to (graphic.Height div hoehe) do
     begin
      start:= itop+i*GetDeviceCaps(Printer.Handle,VERTRES);
      SetWindowOrgEx(Printer.Handle,iLeft,start,nil);
      Printer.BeginDoc;
      SetMapMode(Printer.Canvas.Handle, MM_ISOTROPIC);
      SetWindowExtEx(Printer.Canvas.Handle, 1, 1, nil);
      SetViewportExtEx(Printer.Canvas.Handle, Zoom, Zoom, nil);
      Printer.Canvas.Draw(iLeft, iTop, Graphic);
      Printer.EndDoc;
     end;
end;
ich hab auch noch ne Frage...GetDeviceCaps(Printer.Handle,VERTRES) gibt mir bloß die Anzahl der Spalten wieder.. ich brauch aber die Höhe in Pixel?! Wie kann ich das Ändern? Gibts nen anderen Befehl dafür?

MfG Anna
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#2

Re: kein Ausdruck im Sparmodus

  Alt 2. Jul 2008, 12:19
Hallo,

zum ersten problem hab ich auch keine Antwort parat, aber zu:
Zitat von punker-lili:
ich hab auch noch ne Frage...GetDeviceCaps(Printer.Handle,VERTRES) gibt mir bloß die Anzahl der Spalten wieder.. ich brauch aber die Höhe in Pixel?! Wie kann ich das Ändern? Gibts nen anderen Befehl dafür?
Probier mal GetDeviceCaps(Printer.Handle,HORZRES)

[edit]Äh sorry, quatsch... hab mich verlesen[/edit]
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz