伊藤です。
出力形式によって、文字の間隔や余白が微妙に異なるので、
それぞれ別の計算式が必要になります。
ポイント単位で帳票をデザインしていて、
全角文字のみ含まれる文字列だという前提とします。
PDF出力時は、2ポイントの余白 + フォントサイズ x 文字数 という式で、特定の文字の位置を計算できます。
プレビュー/直接印刷時は、.NET Frameworkの機能を使って描画しているため、厳密なロジックは不明ですが、
試してみると、だいたい フォントサイズ * (0.1 + (文字数 * 1.035)) という式で計算できるようです。
[カスタマイズ]プロパティを使って、指定した文字を四角形で囲むサンプルを作成してみましたので、ご確認ください。
この方法を実際に採用される場合、帳票出力の直前で、以下のように出力形式を指定する必要があります。
プレビュー/直接印刷の場合
report.GlobalScope.Add("export_type", "gdi")
PDF出力の場合
report.GlobalScope.Add("export_type", "pdf")