RML Example 55 : Condpagebreak
RML Example 55 : Condpagebreak
RML Example 55 : Condpagebreak
RML (Report Markup Language) is ReportLab's own language for specifying the appearance of a printed page, which is converted into PDF by the utility rml2pdf.
These RML samples showcase techniques and features for generating various types of ouput and are distributed within our commercial package as test cases. Each should be self explanatory and stand alone.
KeepWithNext
The keepWithNext attribute for the
paraStyle tag tells the paragraph, whether it should
always be kept together with the next paragraph or not. This can be useful for
keeping headings together with the following paragraph. The default value is 0.
The code looks as follows:
]]>
An example with keepWithNext="0". There is a
spacer underneath.
This is paragraph 1 with the
keepWithNext="0" attribute.
This is paragraph 2.
An example with keepWithNext="1". There is a
spacer underneath
This is paragraph 1, whose style has the
keepWithNext="1" attribute.
This is paragraph 2.
condPageBreak
The <condPageBreak/> tag will move to
the next page if there is not enough space on the page. The length required to
stay on the same page is give by the attribute height
which takes a length in the allowed measurements.
Blah blah blah blah blah blah Lieutenant
Commander Data Harry Kim blah
blah blah blah blah blah blah blah blah blah blah blah blah. Blah cloaking device
blah blah Lieutenant Commander Data blah Dr. Pulaski blah blah blah USS Enterprise
blah blah blah emergency transponder. Blah blah Ferrengi blah blah blah blah blah
blah blah blah blah blah blah. Blah blah blah blah blah Tom Paris Archer IV blah blah
Archer IV blah blah Soyuz class science vessel blah Betazoid blah blah blah blah
warship blah blah blah blah blah. Blah blah blah Lieutenant Worf blah blah Lieutenant
Worf Vulcan blah blah blah. Blah blah blah blah blah blah blah Tom Paris blah William
Riker blah blah blah blah blah blah blah Klingon blah Admiral Nakamura blah blah blah
blah blah. Blah blah blah blah blah blah blah Romulan ale blah blah blah asteroid
field blah blah blah blah blah blah blah blah. Blah blah blah blah blah Memory Alpha
blah blah blah blah blah blah blah. Blah blah blah Captain Picard blah blah Romulan
blah blah blah blah blah Admiral Nakamura blah blah. Blah blah blah blah blah blah
blah Starfleet Academy blah blah USS Intrepid blah blah blah blah blah blah blah blah
holodeck blah blah blah blah. Blah blah blah blah blah ...with a phaser! blah blah
blah blah blah Romulan Vulcan blah blah blah. Blah blah quantum flux blah blah blah
blah quantum flux Chief O'Brian blah blah blah blah blah blah blah blah blah. Blah
Counsellor Troi blah blah blah blah blah blah USS Intrepid blah blah blah blah blah
Captain Janeway blah asteroid field blah IKV Pagh blah blah. Blah blah blah blah blah
blah Betazoid blah blah blah blah blah IKV Pagh blah blah Captain Janeway blah blah
IKV Pagh. Blah photon torpedo blah blah blah blah blah blah photon torpedo blah blah
blah blah blah blah blah blah blah Ferrengi blah blah blah blah blah. Blah blah blah
blah United Federation of Planets blah blah blah blah blah blah blah Deep Space Nine
blah blah blah blah blah blah blah blah blah. Blah blah "Intruder alert!" Romulan
blah blah blah blah blah blah blah blah blah. Blah blah blah shuttlecraft Ferrengi
Vulcan blah blah blah blah blah blah Galaxy class vessel blah blah blah blah blah
blah blah. Blah turbolift blah blah scout ship cruiser blah quantum flux blah blah
blah blah blah blah blah blah blah blah blah blah blah William Riker blah blah blah.
Blah blah blah blah blah battlecruiser blah blah blah blah blah blah blah blah Dr.
Pulaski Pacifica blah blah blah blah blah blah turbolift. Blah blah blah Benzite blah
Bajoran blah blah "Borg Invasion imminent!" blah blah blah blah blah blah blah blah
blood wine. Blah emergency transponder blah Starfleet blah blah blah blah blah blah
blah blah blah blah blah blah blah blah blah shuttle bay 2 blah blah blah. Blah blah
blah blah blah blah blah blah distress signal blah spacedock blah Irumodic Syndrome
blah Romulan ale blah blah blah blah blah "All hands abandon ship! This is not a
drill!" blah blah blah blah blah.
The conditional page break comes in here and
is set for 3 inches.
This is on the next page since there was less than three inches
till the end of the page.
Blah blah blah blah blah blah Lieutenant
Commander Data Harry Kim blah
blah blah blah blah blah blah blah blah blah blah blah blah. Blah cloaking device
blah blah Lieutenant Commander Data blah Dr. Pulaski blah blah blah USS Enterprise
blah blah blah emergency transponder. Blah blah Ferrengi blah blah blah blah blah
blah blah blah blah blah blah. Blah blah blah blah blah Tom Paris Archer IV blah blah
Archer IV blah blah Soyuz class science vessel blah Betazoid blah blah blah blah
warship blah blah blah blah blah. Blah blah blah Lieutenant Worf blah blah Lieutenant
Worf Vulcan blah blah blah. Blah blah blah blah blah blah blah Tom Paris blah William
Riker blah blah blah blah blah blah blah Klingon blah Admiral Nakamura blah blah blah
blah blah. Blah blah blah blah blah blah blah Romulan ale blah blah blah asteroid
field blah blah blah blah blah blah blah blah. Blah blah blah blah blah Memory Alpha
blah blah blah blah blah blah blah. Blah blah blah Captain Picard blah blah Romulan
blah blah blah blah blah Admiral Nakamura blah blah. Blah blah blah blah blah blah
blah Starfleet Academy blah blah USS Intrepid blah blah blah blah blah blah blah blah
holodeck blah blah blah blah. Blah blah blah blah blah ...with a phaser! blah blah
blah blah blah Romulan Vulcan blah blah blah. Blah blah quantum flux blah blah blah
blah quantum flux Chief O'Brian blah blah blah blah blah blah blah blah blah. Blah
Counsellor Troi blah blah blah blah blah blah USS Intrepid blah blah blah blah blah
Captain Janeway blah asteroid field blah IKV Pagh blah blah. Blah blah blah blah blah
blah Betazoid blah blah blah blah blah IKV Pagh blah blah Captain Janeway blah blah
IKV Pagh. Blah photon torpedo blah blah blah blah blah blah photon torpedo blah blah
blah blah blah blah blah blah blah Ferrengi blah blah blah blah blah. Blah blah blah
blah United Federation of Planets blah blah blah blah blah blah blah Deep Space Nine
blah blah blah blah blah blah blah blah blah. Blah blah "Intruder alert!" Romulan
blah blah blah blah blah blah blah blah blah. Blah blah blah shuttlecraft Ferrengi
Vulcan blah blah blah blah blah blah Galaxy class vessel blah blah blah blah blah
blah blah. Blah turbolift blah blah scout ship cruiser blah quantum flux blah blah
blah blah blah blah blah blah blah blah blah blah blah William Riker blah blah blah.
Blah blah blah blah blah battlecruiser blah blah blah blah blah blah blah blah Dr.
Pulaski Pacifica blah blah blah blah blah blah turbolift. Blah blah blah Benzite blah
Bajoran blah blah "Borg Invasion imminent!" blah blah blah blah blah blah blah blah
blood wine. Blah emergency transponder blah Starfleet blah blah blah blah blah blah
blah blah blah blah blah blah blah blah blah shuttle bay 2 blah blah blah. Blah blah
blah blah blah blah blah blah distress signal blah spacedock blah Irumodic Syndrome
blah Romulan ale blah blah blah blah blah "All hands abandon ship! This is not a
drill!" blah blah blah blah blah.
The conditional page break comes in here
and is set for 3 inches.
This is at the bottom of the page since there are more than 3in
remaining.
frameBreakBefore and pageBreakBefore
The frameBreakBefore and pageBeforeBreak are both attributes of the <paraStyle> tag.
The frameBreakBefore attribute causes
the new paragraph to go into the next frame, even if there is still space in the
current frame. The default value is 0.
The pageBreakBefore attribute causes the
new paragraph to go into the next page, even if there is still space in the current
frame, or if there are other frames remaining on the page. The default value is 0.
This is an example of frameBreakBefore.
The next paragraph will be in a new frame.
This paragraph is in a new frame, since its style has the attribute
frameBreakBefore="1"
This is an example of pageBreakBefore.
The next paragraph will be on a new page.
This paragraph is on a new page. It missed out the frame in
the lower right corner of the last page, since its style has pageBreakBefore="1"
allowWidows
The allowWidows attribute, for the <paraStyle> tag, allows the
paragraph to have a widow, a line of text, separated from the rest of the paragraph,
at the end. The default value for allowWidows is 1.
This is an example of allowWidows="1"
Blah blah blah blah SQL blah blah blah blah pizza
blah blah blah blah TeX blah blah blah blah blah. Blah Intercal blah blah blah blah
blah blah TeX OS/2 TFT display blah Linux blah blah blah blah crash! blah blah Sun
Microsystems blah Logo blah blah. Blah blah blah blah blah blah blah blah blah blah
VB Tcl/Tk Fortran blah blah blah awk blah blah blah. Blah blah blah blah blah blah
blah blah blah blah blah blah PGP TCP/IP blah blah blah. Blah cgi Modula-3 SQL blah
blah blah Delphi blah LISP blah BETA mailing lists blah. Blah blah blah blah
pepperoni pizza blah blah blah blah blah blah blah blah blah blah blah blah blah blah
monitor blah. Blah blah blah blah blah blah blah blah blah parallel languages blah
blah blah blah blah blah blah blah BEER! blah blah. Blah blah beer blah blah OpenGL
monitor blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah
blah "illiterate programming" blah blah C: drive. Blah blah blah.
This example has a widow (the line above).
This is an example of allowWidows="0"
Blah blah blah blah SQL blah blah blah blah
pizza
blah blah blah blah TeX blah blah blah blah blah. Blah Intercal blah blah blah blah
blah blah TeX OS/2 TFT display blah Linux blah blah blah blah crash! blah blah Sun
Microsystems blah Logo blah blah. Blah blah blah blah blah blah blah blah blah blah
VB Tcl/Tk Fortran blah blah blah awk blah blah blah. Blah blah blah blah blah blah
blah blah blah blah blah blah PGP TCP/IP blah blah blah. Blah cgi Modula-3 SQL blah
blah blah Delphi blah LISP blah BETA mailing lists blah. Blah blah blah blah
pepperoni pizza blah blah blah blah blah blah blah blah blah blah blah blah blah blah
monitor blah. Blah blah blah blah blah blah blah blah blah parallel languages blah
blah blah blah blah blah blah blah BEER! blah blah. Blah blah beer blah blah OpenGL
monitor blah blah blah blah. Blah blah blah blah blah blah blah blah blah blah blah
blah "illiterate programming" blah blah C: drive. Blah blah blah.
This example does not have a widow, since
another line has been brought with it.
allowOrphans
The allowOrphans attribute allows the
paragraph to have an orphan, a line of text, left in the original frame, separated
from the rest of the paragraph. The default value is for this attribute is 0.
This is an example of allowOrphans="0"
There is no orphan below.
Blah blah blah blah SQL blah blah blah blah pizza blah blah blah
blah TeX blah blah blah blah blah. Blah Intercal blah blah blah blah blah blah TeX
OS/2 TFT display blah Linux blah blah blah blah crash! blah blah Sun Microsystems
Logo blah blah. Blah blah blah blah blah blah blah blah blah blah VB Tcl/Tk Fortran
blah blah blah awk blah blah blah. Blah blah blah blah blah blah blah blah blah blah
blah blah PGP TCP/IP blah blah blah. Blah cgi Modula-3 SQL blah blah blah Delphi blah
LISP blah BETA mailing lists blah. Blah blah blah blah pepperoni pizza blah blah blah
blah blah blah blah blah blah blah blah blah blah blah monitor blah. Blah blah blah
blah blah blah blah blah blah parallel languages blah blah blah blah blah blah blah
blah BEER! blah blah. Blah blah beer blah blah OpenGL monitor blah blah blah blah.
Blah blah Phys blah blah blah blah blah blah blah blah blah "illiterate programming"
blah blah C: drive.
This is an example of allowOrphans="1"
There is an orphan below.
Blah blah blah blah SQL blah blah blah blah pizza blah blah blah blah
TeX blah blah blah blah blah. Blah Intercal blah blah blah blah blah blah TeX OS/2
TFT display blah Linux blah blah blah blah crash! blah blah Sun Microsystems blah
Logo blah blah. Blah blah blah blah blah blah blah blah blah blah VB Tcl/Tk Fortran
blah blah blah awk blah blah blah. Blah blah blah blah blah blah blah blah blah blah
blah blah PGP TCP/IP blah blah blah. Blah cgi Modula-3 SQL blah blah blah Delphi blah
LISP blah BETA mailing lists blah. Blah blah blah blah pepperoni pizza blah blah blah
blah blah blah blah blah blah blah blah blah blah blah monitor blah. Blah blah blah
blah blah blah blah blah blah parallel languages blah blah blah blah blah blah blah
blah BEER! blah blah. Blah blah beer blah blah OpenGL monitor blah blah blah blah.
Blah blah Phys blah blah blah blah blah blah blah blah blah "illiterate programming"
blah blah C: drive.
endDots
The endDots attribute fills in the rest of the last line of the
paragraph with the characters given for the attribute.
This paragraph should have dots following it until the end of the line.
This paragraph should have the characters "123" following it until the end of the
line.