Toolbox for WordPerfect
Macros, tips, and
templates for Corel®
WordPerfect® for Windows®
updated Aug 15, 2019
Main tips page | Browse tips
Print a letterhead page from one printer tray and subsequent pages (or envelopes) from another tray or slot
Related information:To set up a multi-page merge, see "Merging multiple-page letters using letterhead paper for page 1 and plain paper for subsequent pages. [Also see the macro method below.]
In other software programs you can control the tray source, ink color, and other features of your printer from File, Print. See "How to create new, customized copies of your favorite printer choices." But for WordPerfect, see the first topic in the next column.
Printer problems: If you still have problems printing to specific trays (after reading the information in the next column), perhaps there is a printer problem (including possible issues in the Print Settings or in the Windows Registry). See here.
I. How WordPerfect "talks" to your printer's trays and manual feed slot
II. Two-tray printing: Print the first page from one printer tray or slot and subsequent pages from another tray or slot
III. Print all pages of the current document from the manual feed slot
I. How WordPerfect 'talks' to your printer's trays and manual feed slot
□ The functions of WordPerfect's Page Setup dialog
Unlike with other software, the printer tray or manual feed slot that a page is printed from is specified in WordPerfect's File, Page Setup dialog (alternative: Format, Page, Page Setup) — not in the printer's Properties dialog (which you can access from WordPerfect's File, Print dialog).
By way of further explanation, here is a quote from Charles Rossiter, a Corel C_Tech (WPOffice2002-other newgroup, 06/02/03 — and still relevant today).
"... WordPerfect does not use the tray specified in the printer [Properties] settings; if it did, it would lose its ability to mix any number of page size/types within a single document, as almost all programs relying on the Windows printer driver are limited to one or, at most two, paper size/types in a single print job.
□ "Page definitions" and how they are used
WordPerfect's File, Page Setup dialog (alternative: Format, Page, Page Setup) produces these "page definitions" (or "paper definitions") — i.e., the physical paper sizes, label types, printer trays to use, etc. — for the currently selected printer (i.e., the one shown in the File, Print dialog).
These definitions are then stored in the local computer's Windows Registry (in the HKEY_CURRENT_USER\Software\Corel\PrintEngine\... registry key).
When you open a new, blank document (File, New) it will make use of the factory-default page definition (e.g., "Letter" or "A4") specified in the template on which the document is based (usually, this is the default template).
But you can create — and employ — as many new, custom page definitions as you need for different purposes, as indicated above and also as demonstrated in the example in the next section below.
New (i.e., non-factory-default) page definitions show up as [Paper Sz/Typ] format codes in the Reveal Codes window when you (or a macro) insert one or more of them into the document, such as when you choose legal size for your current task, or open a sheet of labels, or append an envelope to the document.
These codes are most often found at the top of the document or perhaps at the top of a specific page. But they could be placed inside a [Delay] code where they would take effect after the number of pages specified in that Delay code.
Wherever the codes are located, it is worth emphasizing that they set the page dimensions and the paper source (i.e., the printer tray or manual feed slot) to use.
Most often, this setting takes effect for all pages in the document from that point forward, but some page definitions might be set to take effect for just the current page.
□ Notes and tips
• To view the specific setup for your document click on File, Page Setup (or Format, Page, Page Setup). The Page Setup dialog appears:
[(WordPerfect version X8 shown.) Note that the currently selected printer's name appears at the top of the dialog (blurred out in these images).]
Next, choose (for example) the standard Letter page definition by clicking the name once with your mouse.
Then click the Edit button (or for some early program versions, click the Options button then click Edit, Both).
When the Edit Page Definition dialog opens (WordPerfect version X8 shown), you will see a Source drop list:
Click on the Source drop list. Normally this is set to "Default" or "Normal," but — depending on your specific printer — there can be other options available, such as Tray 1, Upper Tray, Manual Feed, etc.
This list is where you tell WordPerfect which printer tray (or slot) to use. You might need to experiment with these options and (possibly) with the printing adjustment settings on that dialog.
Click OK to save any changes -or- click Cancel to abandon any changes.
• Copying definitions:
You can always make a copy of the current page definition and modify it instead of modifying the default page definition or creating a new one from scratch (though the latter is very easy to do): Just use the Add (or New, or Options) button on the Page Setup dialog (above) to create a new page definition.
Then use that version (click either File, Page Setup or Format, Page, Page Setup) with any document that requires printing to a specific tray. See the "Two-tray printing" sections below for more information.
• Resetting definitions: In the File, Page Setup (or Format, Page, Page Setup) dialog (above), any listed (factory shipped) page definition can be changed back to its factory default state by choosing it in the list and clicking the Restore button [located just above the list of definitions].
• Envelope page definitions should use the appropriate tray for envelopes. You can verify this the same way, by editing their page definitions in the Page Setup dialog (above). This might be set to "Default" for most printers, but the Source's label might be different for your printer.
Related tip: If the printer prints an extra page after printing the envelope, it might be due to the printer's default bottom non-printing area. To compensate for this you can try adjusting page margins for the envelope definition in the Page Setup dialog, or try setting the Address Positions in the Format, Envelope dialog. (Sometimes an updated printer driver from the manufacturer's web site can solve the problem.)
• Is your printer "stuck" on using the manual tray (or slot)?
◦ [From a post by Roy ("lemoto") Lewis:]
"That glitch can occur [in some versions of WordPerfect] when Labels are chosen that have a whole-sheet size that matches e.g. Letter or A4. The page size selector stops at the first Paper Definition it finds that matches the whole-sheet size. ... This should restore proper behaviour[:] - please create a new definition (or edit an existing one) of the correct size and named to sort alphabetically before Avery. A leading underscore will do the job, e.g: _Letter." [See the previous Note above for making a new copy of the page definition.]
◦ Some users have reported that resetting the program's "print engine" (mentioned above under "page definitions") fixed this issue for them. This is done simply by renaming a Windows Registry folder (so you can restore it if needed); the program will then create a factory fresh version. See here for more.
• WordPerfect "remembers" the last printer used — but just for the current session if you have enabled [which is the program default] "Reformat documents for the WP default printer on open" in Tools, Settings, Environment and you are using a printer different from the one set in Windows as the default. Hence, if you have more than one printer you might need to select another printer prior to a new print job. [For more on that setting see here.]
• WordPerfect can "remember" custom print settings, too. Click File, Print, <select the printer>, then click the Settings button (or the Edit Settings button in recent versions).
From WPX5's Help:
"You can save print settings so you can retrieve them and apply them to other documents. Print settings are made up of printing properties such as the number of copies to print or printing text as graphics. You may require different print settings for different types of documents or printers. For example, you may use one for printing letters and another for printing envelopes. ..."
For more see WordPerfect's <F1> key, "Saving print settings."
Roy "Lemoto" Lewis made this comment (here) about this particular issue:
"... You can save Print settings:
File, Print, <select printer>.
Set all options as you wish them to be.
Click [Edit settings].
See that everything you wish to be saved is ticked (under Main Settings, everything except perhaps [ ]Printer)
In that Dialog you are not making any settings.
Rather, you are choosing which of the settings you made in the main Dialog are to be made the default.
• WordPerfect communicates page definitions and other information with the printer driver, which in turn communicates with the physical printer. This is why you must have at least a printer driver installed before WordPerfect can operate properly. WordPerfect makes heavier use of the printer driver than most other programs, so that it produces true screen rendering of your document ("WYSIWYG" — what you see is what you get).
Related tip: Some problems with page definitions and/or printer tray choices (see manual tray issues above) might be fixed by resetting the program's so-called "print engine". This is done by renaming a Windows Registry folder (thus you can restore it if needed) so that the program will create a factory fresh version. See here for more.
• For some information about common printer problems, see "Printer and fax formatting problems."
II. Two-tray printing: Print the first page from one printer tray or slot and subsequent pages from another tray or slot
There are several methods you can use to accomplish this from inside WordPerfect. The following two methods, modify your template or record a simple macro (including a user message), seem to be the easiest.
Assume you want a letterhead stationery sheet to print from your printer's default tray or manual feed slot (Tray#1) and the letter's second and subsequent sheets (if any) to print from another tray (Tray#2).
You first need to create a separate page definition for the non-letterhead tray (Tray#2) if it does not yet exist in WordPerfect.
Then, to automate things, you can use that definition in either a template or a macro.
Step 1 (of 3)
Create a new page definition for "second pages" that should be "pulled" from Tray#2. (If you already have a second page definition, skip this step.)
• First, be sure you have the desired printer selected in the File, Print dialog.
• Then click File, Page Setup (or Format, Page, Page Setup). The Page Setup dialog (image above) opens.
• Depending on your version of WordPerfect, click either -
○ Add [in WordPerfect 10-X9 and later versions], or
○ Options, New [in WordPerfect 9], or
○ New [in WordPerfect 8].
• In the Name field give the new page definition a new name (e.g., "Second pages," "Tray#2," etc.), and choose a Type (use "Standard" unless you use special paper) and Size.
When selecting paper that is not the standard size, select “User Defined Size” and enter in the Height and Width below the field. (You can also set a vertical and horizontal printing adjustment later, by editing the definition.)
• Click in the Source field and select the printer tray to use.
Here is where you choose the specific tray you want to pull paper from (the Source) for the second and subsequent pages (if any).
For ordinary ("one tray") print jobs, that's only necessary if you always want the paper to pull from that particular tray, or if your particular printer behaves better if a specific tray is selected in this field. [You might need to experiment with different choices.]
If your printer offers a "Default" source selection, and if that works for you, it's fine to leave it set that way.
Some printers have a "Manual Feed" choice or "Auto select" choice. Some printers are more finicky than others, but if your printer offers a default source and if that works well for you and your printer, it's fine to use.
[Thanks to 'CyndyZ' on WordPerfect Universe for this tip.]
• [WordPerfect 9 (c.1999) and later versions:] Set "Show page size for" to Current printer only.
• Verify the other settings, then click OK twice to return to the main WordPerfect document window.
Step 2 (of 3)
Decide if you want to either -
○ modify your template so that it will automatically use the new "second page" definition for all new documents based on that template, or
○ use a macro to enter these defintions whenever you need them.
Then choose either Method A or Method B below.
Note the methods are not mutually exclusive, so using Method B to create a macro might be useful with older (existing) documents that don't already have the definitions, or with specific documents that have different requirements (e.g., for special merges).
Step 3 (Two methods)
□ Method A: Modify a template [also see the Method B alternative below]
• Click File, New from Project, and choose the template's name from the list. Often this will be located in the Project category, "Custom WP Templates".
For two-tray printing — which generally is task-specific — most users probably will choose to modify an existing custom template rather than the default template. The location of that template's name in the list might be different from other custom templates on your computer, depending on how and where it was saved when it was created (or modified).
(FYI: The default template for all new documents is listed in the Project list under "Custom WP Templates," and is named "Create a blank document.")
• Click the Options button and choose Edit WP Template.
• The template opens for editing.
• Place the cursor at the top of the template's main editing screen (i.e., the body text area).
☼ If you wish to force the template to use a particular ("explicit") page defintion for page 1 (which is required for merging multi-page documents), you can click File, Page Setup (or Format, Page, Page Setup) and select the appropriate definition for the first page. There is no harm in using an explicit page definition for page 1 in normal documents as well as in merge forms.
☼ [Although not related to page definitions:] If you wish to force page numbering to always start with "1" in any document, even if the document is appended to another document that also uses page numbers, you can do so with a trick described here in reference to merges. Since you cannot insert a page number "1" code on page 1 of a document (WordPerfect will ignored your attempts since you are already on page 1), you have to first set the page numbers to another value inside the document's initial style code. Then you can add a new page number value code ("1") on page 1.
• Now you need to insert a special delay code to tell WordPerfect to start a new page definition on the next page (if there is one).
- Click on Format, Page, Delay Codes. Accept the number of pages to skip (i.e., delay) as "1," then click OK. A new window entitled "Define Delay Codes" opens. [For more information on using delay codes, see the page here or see WordPerfect's online Help (F1 key).]
- Click the Page Size button on the property bar (or click File, Page Setup or Format, Page, Page Setup). Choose the new second page definition that you created in Step 1 above. Click on Apply, then OK.
- Back in the Define Delay Codes window, you can make other formatting changes that will take effect on the second and subsequent pages of a doument based on this template, such as changing margins or changing or adding headers or footers. [See the Note and Tip below.]
- When finished, click Close to return to the template.
• Click File, Close and answer "Yes" to "Save changes...?" to close the template and return to normal editing.
☼ When you start a new letter based on this template, the delay code will activate if you have two or more pages in the document.
☼ Later, if you want to modify the page settings for the second page defintion, simply edit the template, open Reveal Codes, and double-click the [Delay: 1] code to open the Define Delay Codes window.
¤ For users of WordPerfect 10 and later versions: To set all margins back to 1.0" in the Define Delay Codes window, set at least one margin to some other value, then change the margins back to 1.0". This is a workaround for a small bug in these versions.
¤ You can hide the [Delay] code inside the template's initial style. This prevents it from being "pushed down" by a user if the cursor is above the [Delay] code in the document — something that is easy to do if Reveal Codes is not used. See Footnote 1 below.
■ Recording the basic macro
• To record a macro to place the "second page" definition code in the current document, open any sample document to work in temporarily.
Tip: You may want to decide if secondary pages will need to have different formatting, margin settings, etc., and jot down the types of formatting you wish to apply to them while you record the macro.
• Click on Tools, Macro, Record. Give the new macro a name (e.g., "Second Pages") and click Record.
• Begin by putting the cursor at the top of the document in the main editing screen (i.e., at the top of the body text area).
If you wish to force the template to use a particular ("explicit") page defintion for page 1 (which is required for merging multi-page documents), you can click File, Page Setup (or Format, Page, Page Setup) and select the appropriate definition for the first page. (Alternatively, you can edit the macro with Tools, Macro, Edit and insert the appropriate PaperSizeSelect command in it immediately after the PosDocTop command.)
There is no harm in using an explicit page definition for page 1 in normal documents as well as in merge form documents.
• Now you will need to insert a delay code to tell WordPerfect to start a new page definition on the next page. This is needed to account for documents that might have two or more pages. (No harm is done if the document has only one page.)
- Click on Format, Page, Delay Codes. Accept the number of pages to skip (i.e., delay) as "1," then click OK. A new window entitled "Define Delay Codes" opens. [Tip: For more information on using delay codes, see the page here or see WordPerfect's online Help (F1 key).]
- Click the Page Size button on the property bar (or click either File, Page Setup or Format, Page, Page Setup). Choose the new second page definition that you created in Step 1 above. You can choose a new page orientation (Portrait or Landscape) if desired.
- Click on OK.
You should now be back in the Define Delay Codes window, where you can change margins or make other formatting changes that will take effect on the second and subsequent pages of a doument based on this template, such as changing margins or changing or adding headers or footers. (See the Note and Tip in Method A above, which also apply to this macro recording method.)
- Click the Close button on the property bar to exit from the Define Delayed Codes window.
• Optional: If you want to always print two copies, use File, Print and specify two copies, then Print the document to record these commands in the macro. Close the Print dialog after printing if it is still open.
• Click the "Stop macro..." button (it has a solid black square icon [■] or it may have an audiocassette icon) at the left side of the Macro Toolbar. (You can also stop it by clicking Tools, Macro, Record once again.)
This ends the recording, and since you already named the macro before the recording started it automatically saves it to disk.
• Close the sample document without saving any changes, re-open it, and test the macro. It should insert a [Delay: 1] code at the top (and a [Paper Sz/Typ] code, if you chose to set an explicit definition for page 1).
If the sample document has more than one page, the second and subsequent pages should print to the other printer tray.
☼ Make it easy to use: You can assign the macro to a toolbar button or keystroke for easy access.
☼ Using it with existing documents: From now on, if you need to print an existing multi-page letter to different trays and it doesn't have these codes in it, you can play the macro, print the letter, then remove the Delay code if desired (or close the letter without saving the Delay code). Playing the macro in a new document will, of course, insert the Delay code, which can be saved along with the new letter's contents.
☼ Once you have used it in a document: At any later time, you can double-click the [Delay] code in Reveal Codes to open the Define Delayed Codes window and modify the second page formatting, such as adding or changing headers or footers. (See the Note and Tip in Method A above, which also apply to this macro recording method.)
■ Tweaking the macro #1 (basic revisions)
The recorded macro can be edited (like any other WordPerfect document) and modified to add a defintion for Page 1 to force a particular or "explicit" page definition for the first page, add a Print command, and (optionally) undo the insertion of the Delay code.
Here's an example of such a recorded macro, but with -
• extraneous commands and command parameter labels removed for clarity (later versions of WordPerfect add some codes that may not be needed);
• a PaperSizeSelect code deliberately inserted for page 1 (the "Letter1" size);
• an optional command to print 2 copies; and
• an optional command to Undo the codes that were added to the document, in case you don't need or want them in future print jobs.
■ Tweaking the macro #2 (asking for the number of copies at print time)
With the simple addition of a "code snippet" (here, shown in dark red), you can now -
• add a page definition for page 1;
• add a page definition for page 2 (if there is a page 2) and all following pages;
• pop a message that asks the user for the number of documents to print (the message requires that the user enter a number), and reminds them to add the proper paper to each tray;
• prints the desired number of copies of the full document; and
• optionally uses Edit, Undo to remove the page definitions from the document (if you don't want this optional step, simply remove the Undo command).
Tip: You can even use such a macro in a template that automatically plays the macro only at print time. The macro is then called a template macro. See below.
Important: You will need to replace "Letter1" and "Letter2" with the actual names of two page definitions on your system as shown in File, Page Setup (or Format, Page, Page Setup). Be sure to retain the double quote marks.
In addition to using the above macro as a "stand alone" (file) macro, you can associate it with the PRE PRINT template trigger inside a custom template. Then, each time you go to print the document (and as long as the template itself is still on your system), the template macro will fire up and display the message, etc.
If you need help creating such template macros or associating template macros with trigger events, see "Automating WordPerfect Templates" on the Tips page.
For more on template trigger events, see "'Trigger' a macro from inside a template to play automatically at specific times."
■ Merge considerations
The procedure used in the above macros — i.e., using an explicit page definition with PaperSizeSelect for both the first page and for all secondary pages — is needed to merge multi-page letters using two trays.
If you plan on using the macro to set up a merge form so that it will pull paper from the appropriate printer tray or bin, see "Merging multiple-page letters using letterhead paper for page 1 and plain paper for subsequent pages."
■ How some documents might be affected by these macros
If you open an existing document and immediately play one of these macros, it will insert page definition and delay codes. This is by design.
However, even it you retain the macro command to Undo these code insertions, as far as WordPerfect is concerned the document will have been modified, albeit harmlessly. You will see a standard message about saving changes when you close the document — even if you think you made no changes. If you have really not made any other changes you can close the document without saving it.
This is something to inform all users about, so they know why the document was "mysteriously modified."
As noted previously, WordPerfect "remembers" the last printer used for the current session depending on some user settings (see above). So you should either deliberately select the desired printer before playing a macro such as those above, or include macro commands that set the printer and (optionally) return the selected printer to the user's preference. The macro command, PrinterSelectByName, can be used for this (note that the name must be exactly the same, including case, as shown in the File, Printer dialog).
Tip: Klaus Pfeiffer's macro, TempPrinter.wcm, does this trick. See his post (and download the macro) on the WordPerfect Universe Code Snippets forum, here. Klaus uses the PrinterSelectByName command to first store the name of the current printer (presumably, the user's preferred printer), and then restores the printer selection to that printer after the macro has printed something:
If you have a stack of blank paper in your printer's default tray, and you try to feed an entire document though the manual feed slot, page by page, you'll probably find that you have to be quick about feeding paper into the manual slot or else the printer will grab the next page from the default tray.
To solve this minor problem, just create a new page definition that tells your printer to use manual feed for all pages. Then insert the new definition at the top of the document with File, Page Setup or Format, Page, Page Setup (or use a macro such as described above).
Here's how to create a page definition to print all pages from the manual feed slot.
With your printer selected in File, Print -
• Click on File, Page Setup (or Format, Page, Page Setup).Use this new page definition at the very top of the document you want to print via the manual feed slot by clicking File, Page Setup (or Format, Page, Page Setup), choose "Letter-Manual" and click OK. A new [Paper Sz/Typ] code will appear in Reveal Codes to control printing for the current document.
• Select the normal definition (e.g., "Letter") to make a copy of it.
• Click the "Add" button (or the "New" button in WP8, or "Options, New" in WP9).
• Give the new definition a name (e.g., Letter-Manual).
• Change the Type of paper stock, if necessary.
• In the Source list, select Manual Feed.
• Click OK.
Making copies of a page setup ("page definition") is a handy way to select just those features you need during a particular print run.
See also the top of this page for more information.
Footnote 1: Hiding Delay Codes
[Continued from above...]
Here's how to "hide" a [Delay] code so it is less likely to be moved or deleted accidentally:
¤ Just remember to look inside the initial style code if you need to revise or delete the [Delay] code!
Related note: You cannot use Find & Replace (or the macro equivalent, SearchString) to search inside [Delay] codes, [Style] codes, or text variables (a form of Style). These are limitations of the program, at least for recent versions of it. You will have to edit the [Delay] or [Style] code by double-clicking on the code in Reveal Codes to edit it.
¤ You can use more than one Delay code in the document's initial style.
¤ Caution: Do not try to create a [Delay] code for a Header, Footer, or Watermark directly inside the document's (or template's) initial style's Styles Editor by using the menu in the Styles Editor dialog, or the program may "hang" on you under some conditions. Instead, either cut the [Delay] code from the document and paste into the Style Editor as explained above, or copy an existing [Delay] code from another document and paste it into the Styles Editor.
¤ Macro writers: You can easily incorporate formatting codes inside a document's (or template's) initial style with a macro. See here for an example.