Toolbox for WordPerfect
Macros, tips, and
templates for Corel®
WordPerfect® for Windows®
updated Dec 12, 2017
Main tips page | Browse tips
Print your letterhead page from one printer tray, and second 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
How WordPerfect 'talks' to your printer's trays and manual feed slot (i.e., the functions of WordPerfect's Page Setup dialog)
• The functions of WordPerfect's Page Setup dialog
• Page definitions and how they are used (and how to restore them)
• Notes and tips
Two-tray printing: Print the first page from one printer tray and the second and subsequent pages from another tray
Print all pages of the current document from the manual feed slot
Hiding Delay Codes (footnote)
¤ The menu choices below refer to the <WordPerfect> menu (right-click on the top menu bar for a choice of menu). If you use a <Microsoft Word> menu, the choices might be absent from your menu (but not from the program), or they might be found under another menu selection. See here for more.
¤ Are the procedures difficult? No, but it does take a little time to read about them and try them out. And several steps are optional. Bear in mind something Roy "lemoto" Lewis [Corel C_Tech] once said: "An explanation in words makes any activity seem more complex than it is in practice. To test this, write out instructions for boiling a kettle or putting a letter into an envelope. Or ride a bicycle."
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 get to via 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
(and how to restore them)
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 (selected in the File, Print dialog). These definitions are then stored in the local computer's Windows Registry.
When you open a new, blank document the document 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 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 specified number of pages.
Wherever they 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 takes effect for all pages 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):
[(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 will 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 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, 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. 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. 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, to compensate for this. (Sometimes an updated printer driver from the manufacturer's web site can solve the problem.)
• Is your printer "stuck" on 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" fixed this issue for them. 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.
• 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, Settings (or Edit Settings).
[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."
• 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." Also see Corel's support knowledge base, "Troubleshooting Printing Problems with WordPerfect," which offers specific solutions for various printing problems, including jammed print queues, offline printers, lack of synchronization with the printer, etc.
Two-tray printing: Print the first page from one printer tray and the second and subsequent pages from another tray
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 the letterhead sheet to print from your printer's default tray (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 a template or a macro.
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).
• Then, depending on your version of WordPerfect, click
- New [in WordPerfect 8], or
- Options, New [in WordPerfect 9], or
- Add [in WordPerfect 10 and later versions]
• 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.
Note: 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.
Note: Here is where you choose the specific tray you want to pull paper from (the Source). 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. 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 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 and later versions:] Set the "Show page size" to Current printer only.
• Verify the other settings, then click OK twice to return to the main WordPerfect document window.
• Decide whether to modify your default template (or other 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 Step 3 - Method A, or Step 3 - Method B below.
Step 3. - Method A: MODIFY A TEMPLATE [also see Method B alternative below]
• Click File, New..., and choose the template's name from the list. (Note that the default template for all new documents is listed 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.
☼ 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.
Step 3 - Method B: RECORD A MACRO [also see Method A alternative above]
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.
NOTE: 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.
- 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.
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.Tweaking the macro #2 - asking the user 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).
TipUsing the macro in a template:
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 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."
To copy this code into your WordPerfect program to create a working macro, see here.
The procedure used in the above macros -- i.e., using an explicit page definition with PaperSizeSelect for both the first page and 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:vCurrPrinter=PrinterSelectByName
from the manual feed slot
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
Here's a tip to let you "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.