1) Can the spacing be changed / influenced?
There is currently no control to influence any spacing within the font type, beyond automated justification spacing to fit a specified width. This includes tracking, kerning and leading of any font on the platform. The default metrics of the fonts are used and represented by the browser.
If the default spacing is causing an issue for a particular font, the best current solution is to use an alternative font on the system OR find a similar Google Font which can be added to the platform free of charge.
Top Tip: If you have font editing software, you can change the default spacing between characters and have that font imported to CPP to offer fixed spacing options.
2) Text position displays differently between browsers OR the preview is different to the generated print file?
There are multiple contributing factors that affect how the text displays in the App (preview) vs the output file. The most common query is that there is a noticeable difference in the text alignment/position between the on-screen preview and the generated print artwork.
This is because font files are configured in different ways, and both Operating Systems and browsers render the fonts differently, which can affect the preview on-screen. There is no way for the App to influence how the font displays based on platform / browser being used. This is something that has to be implemented when the font file is created by the original author.
It is for these reasons that we recommend the use of fonts that are optimised for web usage - this means they render more consistently cross-platform and cross browser. We tend to find that in most cases, Google Fonts fall into this category and are generally not affected by alignment issues in the preview vs the output file.
TTF and OTF files are generally the ones affected, and it is because the metrics within the font file are not optimised in the same way that Google Fonts are. Therefore we cannot guarantee cross platform compatibility for supplied TTF/OTF fonts.
Users can manually test font compatibility via the Print Test facility to review the preview vs the output file. In CPP, there is a 'Source' column indicating the origin of each font so Users can easily determine which fonts are Google Fonts and those that aren't.
Should there be a specific font that you want to use that is causing issues, there are 3 potential solutions that should be considered:
- Locate and or Purchase a web optimised version of the font.
- Update the TTF files manually using dedicated font creation software
- Use a different font / Find a close matching Font - we recommend Google Fonts or https://typekit.com/.
For more information, see:
3) Missing Characters / characters don't match the preview compared to the generated print file
In some cases, the end user may have tried to use special / foreign characters or emoji's. These may appear in the preview, but when the artwork is generated by the platform there is a mismatch. This is not that the special / foreign characters have been rendered incorrectly, it's because they don't exist for the selected font type, so there is nothing to render - see here http://www.martinstoeckli.ch/fontmap/fontmap.html
Here is the technical explanation:
The Unicode standard defines 109,384 possible characters that a user can type into a system (most of them are typed by using non-Qwerty keyboards, modifier keys, copy and pasting or using a tool like the windows character map).
The vast majority of fonts will only support a very small subset of these characters, usually most fonts will only support English letters and maybe a few other special characters. A font that supported every single possible character would probably be 100MBs large and not feasible to use as a web font.
What happens in a web browser when the user types a character that isn't supported by the font is that the browser will typically use a system defined fallback font. The problem this presents is that we have no idea what this fallback font actually is (it will differ depending on what fonts are installed, what platform is being used, etc).
Thus it is not possible to draw the character properly in the final artwork.
The only way to resolve completely would be to use a font type that features the necessary characters within the character map. This may involve utilising a different font, or manually updating the original font using specialist font editing software.
**There is currently a known limitation when trying to upload multiple fonts from the same font 'Family' eg italic, bold variations etc... In these scenarios, the system can only register one of the fonts for display purposes in the App. This means that despite the selected font variation, the App may display a different one in the preview.