We found today a weird issue in the way Adobe Reader DC and Adobe Acrobat render some embedded fonts at certain zoom level. We first thought this was an Adobe bug but looking further into this issue, we found out that it was an issue with bitmap font tables being preserved by jWordConvert when subsetting fonts.

Description

When the Rendering Preference under Page Display for Text Smoothing is set to “None”, Adobe Reader seems to be having issue when rendering certain embedded fonts (true type font for instance) at certain zoom level. This is more noticeable when using the mouse to zoom.

Text Smoothing Preference in Adobe Reader
Text Smoothing Preference in Adobe Reader

Same text rendered at different zoom levels

Rendering at 100% is looking good
Rendering at 100%: Characters look good
Rendering at 106%: Character look weird / funny/ garbage / incorrect
Rendering at 106%: Some Characters are invalid / funny / garbage / incorrect

Workaround

When turning  Text Smoothing option to “For Monitor” or “For Laptop / LCD Screen”, the issue disappear.

Evaluation and Fix

We traced back the issue to the bitmap font tables being preserved when subsetting fonts. Adobe Reader seem to be using these bitmap when rendering at specific zoom level. Removing the bitmap (EBDT, EBLC & EBSC) when subsetting resolved the issue. Not all fonts have bitmap tables. This specific issue happened with the Calibri font but we think this could also have been an issue with Consolas and Cambria fonts.

 

Issue is fixed in jWordConvert v2016R1.04.