AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Grössen Problem

Ein Thema von Rossi123 · begonnen am 9. Jan 2007 · letzter Beitrag vom 13. Jan 2007
Antwort Antwort
Rossi123

Registriert seit: 4. Jan 2007
7 Beiträge
 
#1

Grössen Problem

  Alt 9. Jan 2007, 20:22
Hallo,
Ich habe einen Drucker der mit 600 dpi druckt, damit druckt er mein TImage (2480*3508) aber zu klein aufs blatt...
Ich habe auch schon versuch, die auflösung der TImage an die dpi meines Druckers anzupassen(4961*7016), jedecoh kommt bei mir dann die fehlermeldung, das dafür nich genügend speicher vorhanden sei...

kann ich dem Drucker irgendwie sagen, das er mit 300 dpi drucken soll?
oder gibt es eine andere möglichkeit, das speicher problem zu lösen?
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#2

Re: Grössen Problem

  Alt 13. Jan 2007, 10:35
Zitat von Rossi123:
Ich habe einen Drucker der mit 600 dpi druckt, damit druckt er mein TImage (2480*3508) aber zu klein aufs blatt...
Ich habe auch schon versuch, die auflösung der TImage an die dpi meines Druckers anzupassen(4961*7016), jedecoh kommt bei mir dann die fehlermeldung, das dafür nich genügend speicher vorhanden sei...
Hi,
was dein Problem angeht, so ist es ein recht typisches für's Drucken. Mein Tipp deswegen natürlich: einfach mal suchen (Hier im Forum suchendrucken).

Jedenfalls ist das Problem, dass du ein GDI-Device ansprichst, dahinter kann sich jetzt ein Drucker, ein Bitmap oder irgendwas anderes (ein Graphisches Device) befinden. Dessen Auflösung kannst du zwar leicht abfragen, aber nicht zwangsläufig auch setzen. Natürlich stellt das bei einem Drucker (i.d.R.) kein Problem da, nur unterstützt jeder Drucker eine Auflösung von 300 dpi? Kannst du kaum garantieren, bei Bildern sieht es dann noch um einiges Problematischer aus.
Besser ist es daher, dass du einfach das Bild so ausgibst, dass es auf jedem Device die gleiche größe hat. Um die entsprechende Skalierung kümmert sich das GDI (z.B. die Funktion StretchDraw eines Canvas). Hier kannst du angeben welcher Bereich des Quellcanvas in welchen Bereich des Zielcanvas kopiert werden soll. Dabei wird die Information des Quellcanvas aut. an die Dimensionen des Zielcanvas angepasst (ebend gestreckt/gestaucht).
Um hier die richtige Zielgröße angeben zu können hast du zwei Möglichkeiten:
  1. Du kannst mittels der Funktion GetDeviceCaps die Größe und Auflösung abfragen und hier ausrechnen wie groß dein Zielbereich sein müsste
  2. Du setzt mittels setMapMode die Einheit des Zielcanvas auf etwas absolutes (mm, inch, 10tel mm, 10tel inch), so dass du hier unabhängig von der Auflösung immer die gleiche Größe angeben kannst.

Das Bild der Größe anzupassen ist natürlich keine gute Lösung, stell dir einfach mal vor, du schließt einen Drucker mit 2400er oder 4800er Auflösung an...

Gruß Der Unwissende
  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 11:33 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