フィールドの前後の余白をなくすには

206 views
Skip to first unread message

unread,
Oct 5, 2015, 11:01:23 PM10/5/15
to RapidReportサポート QAフォーラム
お世話になっております。
フィールドや、テキストで文字を表示した際に、最初と最後に余白がありますが、
それをなくす(余白なし)にはどうしたら宜しいのでしょうか?

RapidReport

unread,
Oct 6, 2015, 1:13:59 AM10/6/15
to RapidReportサポート QAフォーラム
伊藤です。

余白を無くすことはできないので、
フィールドやテキスト要素の位置を微調整していただくしかないと思います。

ただ、どのような目的で余白をなくしたいのでしょうか?

もしも、(的外れな意見かもしれませんが)テキストをフィールドを空白が入らないようにつなげたいということであれば、
テキスト要素の式埋め込み機能をお使いいただければと思います。

unread,
Oct 6, 2015, 4:55:20 PM10/6/15
to RapidReportサポート QAフォーラム
お世話になっております。
やりたい事は、指定の文字数の位置に線を描画するという事です。
フォントのサイズは可変のため、1文字の幅を算出し、その位置に線を描画するような作りになっているのですが、
フィールドに出力する最初の文字の前に、余白があり、その分がずれている為、余白がなければ…と思い、質問させて頂きました。
あるいは、その余白のサイズが算出できるのであれば、その方法を教えて下さい。お願いします。

RapidReport

unread,
Oct 6, 2015, 8:08:20 PM10/6/15
to RapidReportサポート QAフォーラム
伊藤です。

出力形式は、プレビュー/直接印刷でしょうか?
または、PDFでしょうか?

unread,
Oct 12, 2015, 8:25:24 PM10/12/15
to RapidReportサポート QAフォーラム
お世話になります。

出力形式はPDF、直接印刷共に出力します。
宜しくお願いします。

RapidReport

unread,
Oct 12, 2015, 9:11:56 PM10/12/15
to RapidReportサポート QAフォーラム
伊藤です。

出力形式によって、文字の間隔や余白が微妙に異なるので、
それぞれ別の計算式が必要になります。

ポイント単位で帳票をデザインしていて、
全角文字のみ含まれる文字列だという前提とします。

PDF出力時は、2ポイントの余白 + フォントサイズ x 文字数 という式で、特定の文字の位置を計算できます。

プレビュー/直接印刷時は、.NET Frameworkの機能を使って描画しているため、厳密なロジックは不明ですが、
試してみると、だいたい フォントサイズ * (0.1 + (文字数 * 1.035)) という式で計算できるようです。

[カスタマイズ]プロパティを使って、指定した文字を四角形で囲むサンプルを作成してみましたので、ご確認ください。
この方法を実際に採用される場合、帳票出力の直前で、以下のように出力形式を指定する必要があります。

プレビュー/直接印刷の場合
report.GlobalScope.Add("export_type", "gdi")

PDF出力の場合
report.GlobalScope.Add("export_type", "pdf")


example.zip

unread,
Oct 14, 2015, 12:45:36 AM10/14/15
to RapidReportサポート QAフォーラム
いつもお世話になっております。
 
印刷設定をミリメートルの単位で実装しています。下記係数はどうやって導かれたのでしょうか?

RapidReport

unread,
Oct 14, 2015, 1:34:14 AM10/14/15
to RapidReportサポート QAフォーラム
伊藤です。

この式は、実際に描画してみてフォントサイズや文字数を変えながら試して作ってみました。

ポイント単位にするには、0.3528 という係数を掛ければよいです。
サンプルを修正しましたので、ご確認ください。


example20151014.zip
Reply all
Reply to author
Forward
0 new messages