Layout-Bereiche: Seitenformat wechselt beim PDF-Drucker, nicht am Etikettendrucker (LL29)

Hallo zusammen,

ich versuche, aus einem Etikettenprojekt zwei unterschiedlich grosse
Etiketten in einem Druckauftrag auszugeben, und komme nicht weiter.

Aufbau: zwei Layout-Bereiche mit unterschiedlicher Seitengrösse,
Bedingung über IssueIndex(), Ausfertigungsdruck = 3.
Bereich A: IssueIndex()=1, Bereich B: IssueIndex()>=2.

Beobachtung:

  • Ausgabe auf “Microsoft Print to PDF”: Seite 1 erhält das Format
    von Bereich A, Seiten 2 und 3 das von Bereich B. Korrekt.
  • Ausgabe auf TSC MB341 mit Seagull-Treiber: alle Seiten behalten
    das Format der ersten Seite. Der Bereichswechsel greift, denn bei
    zwei Warteschlangen kommen Seite 1 und die Seiten 2/3 aus
    verschiedenen Geräten. Nur das Seitenformat wechselt nicht.
  • Auch mit nur einer Warteschlange und zwei Formaten bleibt es beim
    ersten Format.

Bereits geprüft und ausgeschlossen:

  • Beide Formate sind in beiden Treibern als Vorlage angelegt.
  • Etikettengrössen unter Erweitert > Standardwerte der Warteschlange.
  • “Erweiterte Druckfeatures aktivieren” in beiden Stellungen.
  • “Seitenformat erzwingen” in beiden Stellungen.

Setzt List & Label die Seiteneinstellung beim Wechsel des Layout-Bereichs überhaupt neu, oder gilt das Format des ersten Bereichs für den ganzen Auftrag? Und hat jemand zwei Etikettengrössen in einem Auftrag zum Laufen gebracht? Über Print to PDF wechselt das Format im selben Projekt korrekt, deshalb vermute ich den Bruch zwischen List & Label und dem Etikettentreiber.

Grüsse

Hallo Marco,

dein Vorgehen ist prinzipiell genau richtig. Das Format wird beim Wechsel beachtet, genau dafür sind die Layouts gedacht!

Deiner Beschreibung nach hast du die Ursache auch korrekt eingegrenzt. Das klingt stark danach, dass der Druckertreiber den Formatwechsel beim Wechsel der Ausgabe/Seite ignoriert - da können wir dann leider wenig machen. Dann bleibt leider nur der Weg über zwei Aufträge. Wenn du zum Vergleich einmal “Microsoft Print to PDF” und “Microsoft XPS Document Writer” in den zwei Layouts konfigurierst solltest du den Unterschied sehen.

Vermutlich liegt es also nicht an der Konfiguration, sondern am Treiber selbst. Zwei Punkte die du evtl. dennoch prüfen könntest:

→ Bei den Bedingungen verwendest du aktuell IssueIndex() (=Ausfertigung). Geht es in diesem Fall um die Ausfertigung oder die Seite? Wenn es um das Layout für unterschiedliche Seiten geht wäre Page() die richtige Bedingung, z.B. Page()=2 (kann auch mit AND oder OR verwendet werden). Ein Vergleich mit den zwei Microsoft Treibern sollte dir aber zeigen, ob es an der Konfiguration liegt oder am Treiber selbst.

Screenshot Einstellung Ausfertigungsdruck:

→ Sofern du mit dem Desktop Designer arbeitest so wird beim anschließenden Druck intern geprüft, ob dein Layout auch tatsächlich zum ausgewählten Papier-/Seitenformat passt. Es ist zwar unwahrscheinlich, aber evtl. passen Layout und Seitengröße der jeweiligen Layoutkonfiguration nicht zusammen? Im Zweifel muss das Seitenformat einen Tick größer sein, als die Layoutdefinition. Das Format beachtet auch Unterschiede in der Orientierung horizontal/vertikal.

Und so sieht es bei uns aus:

Hier ein paar Screenshots aus einem Testprojekt

Nach dem Layoutwechsel:

Im Anhang findest du das zugehörige Projekt, welches du mit unserer Demoanwendung öffnen kannst und dann mit deinem eigentlichen Projekt vergleichen kannst.

Artikel-Etikett mit Bild_Layoutbereiche.lbl (14.6 KB)

Hallo Till

Danke für die schnelle Einschätzung, das hilft.

