Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Werkzeuge (https://www.delphipraxis.net/63-sonstige-werkzeuge/)
-   -   Fastreport - Seitenvorschub für Endlospapier ausschalten (https://www.delphipraxis.net/179161-fastreport-seitenvorschub-fuer-endlospapier-ausschalten.html)

delphi_beginner 18. Feb 2014 05:21

Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Hallo zusammen,

da ich bei der Erstellung des dotmatrix-Reports (siehe hier) nicht weitergekommen bin, muss ich den Weg über den Standard-Report gehen.
Meine Frage hierzu: Wie kann ich den Seitenvorschub ausschalten?
Bei einem dotMatrix-Report konnte ich den Seitenvorschub problemlos über den Dialog abschalten.

Schönen Gruß
S.-G.

ibp 18. Feb 2014 07:25

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
hi,
in den Eigenschaften der TfrxReportPage gibt es die Option EndlessHeight und unter TfrxReport>PrintOptions die Eigenschaft SwapPageSize.
Vielleicht hilft das ja weiter.

delphi_beginner 18. Feb 2014 08:10

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Nein, die beiden Optionen helfen leider nicht.

ibp 18. Feb 2014 08:40

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
also wenn ich EndlessHeight setze funktioniert es.

Lemmy 18. Feb 2014 08:43

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
SwapPageSize hat (noch) keine Bedeutung und EndlessPageHigh hat IMHO nur für das Design eine Bedeutung, da die Bänder ja im Designer mehr Platz weg nehmen als später auf dem Papier...

delphi_beginner 18. Feb 2014 09:15

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
@Lemmy
Ja, so habe ich das leider auch gesehen.
Ich kann das gar nicht glauben, dass der Seitenvorschub beim dotmatrik-Report ausschaltbar ist und beim Standard-Report nicht. Hat noch jemand eine Idee.
Ich werde mir noch mal den dotmatrik-Report vornehmen und versuchen, mit den Steuerzeichen ein line-spacing zu setzen.

Union 18. Feb 2014 09:19

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
An Deiner Stelle würde ich versuchen mir einen Beispielreport mit einem Editor zu basteln. Die Vorlage dafür erhältst Du ja wenn Du einen FR-DMP beim Drucken in eine Datei umlenkst (Generic / Text-Only - Treiber). Dann spielst Du so lange mit den Steuerzeichen bis es passt und baust diese dann an der richtigen Stelle im FR mit den DMPCommands ein.

Neumann 18. Feb 2014 09:29

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Die EndlessHight-Option hat bei mir noch nie funktioniert.

Man kann das Problem so lösen:

Page Top und Bottom Margin auf 0 setzen, Masterdata und ev. andere Bänder auf AllowSplit. Ev. sind dann noch einige Einstellungen im Druckertreiber nötig; kommt auf das Gerät an.

ibp 18. Feb 2014 09:29

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Zitat:

Zitat von Lemmy (Beitrag 1248314)
...EndlessPageHigh hat IMHO nur für das Design eine Bedeutung, da die Bänder ja im Designer mehr Platz weg nehmen als später auf dem Papier...

nein , dass ist LargeDesignHeight

delphi_beginner 18. Feb 2014 09:57

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
@ibp - Vielen Dank, aus der Erinnerung meine ich, dass EndlessPageHigh nur Einfluss auf die Vorschau nahm, aber der Druck identisch mit Seitenvorschub war. Schaue ich mir noch einmal an.

@Union - Danke Dir, auf die Vorgehensweise wäre ich wohl alleine leider nie gekommen, aber die macht natürlich Sinn :thumb:

@Neumann - Auch Dir vielen Dank. Dein Vorschlag werde ich auch testen, wobei ich noch nicht weiß, welche möglichen Einstellungen im Druckertreiber Du meinst, aber das werde ich dann wohl sehen.

Danke nochmals, da kann ich ja nun noch einiges testen. Ich werde berichten..

delphi_beginner 20. Feb 2014 10:38

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
So, hier nun die Ergebnisse der bisherigen Tests:

@Union - Den dotMatrix-Report mit dem Setzen von Steuerzeichen anzupassen, habe ich noch nicht testen können. Diese "Friemelei", um mit den Steuerzeichen in Form von "line-spacing" auf die gewünschte Etikettenhöhe zu kommen, wollte ich mir als allerletzte Option aufbewahren.

@Neumann - Ich habe Page Top und Bottom Margin auf 0 gesetzt, das Masterdata-Band auf die Höhe der Etikettenhöhe und auf AllowSplit gestellt. Hier wurde nach jedem Etikett ein Seitenvorschub an den Drucker gesendet. Ich weiß nun nicht, ob Du mit den möglichen Einstellungsänderungen im Druckertreiber meinst, dass ich den Seitenvorschub über den Treiber eliminieren soll. Wenn ja, habe ich keine Ahnung wie ich das anstellen soll.

@ibp - EndlessPageHigh bewirkte tatsächlich auch beim Druck, dass der Seitenvorschub verschwand, aber dafür ein neues Problem erzeugte: Immer nach dem Druck des 17. Etiketts wird nicht mehr weitergedruckt, obwohl noch Etiketten hätten gedruckt werden müssen. Was kann das sein?
Wenn dieses Problem noch in den Griff zu bekommen wäre, dann hätten wir eine Lösung.
Über weitere Hilfen und Vorschläge bin ich sehr sehr dankbar :oops:

delphi_beginner 22. Feb 2014 07:23

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
*push*

Buddelfish 22. Feb 2014 07:42

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Ich habe mir nicht alles durchgelesen, deshalb vorab zwei Fragen:
1. Welcher Druckertyp?
2. Was für Etiketten?

Um gleich eine Lösung vorzuschlagen: Ich musste mal einen Zebra-Drucker ansteuern, der Label mit Barcode und 2D-Code und Logo etc. ausdrucken sollte. Mit FastReport geht das, aber eben saulangsam, weil der FR ja rendert. Also habe ich mir den Designer von Zebra geschnappt (nein, nicht den Schwachmaten, der die Drucker so häßlich designt, sondern die Software, mit der man Label designen kann) und das Label genauso gebaut, wie es sein sollte. Anstatt der konkreten Daten habe ich Platzhalter '$1$', '$2$' etc. genommen (natürlich nicht ganz so blöd, sondern mit Namen) Dann gibt es dort eine Funktion, um das Design als Zebra-Druckercode in eine Text-Datei zu schreiben.

So und meine Software liest die Text-Datei, macht ein 'StringReplace' mit den Platzhaltern und den echten Daten und schickt den resultierenden String direkt an den Drucker. Schneller geht es nicht. Der Seitenvorschub (=Etikettenvorschub) ist perfekt.

Der Riesenvorteil ist neben der Geschwindigkeit auch der gestochen scharfe Druck der Barcodes, die perfekt gerendert sind, was inbesondere bei sehr kleinen Barcodes extrem wichtig ist, weil schon das Verschieben eines Balkens um einen Pixel (Rundungsfehler) Selbigen unlesbar macht.

Bei einem Etikett setze ich einfach die Seitenhöhe auf den Abstand zwischen den Oberkanten zweier aufeinanderfolgenden Etiketten. Perfekt.

delphi_beginner 23. Feb 2014 18:30

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
@Buddelfish
Der Drucker ist ein OKI ML 3390.
Die Tyvek Endlos-Etiketten sind 220 x 19,125 mm.

Buddelfish 23. Feb 2014 19:31

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Also fällt die Zebra-Lösung aus. Wie funktioniert es, wenn Du die Seitenlänge nicht auf unendlich stellst (was bei einem Bondrucker sinnvoll wäre), sondern eben auf die Etikettenhöhe?

delphi_beginner 24. Feb 2014 14:33

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Dann wird nach jedem Etikett ein Seitenvorschub gesendet, so dass die nächsten 5 Etiketten nicht gedruckt werden.

Buddelfish 24. Feb 2014 14:42

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Zitat:

Zitat von delphi_beginner (Beitrag 1249320)
Dann wird nach jedem Etikett ein Seitenvorschub gesendet, so dass die nächsten 5 Etiketten nicht gedruckt werden.

Dann ist die Seitengröße nicht richtig eingestellt. Diese muss genau der Etikettenhöhe entsprechen (bzw. dem Abstand von Etikett zu Etikett. Wenn da was nicht passt, dann hast Du vielleicht im Druckertreiber selbst eine feste Seitengröße eingestellt.
Überleg doch mal: Eine Seite ist so groß, wie Du dem Drucker das sagst. Du kannst ja auch eine A4-Seite Quer einspannen (Seitenhöhe dann 8.5 in) oder US-Letterformat (Höhe = 12in ?) oder ne Postkarte oder eben ein Etikett. Dann ist die zu bedruckende Seite eben ziemlich klein.

delphi_beginner 24. Feb 2014 16:24

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Die Seitenhöhe entspricht definitiv der Etikettenhöhe, aber wo kann ich sehen, was möglicherweise wie im Treiber eingestellt ist?

Union 24. Feb 2014 16:44

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Bei EPSON-Nadeldruckern kann man die Seitenhöhe nur in ganzen Zoll einstellen.

Buddelfish 24. Feb 2014 17:23

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Zitat:

Zitat von Union (Beitrag 1249361)
Bei EPSON-Nadeldruckern kann man die Seitenhöhe nur in ganzen Zoll einstellen.

Sicher? Man kann die 'Einheit ziemlich fein einstellen' und dann die Seitenlänge in Vielfachen dieser Einheit setzen. Aber es ist schon ne Weile her.

Ist der OKI-Drucker ein ESC/P-Drucker?

Union 24. Feb 2014 17:37

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Zitat:

Zitat von Buddelfish (Beitrag 1249379)
Zitat:

Zitat von Union (Beitrag 1249361)
Bei EPSON-Nadeldruckern kann man die Seitenhöhe nur in ganzen Zoll einstellen.

Sicher? Man kann die 'Einheit ziemlich fein einstellen' und dann die Seitenlänge in Vielfachen dieser Einheit setzen. Aber es ist schon ne Weile her.
Ist der OKI-Drucker ein ESC/P-Drucker?

Was man fein einstellen kann, ist der Papiervorschub (bis runter auf 1/360 Zoll). Man sollte:
  • Einen FR-DMP verwenden
  • Im FR als Druckertyp EPSON oder IBM wählen
  • Den Druckertreiber in Windows auf Text-Only setzen
  • Die Seitenlänge in Zeilen einstellen (ESC C n)
  • Perforationssprung ausschalten (ESC O)
  • Nach der letzten Zeile mit variablem 1/180" Zeilenabstand (ESC ] n) einen Vorschub einfügen, bis es paßt. n = 1 entspricht 0,14 mm. Alternativ / zusätzlich kann man auch mit variablem 1/180" Zeilenabstand (ESC a n)arbeiten.
Nach dem Druck von zwei Etiketten, ausmessen der Unterschiede der Abstände von der Perforation und einmal Rechnen sollte man das egentlich korrekt hinkriegen.

Buddelfish 24. Feb 2014 19:13

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Ach, ich seh gerade 'ESC/P 2' und nicht 'ESC/P'. Tja dann...

Union 24. Feb 2014 19:30

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Weihnachten ist nicht mehr weit 8-)

delphi_beginner 3. Mär 2014 14:41

AW: Fastreport - Seitenvorschub für Endlospapier ausschalten
 
Zitat:

Was man fein einstellen kann, ist der Papiervorschub (bis runter auf 1/360 Zoll). Man sollte:

Einen FR-DMP verwenden
Im FR als Druckertyp EPSON oder IBM wählen
Den Druckertreiber in Windows auf Text-Only setzen
Die Seitenlänge in Zeilen einstellen (ESC C n)
Perforationssprung ausschalten (ESC O)
Nach der letzten Zeile mit variablem 1/180" Zeilenabstand (ESC ] n) einen Vorschub einfügen, bis es paßt. n = 1 entspricht 0,14 mm. Alternativ / zusätzlich kann man auch mit variablem 1/180" Zeilenabstand (ESC a n)arbeiten.

Nach dem Druck von zwei Etiketten, ausmessen der Unterschiede der Abstände von der Perforation und einmal Rechnen sollte man das egentlich korrekt hinkriegen.
@Union - Ich wollte mich noch mal ganz herzlich bei Dir bedanken. Genau so :thumb: (und nicht anders) geht es!


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:36 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