Last Updated: 31/Jan/2019
There are some known issues detected when using Java version of SVF 9.2 Output Engine in Java 11 environment. The impact depends on customer's system environment, form file format and data configuration etc... We strongly recommend you run verification with Java 11 in test environment and compare output result and performance against ones with Java 8.
1. Character spacing or printing positioning is not identical
If you print a form file which is created in graphic mode (*1), you will see gap in output result between Java 8 and 11. For example, when SVF Global Font Pack font is specified in a form file in graphic mode:
- Following fonts are printed horizontally upper:
OCRB, Arial, BatangChe, DotumChe, TimesNewRoman, YuGothic, SimHei, SimSun, MingLiU, and PMingLiU - Following fonts have narrower character spacing:
All fonts except for AngsanaNew, CordiaNew when "bold" is specified.
Cause
In graphic mode, rendering position is decided based on Ascent and Descent values returned by FontMetrics in JavaVM. These values may not be consistent in Java 8 and 11, which impacts printing position and spacing. In addition, metrics value in the font depends on versions of OS and Java and fonts installed on the OS, which impact on printing position and spacing as well. Refer to following external site for changes made in Java 11: OpenJDK: Font Scaler Replacement Project.
Workaround
As a workaround, try either of followings:
- Adjust pitches to change layout.
- Switch to basic mode.
- Keep Java 8 environment (*2).
(*1) If you are not sure which mode you are selecting, press F3 key (or click Menu - Edit - Find), and the items specified in basic mode show in black, and green for graphic mode in Find box.
(*2) Even if you keep using older version of Java with SVF9.2, we will provide a patch as far as root cause of the issue resides in SVF itself. We may ask you upgrade Java version if the it causes due to Java itself.
2. Performance gets lower in Java 11 environment
During our performance test, we compared output speed between Oracle Java 8 and Java 11/OpenJDK 11 in the exactly same environment and observed lower performance in Java 11/OpenJDK11 environment with following printer models.
The impact depends on customer's system configuration, form file and data configuration etc.... We strongly recommend you compare the speed in your test environment before switching to Java11/OpenJDK11 in production environment.
We will keep investigating the root cause with Oracle and update this article when there's any updates.
Windows | Linux | |
Basic Mode | DotPrinter(ESCP) DotPrinter(IBM5577) DotPrinter(PR201) Hitachi Prinfina MANAGER ESCP TEC B474 EXCEL |
CSV DotPrinter(ESCP) DotPrinter(IBM5577) DotPrinter(PR201) FUJI XEROX DP Series FiBridgeⅡ FX-STDOUT、 Hitachi Prinfina MANAGER ESCP Hitachi Prinfina MANAGER PS UNISYS JPP MultiCoder NEC NPDL2 PlainTXT2 KYOCERA PRESCRIBE2 Adobe PostScript RICOH RPDL2 RV SATO FUJITSU VSP EXCEL |
Graphic Mode | FUJI XEROX ART4 Canon LIPS4 |
FUJI XEROX ART4 FUJI XEROX DP Series EMF Hitachi Prinfina MANAGER PS UNISYS JPP Canon LIPS4 Adobe PostScript |
3. Warning message shows if you've NOT specified any fonts for text frame
Following warning message appears when running a problem if no font specified for text frame in SVF Configuration Tool.
This doesn't impact printing result nor performance but if you don't want to get the warning, specify any fonts as follows.
- Launch SVF Configuration Tool.
- Click Environment Variables/TextFrame tab in Operating Environment Settings.
- Specify font in Font setting. For defail, see 3-7-2 Displaying and Configuring the Operating Environment Settings in SVF For Java Print Ver. 9.2 User's Manual.
Comments
0 comments
Please sign in to leave a comment.