Zum Hintergrund, was wir vorhaben: Wir drucken Geräte-Etiketten aus unserem ERP. Pro Gerät soll eine über die Menge steuerbare Anzahl Barcode-Etiketten kommen und dazu genau ein Abschluss-Etikett, das nicht mit vervielfältigt wird. Immer Menge X an Geräte-Etiketten und immer nur ein Abschlussetikett. Barcode und Abschluss-Etikett haben unterschiedliche Grössen und liegen auf zwei Etikettendruckern.

Deinen Vorschlag mit den zwei Microsoft-Treibern habe ich getestet, Print to PDF im einen Bereich und XPS Document Writer im anderen. Das liefert das korrekte Ergebnis, Gerätewechsel und Formatwechsel funktionieren beide. Damit ist die Konfiguration bestätigt und es liegt am Etikettentreiber (TSC MB341 mit Seagull-Treiber).

Zu IssueIndex() gegen Page(): für uns passt IssueIndex(). Wir geben denselben Datensatz mehrfach aus, es sind also echte Ausfertigungen und keine mehrseitige Ausgabe. Die Anzahl soll ausserdem über die Menge steuerbar sein.

Grüsse
Marco

Hallo Till

Nachtrag: der Treiber scheint doch nicht die Ursache zu sein.

Ich habe das Testprojekt komplett auf “Microsoft Print to PDF” umgestellt, beide Bereiche. Der Seitenformatwechsel funktioniert, die PDF-Seiten sind korrekt A4 beziehungsweise A5. Der Inhalt des zweiten Bereichs wird aber verkleinert ausgegeben, um genau den Faktor A5 zu A4.

Der A5-Bereich hat eine eigene Layoutdefinition von 147,99 x 210,01 mm. Die scheint für die Ausgabe nicht verwendet zu werden, es sieht aus, als würde der Entwurf gegen die Seitengrösse des ersten Bereichs gezeichnet und dann auf das eigene Blatt skaliert. Ohne Erfolg geprüft: Größenanpassung auf “Anpassen” und auf “Maßstab beibehalten” in beiden Bereichen, Seitenformat erzwingen, Physikalische Seite benutzen, aktiver Design-Bereich auf beide Bereiche, Spooler mit und ohne erweiterte Druckfeatures. Ist das so vorgesehen, oder übersehe ich eine Einstellung?

Demo Ausdruck.zip (176.9 KB)

Artikel-Etikett mit Bild.lbl (14.4 KB)

Anbei meine Demo Ausdrucke und das Testfile.

Übersehe ich etwas oder ist mein Ansatz total falsch?

Besten Dank

Grüsse
Marco

Hallo Marco,

danke für dein Feedback und deine Tests.

Prinzipiell würden wir hier aus unserer Sicht zwei Themen voneinander unterscheiden:

  1. Das Papier- bzw. Seitenformat: Soweit wir das aktuell beurteilen können, wird dieses mit dem PDF-Drucker korrekt umgesetzt.

  2. Die Positionierung bzw. Anpassung der Objekte an das geänderte Seitenformat: Hier scheint es sich um das aktuell noch offene Thema zu handeln.

IssueIndex() in einer Formel ist für das einfache Ein- und Ausblenden von Objekten wie z.B. einem Wasserzeichen, Logo oder ähnlichem hilfreich. In diesem Fall funktioniert dies leider nicht, da die Objekte ganz zu Anfang mit den festen Koordinaten gezeichnet werden und da ist das Layout noch ein anderes. Es müssten also die Objekte zur Laufzeit noch einmal neu gerendert werden. Für diesen Fall gibt es das Mehrpassverfahren.

Wir haben dir daher das Beispielprojekt einmal so angepasst, dass es hoffentlich das tut, was du dir vorstellst. Kurz: Statt der Ausfertigungen nutzt du das Mehrpassverfahren und indem du alle Durchläufe auch druckst (siehe Mehrpassverfahren: Ausgabebedingung “Alle”) hast du auch automatisch mehrere Ausgaben.

Und dann setzt du an allen anderen Stellen statt IssueIndex() einfach PrintPassIndex() (im Beispiel bereits umgesetzt, siehe Anhang).
Artikel-Etikett mit Bild_Mehrpass.lbl (13.9 KB)

Hallo Till

Das Mehrpassverfahren mit PrintPassIndex() war die Lösung!
So habe ich mir das vorgestellt.

Recht Herzlichen Dank dafür!

Grüsse
Marco