This emulation emulates most of the Prescribe commands from a Kyocera printer. The emulation can switch between ASCII, Prescribe and PCL, but not other PDL's like Proprinter, Epson, KPDL or PCL6. If your jobs are not 100% correct converted to PCL/PDF or printed on your PCL printer, then please send your captured data stream to
ELP offers those emulation settings: Configuration Tab - Rule assistant - check box Prescribe Emulation
Menu option | ini-file key | Description |
Positioning Horizontal X offset | Pre_YMove Pre_XMove_Landscape |
The definition for the horizontal origin of the portrait and landscape coordinate system. Values can be negative. If both landscape values are 0 the portrait setting is used. |
Positioning Vertical Y offset | Pre_XMove Pre_YMove_Landscape |
The definition for the vertical origin of the portrait and landscape coordinate system. Values can be negative. If both landscape values are 0 the portrait setting is used |
Scaling Horizontal factor | Pre_XScale | Sometimes Matrix printers have wider horizontal printing capabilities. It is recommended to set, if possible, the printer to A4 wide printing. And if it is still not enough you may scale it down until all fits on the paper. Depending on the printer, you may set in their menus the option wide printing on and off. We suggest to use always wide printing ON. Especially for landscape printing, it could be that an YMove value needs to be defined. |
Scaling Vertical factor | Pre_YScale | Usually Matrix paper is longer then A4. You may scale the PCL output down until all fits on the paper. |
PCL Init-Sequences | Pre_Init | The printer normally can help with the front panel to set the needed values. Like default page size, portrait, landscape, start-up font etc. Isn't it much saver to let this be defined by the emulation? Input can make use of the hex notation. If the key is NOT defined, ELP does use its default initialization. To avoid that simply define a sequence, which does nothing. e.g.: \x1B%-12345X@PJL ENTER LANGUAGE=PCL\x0A |
Edit | - | An editor for the minimum recommended PCL Init-Sequences |
Initialisation at first !R! | Pre_Init_at_first_!r! | In rare cases you may need to set some new initialization sequences at the first time, your data stream switches to prescribe. |
Edit | - | An editor for the minimum recommended PCL Init-Sequences |
Font conversion Swiss | Pre_Swiss | Defines the PCL escape sequence T font parameter, which is used for Prescribes Swiss font selection which is Helvetica. This is used for compatibility for printers having no PCL Helvetica and Times Roman fonts. In that case, change Swiss to 4148 (Univers) or 16602 (Arial) |
Font conversion Dutch | Pre_Dutch | Same as above but Dutch to 4101 (CG Times) or 16901 (Times New Roman). |
Symbol set | Pre_SymbolSet | Enter any startup symbol set number, like 14 -> ISO Latin 1, or 241 -> IBM PC8, see the PCL or Prescribe technical reference manual for further information. You may also use FRPO parameter U6 and U7. |
7-Bit symbol set | PRE_7BitUpperSymbolSet | Enter a symbol set sequence, which is used in 7bit Prescribe symbol sets for characters above ASCII 127. |
Store font definition | Pre_StoreFonts | Stores the font definitions of the GENF command in an external file in order to make it available for the next jobs, as in the same matter as the printer would have stored them in his memory. |
Compress fonts by sizing | Pre_Perform_Page_Commands | If font compression is NOT turned on, every compression definition in the Prescribe SFNT command is set to fixed 30%. Is the key turned on, the requested font size is multiplied with the compression factor. |
Ignore bottom margin | Pre_IgnoreBottomMargin | Turned ON, the Prescribe emulation of ELP ignores any set bottom margin. |
Perform page commands | Pre_PERFORM_PAGE_COMMANDS | Turned ON, ELP interprets the Prescribe SPL command (set Page Length), otherwise the command is ignored. |
Dedicate FRPO to each Queue | Pre_QueueDedicatedFPROFile | Instead of using one FRPO (file FRPOFILE.VAR in the Workpath folder) setting for all printers, the Prescribe configuration can be nailed down to a single printer (file FRPOFILE_<printername>.VAR) |
CASS Conversion | Pre_CASS0 to Pre_CASS4 |
Enter the media type for the paper tray. See manual for possible values. Alternatively the mapping can be realized with the key ELP_COMMAND. You may add after the command a cursor positioning sequence. You may define more than just the for by entering the key by hand into the ini file. |
PSRC Conversion | Pre_PSRC0 to 7 Pre_PSRC0 99 |
Enter the media type for the paper tray. See manual for possible values. As an alternative the mapping can be made with the key ELP_COMMAND. You may add after the command a cursor positioning sequence You may define more than just the for by entering the key by hand into the ini file. |
FTMD | Pre_FTMD | Start-up Value of the FTMD command. Defines the CR-LF handling, even when fonts are selected. See Prescribe Manual for further details |
Resolution UOM | Pre_Init_UOM | Default value of the UOM Parameter, possible values: 96, 100, 120, 144, 150, 160, 180, 200, 255, 240, 288, 300, 360, 400, 450, 480, 600, 720, 800, 900, 1200, 1440, 1800, 2400, 3600, 7200 |
Default units | Pre_Init_Unit | Start-up value for the Prescribe UNIT command. I (Default without key) Inch; C Centimeter; P Point; D Pixel |
Font ID at startup | Pre_DefaultFontNumber | Default ELP uses the font with ID 8 which is Prestige in 12 cpi. With that key you may set any other font at startup and in the RES command. |
Additional ini-File keys which are not selectable in the user interface
Prescribe | If turned ON, ELP's Prescribe emulation will turn convert as much as implemented all Prescribe commands into PCL code, especially all Bar code commands. Settings need to be defined in the section PRESCRIBE |
Pre_AddBlankBetweenTwoCallVariables | When set to ON it will insert a blank between two Prescribe CALL variables. Default value: OFF |
Pre_DONTREPLACEWRONGFSETVALUES | Turned ON, all parameters of the Prescribe command FSET are interpreted exactly the way they come. Otherwise ELP might adjust invalid values to a default value. E.g. "FSET 1p1s1b4148T;": the typeface 4148 does not support the bold parameter 1b. So it is replaced with a default: 0b. To avoid such replacements, use the key PRE_DONTREPLACEWRONGFSETVALUES=ON. |
Pre_EraseAll | Turned ON, all Prescribe commands will be erased form the data stream. So a conversion is not done. |
Pre_FormFeedMode | Once turned on Form Feeds within prescribe data stream are printed, by default between !R! and EXIT; this character is illegal and there for waved. |
Pre_HP_OZ_HMI_Mode | In case the space sign width of a proportional font is set by the Prescribe SFA command, and it runs 50% short, then this HP internal printer incompatibility fix can be turned off. |
Pre_IgnoreSROSize | When set to ON ELP will not put the bitmap size to the PCL output. Default value: OFF. |
Pre_PushCursorFix | Error recovery if in macros are more SPC then RPP commands. Once turned ON, all open Push cursor will be popped after returning from the first CALL command. Note: This may cause wrong output. |
Pre_DELM_StopsMacroRecording | Due to a customer bug, if turned on, and DELM command will stop the recording within a macro recording. The default value is OFF. |
Pre_DontStoreMacros | Once all used macros are ALWAYS(!) defined in each single the data stream, there is no need to store them on the hard disk or printer flash. Saves some speed but a lot of flash write cycles. |
Pre_TopMargin | Default printer top unprintable margin. Can be set also with FRPO parameters A1 or A2, influences MZP and other Prescribe commands. |
Pre_TopMarginAMCR | Default top unprintable margin in decidots (720 units per inch or 2.41 cm) when calling overlays with the AMCR command |
Pre_LeftMargin | Default printer left unprintable margin. |
Pre_LeftMarginAMCR | Default left unprintable margin in decidots (720 units per inch or 2.41 cm) when calling overlays with the AMCR command |
Pre_Staple1 | Prescribe staple command 1, which is converted using this key into a stapling command for your output device. See ELP_Commmand T#; or open the file stapling.ini; |
Pre_Staple2 | Prescribe staple command 2, which is converted using this key into a stapling command for your output device. See ELP_Commmand T#; or open the file stapling.ini; |
Pre_Staple3 | Prescribe staple command 3, which is converted using this key into a stapling command for your output device. See ELP_Commmand T#; or open the file stapling.ini; |
Pre_Staple50 | Prescribe staple command 50, which is converted using this key into a stapling command for your output device. See ELP_Commmand T#; or open the file stapling.ini; |
Pre_Staple51 | Prescribe staple command 51, which is converted using this key into a stapling command for your output device. See ELP_Commmand T#; or open the file stapling.ini; |
Pre_Staple52 | Prescribe staple command 52, which is converted using this key into a stapling command for your output device. See ELP_Commmand T#; or open the file stapling.ini; |
Pre_Staple53 | Prescribe staple command 53, which is converted using this key into a stapling command for your output device. See ELP_Commmand T#; or open the file stapling.ini; |
Pre_Staple54 | Prescribe staple command 54, which is converted using this key into a stapling command for your output device. See ELP_Commmand T#; or open the file stapling.ini; |
Pre_TextEndsAtLineEnd | Bug fixing: A client does not have the Text-End-Character and also not the semicolon at the end of a TEXT line. At next CR or LF character, the text is automatically terminated |
Pre_SFNTMap | Section name which defines the font name replacement for the SFNT command. The content of the new section lists one font replacement per line: Fontname=Typefacenumber,Fixed,Italic,Bold,FixedSymSet Example: [Global] Pre_SFNTMap=CustomerMappings [CustomerMappings] MetaPlusLF-Regular=10100, 1, 0, 0, 0 MetaPlusLF-Bold=10100,1, 0, 3, 0 |
Additional information:
The emulation needs to be turned on using the key Prescribe in one of those rules: GLOBAL, Printer name, User Name, Port name or Driver Name (default is GLOBAL)
All ELP command keys for the Prescribe emulation start with PRE_... There are quite some more keys available, then the menu above provides. Most of them are only shown in the ini file editor, when the rule/section PRESCRIBE is marked. They are for example related to paper tray handling and print margins.
Any defined macro (MCRO command) is stored by ELP under the name of the arriving queue into the file system of ELP. The full file name is Prescribe_macro_<printername>_<macroname>. The destination folder is the Workpath folder which usually is the c:\ProgramData\WELP.
Like the font definitions above, they will be saved like in the printer's memory, and can be used by any following data stream.
If Prescribe calls a macro ELP checks:
- Its memory if the macro is already loaded by the MCRO command or by earlier usage.
- if a macro file exists in the working directory under the print queue name
- if a macro file exists in the working directory without the print queue name. ELP does not generate those files. If all printers do use the same Prescribe macros then we recommend to generate them once and rename them by removing the queue name.
On start-up, ELP will first read the definitions in the ELP configuration file. But after that, the system looks for the content the file FRPOFILE.VAR or FRPOFILE_<printername>.VAR, which may have been set before, using Prescribes FRPO parameters. If you initialize the printer with FRPO parameters, your need to do that with every activated queue as well.
Most Prescribe Commands are supported, but not all FRPO parameters. here the supported ones:
C1 | Page Orientation N4 Duplex | R4 | Default paper tray via Prescribe rule and PRE_PSRC# setting | |
P1 | Emulation (Only HP) | P2 | CR Handling | |
P3 | LF Handling | B8 | Resolution | |
C0 | Copies | R0 | Out tray | |
P9 | Prescribe recognition character | R2, R7 | Default paper size | |
U0, U1 | Lines per inch | U2, U3, U8 | Characters per inch | |
U9 | Characters per inch | U6, U7 | Symbol set | |
A1, A2 | Top margin | C0 | Copies per document | |
D1 | Full paper size | N4 | Duplex | |
R3 | Margin Lock (HP) | C2, C3, C5 | Typeface definition |
The FRPO settings must set per Prescribe activated queue and obviously can be different in between each other.
Notes related to Prescribe commands:
The RES command does currently initialize the printer to the following settings: Default Tray with media type Plain, 1 copy, portrait, 6 lines per inch with Courier in Roman 8 symbol set and 300 dpi. After that certain FRPO Parameters are read. However, if the key PRE_INIT is provided those statements are used.
The CASS and PSRC commands are NOT selecting directly the paper trays. The usage of them is much more powerful. When Prescribe selects a tray, ELP opens the actual ini-file and checks the section [PRESCRIBE] for the keys: Pre_CASS1 to 4 or Pre_PSRC1 to 6 and 99. If the key is not defined, no selection change is performed. But if it is defined, the key values can be any PCL sequence, in most cases for selection paper media. The sequences are listed in the HP PJL technical reference Manual. Please note, that the <27> sign has to be entered in the command with \x1B.
Unfortunately there are definitively differences between Kyocera printer models. Some of them do set a cursor position some not. In any case, you may add a cursor positioning command Esc&f#a#V after the tray selection command. Finally the corresponding media type of any available paper tray can be set in the printers paper handling menu. You can also use the PCL5 sequence \x1B&l#H for tray selection, but then you need to know the number #.
The final paper tray selection flow is like this:
CASS / PSRC -> converted to a media type -> send to printer PCL interpreter -> he selects finally the correct tray from the printer defined media list.
The handling of the STPL command is similar. The link to the correct is done using the key Pre_staple# in the Prescribe section. Note as operands you my also use variables, which can be preset according to the printer model type.
Depending on the printer, you may set set in their menue the option wide printing on and off. We suggest to use always wide printing ON. Especially for landscape printing, it could be that an YMove value needs to be defined.
JEIDA / Flash data stream storing forms to the printers flash memory, are also processed and the files stored for every activated queue. This means, they need to be set (printed) minimum once for every activated queue.
Notes:
-
Prescribe is a complex printer language. If the result is not as expected then let us know: Need help? How to get support!
-
there are other rule based solutions for fixing problems: Use SEARCH_... rules, but note: using in the rules data sream based PRE_XScale, PRE_YScale, PRE_XMove and PRE_YMove changes to the default setting in the rule Prescribe, they rule should hit in the first analyzed 2048 Bytes. You may extend that to 16k using the Max_ReadBuffer key in the rule GLOBAL.
- Unknown (not yet supported) Prescribe commands are ignored.
-
The readable text size when printing barcodes might be slightly differen compared to the original. Some EAN and UPC bar codes with readable text might look different, according to the bar codes specification.
-
Paper tray selection can also be done by any ELP_COMMAND.
- The command PRE_STOREMACROSTOFLASH=ON is only available for Ricoh IBS. It does redirect the working path for storing and reading Prescribe macros to the device RAM disk. This does avoid, that each job might write to the Flash component and destroy it after X thousand write cycles.
- If the data stream comes each time with all Prescribe macros included, then you may add the key PRE_DONTSTOREMACROS=ON to avoid to store each time the macros on the hard disk / flash.
- The AMCR command does store for each enabled queue the amount of overlay pages or if overlay is permanent enabled. As Kyocera, this works until the command is stopped or the device is turned off. But please note if you archive the data streams, the form is visible in the first enabling data stream, on all pages, but NOT on following data streams!
Related articles: Rule assistant Add key to rule