Skip to Content

How to create multi-language dynamic rpt file - make use of font family in rpt content field

Hello,

I'm currently facing a use case, where I've the need to create a (single) Crystal Report .rpt file which is able to deal with dynamic content in point of view to the languages supported by the content fields displayed.
Or let me try to rephrase this in other words: I'll need to put text into the generated report, where the source language of the content is dynamic. Since the corresponding language can be any of the following (English, German, Spanish, Italian, French, Brazilian Portuguese, Japanese and Simplified Chinese), it would not work to prepare a Crystal Report .rpt file, where for example a single specific western latin font is assigned for the corresponding field in the report, when there are Japanese characters are coming into.

In the past a workaround for the described scenario was, to prepare the Crystal Report file by using the so called "Arial Unicode" font. That was available as simple truetype file (.ttf) which is supported by Crystal Reports. And "Arial Unicode" included characters for all the languages named above. But since licensing for Arial Unicode changed, I need to look for alternatives / new workarounds and there is no single truetype font alternative available which I can make use of in that specific scenario.

All modern alternative unicode fonts like Google Noto or IBM Plex for example, are split into font families. So you won't by able to get a single truetype font file and simply use it with Crystal Reports. Instead you get multiple fonts, e. g. "Google Noto Sans Regular" for western characters and "Google Noto Sans CJK Japanese Regular" for Japanese. So each language / region hat it's own font file. While in Crystal Reports I can only assign one single specific font to a field and not a font family, as far as I understand. As a result I will not be able to fill that report with dynamic multi-language content since not all required characters can be supported. Additional to this, all modern unicode fonts exceed the possible char set of the old truetype font file format, as a result modern unicode fonts are delivered in .otf format instead, which I think is not supported by Crystal Reports.

Question: How to create multi-language dynamic rpt file, where fields inside of the report can be configured, to enable them to display multiple characters of various languages - e. g. sometimes Japanese for example and sometimes latin western characters, depending on the source input text.

Summary:

  • Single Crystal Report files can only contain fields where a specific single font is assigned to, right?
  • There is no way to make use of font family when creating an .rpt file, right?
  • Crystal Report does not support fonts in .otf file format, right?
  • Only known workaround is the "Arial Unicode" font which at least support some additional languages
  • Alternatively one would have to create separate Crystal Report .rpt files for each language which needs to be supported.

I am looking forward to any help and support on this topic.
Martin

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

1 Answer

  • Mar 19 at 10:45 AM

    Hi Martin,

    We had a similar conundrum a while ago and we used the Google Noto fonts. The report we were building only needed to support three Asian Languages so we used the CJK package.

    Inside the report, we used a font formula (for each field) to point to the specific font file depending on the locale.

    About the .otf support - you're right, Crystal Reports does not support this type of font. As a workaround, I believe, we purchased a tool that converts .otf to .ttf without loss of glyphs/characters.

    -Abhilash

    Add comment
    10|10000 characters needed characters exceeded