XSL-FO -> PCL dynamically selecting printer paper bins / drawers / trays

M

Mark Wheadon

Hello,

We have a 'standard letters' type app that can produce the letter as
an XSL-FO document. We have used FOP to produce PDFs and are quite
impressed. We also need to be able to print the letter and also choose
paper from different printer bins. This is mostly so that headed paper
can be used for the first page and continuation for the rest.

Does anyone know if it is possible to define this with XSL-FO and if
FOP, RenderX or anything else can actually make it happen.

Thanks vary much.
Mark Wheadon.
 
N

Nikolai Grigoriev

Hi,

Mark said:
We have a 'standard letters' type app that can produce the letter as
an XSL-FO document. We have used FOP to produce PDFs and are quite
impressed. We also need to be able to print the letter and also choose
paper from different printer bins. This is mostly so that headed paper
can be used for the first page and continuation for the rest.

Does anyone know if it is possible to define this with XSL-FO and if
FOP, RenderX or anything else can actually make it happen.

RenderX XEP can ascribe arbitrary PostScript page device settings
to individual page masters: this gives a chance to switch trays, trigger
manual feed etc. This feature only works for PostScript output:
PDF format does not let you store printer-specific instructions in the
document.

Regards,
Nikolai Grigoriev
RenderX
 
M

Mark Wheadon

Nikolai Grigoriev said:
Hi,



RenderX XEP can ascribe arbitrary PostScript page device settings
to individual page masters: this gives a chance to switch trays, trigger
manual feed etc. This feature only works for PostScript output:
PDF format does not let you store printer-specific instructions in the
document.

Regards,
Nikolai Grigoriev
RenderX

Thanks Nik, is there any chance that you could give me a quick
example. I downloaded the XEP trial (I know it doesn't do PS) and have
had a look through the documentation briefly but can't see how I might
do what you suggest.

Thanks again. MAW.
 
N

Nikolai Grigoriev

Hi Mark,

Mark Wheadon said:
Thanks Nik, is there any chance that you could give me a quick
example. I downloaded the XEP trial (I know it doesn't do PS) and have
had a look through the documentation briefly but can't see how I might
do what you suggest.

Here's the relative specs:

http://xep.xattic.com/xep/doc/spec.html#Page_Device
http://xep.xattic.com/xep/doc/spec.pdf#Page_Device

Essentially, we have a very general processing instruction
that inserts arbitrary PostScript code as a value for an
entry in page device dictionary. This value my be set
for the whole document (in which case the PI should
be located at top level, before <fo:root>), or for an
individual page (in this case, the PI is placed inside
<fo:simple-page-master> for that page). Some examples:

<?xep-postscript-page-device /Duplex true?>
<fo:root xmlns:fo=....>
....

sets duplex mode for the document (and reverts back to the
original mode in the document trailer);

<fo:simple-page-master master-name="first-page">
<?xep-postscript-page-device /MediaColor (yellow)?>
<?xep-postscript-page-device /MediaType (coversheet)?>
<fo:region-body margin="1.5in 1in"/>
....
sets /MediaColor and /MediaType entries for padedevice
for pages _produced with this page-master_ (and reverts
them back to original values in the page trailer);

<?xep-postscript-page-device
/InputAttributes
<< 0 << /PageSize [612 1008] >>
1 << /PageSize [612 792]
/MediaType (letterhead)
/MatchAll true?>

specifies a whole /InputAttributes dictionary to tweak media selection
policies for the document.

A necessary admonition: the mechanism is extremely powerful
but requires care to use. Incorrect PostScript code in the PI may
ruin the whole output file. Allowed entries for setpagedevice
and currentpagedevice are printer-specific; please consult your
printer manual for a list of page device options and their values.
Please also note that the resulting code may not be portable
across printers.

Regards,
Nikolai Grigoriev
RenderX
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,756
Messages
2,569,540
Members
45,024
Latest member
ARDU_PROgrammER

Latest Threads

Top