I thought I had written about this before, but apparently I have only mentioned this in forums and never on my own blog. When you export a Crystal Report to PDF, by default Crystal will reduce the fonts by around 5%. Most people don’t notice this, but in some situations this causes problems. The solution requires that you go into the registry and add some keys. Finding where to make the change and what the change should be is a bit tricky because there is an older method and a new improved method.
The older method requires that you add the following registry entry called ForceLargerFonts. This is case sensitive. Set the typ to DWord and the value to 1 to activate. You add it in the following two places if you are using the CRv12 designer (CR 2008):
HKEY_CURRENT_USER\Software\Business Objects\Suite 12.0\Crystal Reports\Export\PDF
HKEY_LOCAL_MACHINE\Software\Business Objects\Suite 12.0\Crystal Reports\Export\PDF
The number after the word “Suite” will reflect your version. If the “Export” or “PDF” keys don’t exist you will have to add them. Also note that if you are doing app deployment the registry path for the runtime engine might be slightly different (see below). If you are doing this on an IIS server you may have to change the permissions on these keys.
The problem with the old method is that it occasionally truncates text on the right side of the page. The new improved method became available in CR 11(XI) SP 5. You can do a web search for SAP document ADAPT00940675 which explains how to use these registry keys:
HKEY_CURRENT_USER\Software\Business Objects\Suite 12.0\Crystal Reports\Export\PDF\TruncationAdjustment (=2)
HKEY_CURRENT_USER\Software\Business Objects\Suite 12.0\Crystal Reports\Export\PDF\UsePrecisePositioningForText (=1)
HKEY_LOCAL_MACHINE\SOFTWARE\Business Objects\Suite 12.0\Crystal Reports\Export\PDF\TruncationAdjustment (=2)
HKEY_LOCAL_MACHINE\SOFTWARE\Business Objects\Suite 12.0\Crystal Reports\Export\PDF\UsePrecisePositioningForText (=1)
The settings above enlarge the font and also eliminate the truncation in most cases, and when it doesn’t you can increase the TruncationAdjustment from 2 to 3 (or higher) until the problem is resolved.
Last note. If you are using Crystal Reports runtime for Visual Studio 2010, the registry key paths will all start with something like this, but the four keys are the same:
HKLM\SOFTWARE\SAP BusinessObjects\Crystal Reports for .NET Framework 4.0\Crystal Reports\…
I was part of a group discussion on this topic in LinkedIn. One participant, Mike Wies of CPC Logistics, had trouble finding the appropriate key on his server. He had to install Sysinternals ProcessMonitor to monitor calls to the registry. That finally uncovered the correct key. According to Mike, there are several factors that determine which key will be used, including the Crystal version (BO, SAP BO, Suite xx, .NET) and whether the computer is 32-bit or 64-bit. In a 64-bit environment it will be in the Wow6432Node key.
Links with more information:
https://www.morovia.com/kb/Font-size-decreases-exporting…. (old method)
http://scn.sap.com/thread/1816888 (New method)
http://scn.sap.com/thread/1161804 (Bug when using IIS with VS.NET 2005)