Zweispaltige Darstellung
Eine banale Frage: Wie stelle ich Informationen in zwei Spalten dar? Ich habe schon versucht, es mir aus dem Templates abzugucken (z.B. Pos. | Beschreibung | Preis | Summe"), aber ich bekomme es nicht hin.
Es sollen ein einfacher Text mit Bankdaten (links) und ein Bar/QR-Code rechts dargestellt werden. Selbe Zeile, aber eben nebeneinander.
-
Offizieller Kommentar
Hallo Martin,
der Seitenumbruch kann auch mit der Anweisung SetAreaMin beeinflusst werden.
Die SetAreaMin-Anweisung bestimmt wie viel Text mindestens noch auf eine Seite gedruckt wird. Passt der Text mit der Mindesthöhe nicht auf die Seite, so wird der komplette Text auf der nächste Seite ausgegeben.
Aktionen für Kommentare -
Hallo Martin,
die Positionierung erfolgt über die Zahlen (oder Variablen)
set hoehe to 50
set breite to LAYOUTWIDTH
set links1 to LAYOUTLEFTset banktxt to IfThen(Firma_BankKonto <> "" and Firma_BankBlz <> "", IfThen(banktxt <> "", banktxt + SEP, "") + "Konto: " + Firma_BankKonto + SEP + "Blz: " + Firma_BankBlz , banktxt)
set banktxt to IfThen(Firma_BankIBAN <> "" and Firma_BankBIC <> "", IfThen(banktxt <> "", banktxt + SEP, "") + "IBAN: " + Firma_BankIBAN + SEP + "BIC: " + Firma_BankBIC, banktxt)DrawText(banktxt, links1, hoehe, breite, 300, ALIGN_CENTER)
DrawText("Zahlung ganz bequem mit SEPA QR-Code (GiroCode):", links1, hoehe + 30, breite, 300)
DrawBarcode(giroCode, BARCODE_QRCode, 900, hoehe, 10, 200)Text wird am linken Rand begonnen
Barcode wird 900 px nach rechts geschoben(Hab jetzt nur so runtergeschrieben, muß nicht direkt funktionieren..)
Gruß Rainer
-
Das probiere ich. Danke!
Darf ich eine Bonus-Nachfrage stellen? Wie sorge ich dafür, dass ein Bereich / Absatz nicht am Seitenende nicht "zerbrochen", also umgebrochen wird.
Ich möchte gerne verhindern, dass "Bitte überweisen Sie", "Kontoverbindung" und QR auf zwei Seiten verteilt werden.
Also
===========================
Bitte ÜW Sie: [QR CODE]
IBAN:
Inh:
Betreff:
Sonstiger Text
===========================
Dieser Bereich soll immer als Block bei einander stehen.
Daraus werde ich nicht so ganz schlau:
https://www.monkey-office.de/doc/PageBreak.html#28443566 -
Darf ich eine Bonus-Nachfrage stellen? Wie sorge ich dafür, dass ein Bereich / Absatz nicht am Seitenende nicht "zerbrochen", also umgebrochen wird.
Soweit ich weiß gibt es dazu keine Funktion. Daher berechne ich mir den Platzbedarf selbst und wenn zu wenig Platz ist, dann füge ich vor dem Text einen Seitenumbruch ein. Die Berechnung des Platzbedarfs mußt Du ggfs. noch an Deine Anforderungen bzw. Dein Formular anpassen.
' Prüfe zuvor ob ausreichend Platz für den Text vorhanden ist, ansonsten erzeuge einen Seitenumbruch
If ( (PAGE_HEIGHT - PAGE_CURRENTHEIGHT - FOOTER_HEIGHT ) <= 350 )
PageBreak(TRUE,TRUE)
Endif -
> Stefan Schulz
> der Seitenumbruch kann auch mit der Anweisung SetAreaMin beeinflusst werden.
Das funktioniert doch nur in Tabellen, oder?
-
Das funktioniert doch nur in Tabellen, oder?
Nein auch in GraphicsText-Bereichen ist dies möglich. Das habe ich eben noch mal getestet. Es kann gut sein, dass es in früheren Versionen nur im Bereich der Tabellenpositionen ging.
Somit ist die Dokumentation an dieser Stelle nicht ganz korrekt. Wir werden den Beitrag überarbeiten.
Viele Fragen können Sie mittels unserer Online-Dokumentation klären: http://documentation.monkey-office.de/
Weitere Hilfe erhalten Sie über unser Supportcenter: https://prosaldo.zendesk.com/home
YouTube: http://t1p.de/ProSaldo
—Mit freundlichen Grüssen,
Stefan Schulz------------------------------------------------------------
ProSaldo GmbH, Ostrower Straße 14, 03046 CottbusTelefon: +49 355 866288-0
Telefax: +49 355 866288-29
E-Mail: mailto:info@monkey-office.de
Internet: http://www.monkey-office.deSitz d. Gesellschaft: Cottbus
Handelsregister: Amtsgericht Cottbus, HRB 6388 CB
Geschäftsführer: André Tracksdorf
------------------------------------------------------------ -
Getestet habe ich die Anweisung mit der aktuellen Programmversion (20.3.0) im Bereich der Ausgabe für den Grußtext:
' Grusstext
#BeginGraphicsText
SetArea(350, AREA_AUTOSIZE)
SetAreaMin(300)
#include "STYLE Arial 9, normal"
set hoehe to 50
set breite to LAYOUTWIDTH
set links1 to LAYOUTLEFT
if ( AUF_Grussformel <> "" )
DrawText(AUF_Grussformel, links1, hoehe, breite, 300)
else
if ( AUF_BearbeiterAngeben AND AUF_BearbeiterSignaturText <> "" )
DrawText(AUF_BearbeiterSignaturText, links1, hoehe, breite, 300)
endif
endifMindesthöhe wurde auf 3cm gesetzt. Ist der Platzbedarf für den Textblock größer oder gleich 3cm, so wird der Text vollständig auf die nächste Seite umgebrochen.
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.
Kommentare
8 Kommentare