Crystal Reports で PDF 内のテキストが切り取られる
-
24-09-2019 - |
質問
この投稿を見つけました Crystal Reports で PDF 内のテキストが切り取られる, 、しかしそれは私の問題を解決しませんでした。
Crystal Report にテキスト オブジェクト内にフィールドが含まれており (行間隔を制御するため)、「拡張可能」が選択されています。Crystal Report を PDF にエクスポートすると、テキストが切り取られることがあります。
この例では右側の文字が切れていますが、文字が多くの行で構成されている場合、最終行の下の部分が一部切れてしまうこともあります。
Visual Studio 2008 にバンドルされている Crystal Reports を使用しています。テキスト領域は「拡大可能」にチェックが入っており、フォントは Helvetica LT Condensed、太字 14 に設定され、行間隔は通常の 0.75 倍に設定されています。
これを修正する方法について何か考えがある人はいますか?
解決 2
私は問題を発見したと思います。バウンディングサブレポートの幅は、フィールドオブジェクトの幅よりも小さかったです。それの幅を調整すると、右側に発生切り捨てを修正しました。
サイドノートでは、一番下に切り捨てられたテキストは、ライン間隔が小さすぎるを調整した結果であると思われます。あなたは、元のテキストのポイントサイズの倍数で行間隔を設定し、それがあまりにも小さくした場合、ラインの下の部分が切り捨てられます。私は、「正確な」にこれを変更し、(私の16のPT。テキストの18 PTの例えば行間隔。)は、特定のポイントサイズを入力すると、この問題を解決するように見えました。行間隔が小さすぎる場合には、クリスタル・マスクテキストの下部オフと思われます。
他のヒント
私はこれに遭遇してきただけでなく - クリスタルは、テキストボックスの境界線がどこにあるかについて混乱少しいるようです。私は、テキストボックスのテキストボックス(右クリックに小さな右インデントを追加することを提案、「書式オブジェクト」を選択し、「段落]タブを選択し、右のテキストボックスに小さな数字(多分0.2くらい)を入力します。この右マージンを支援する必要があります。
下のカットオフについては、あなたが追加できるという余裕はありません。それはデシベルから来て、あなたのテキストの末尾に改行を追加することはできますか?それとも、あなたは改行を追加する式フィールドを試すことができます:
{table_name.field_name} + chr(13) + chr(10)
- テキストフィールドを右クリックします
- 共通タブを選択します
- 「水平方向の配置」セクションで「両端揃え」に変更しました。
これにより、Can Grow を使用するときにテキストが適切に広がり、途中で切り取られないように調整されました。
私はこれを試み、それがこの問題を解決します。
次の操作を実行してみます:
テキストオブジェクト>右クリック> [テキストの書式設定]> [ボーダー]タブ
変更ラインスタイル:右/左/上/ホワイトのシングルと変化する色としてボトム。
私はこの問題を経験しました。私は、要求された変更とVARCHAR(150)インラインにVARCHAR(100)からの報告に引っ張ったことを説明フィールドを変更しました。プレビューモードでのCrystalレポートは、100文字の古い限界に保存されていたとラベルを切り捨てました。私はもう一度、データベースを確認したときにこれが修正されました。
データベースタブ - >
データベースを確認してください私はあまりにも、あまりにもこれを発見しました。唯一のHTMLビューで起こりました。私は3つのブロックのために、私は一緒に行くのがベストを選択するために異なるとしようとした数多くのシナリオを行うために必要ないくつかのことをしました。 - 左から書式テキストは正当化にjustufied - グリップテキストボックスの右端と右マージンからのダニでそれを引っ張っ - 他の(奇妙な)へのTimes New Romanからフォントを交換 - CR RPTとしてBI LPからのエクスポートおよびPDFにCR 2013クライアントからエクスポート - フォントサイズの変更 - 私たちは、「および/または」正中線を持っていた「および/または」
にそれを変更しましたそれは近いフルラインにした、オリジナルとは異なる見ていないので、私たちは、両端揃えて行きました。
それを整流奇妙な回避策がたくさん。私には、それがレポート内のシステムのアップグレードグリッチを示しています。
は、私が見つけたものホープ他人を助けます。
あなたはすべての方法を試しても動作しない場合は、次のよう試すことができます:
を Local StringVar inString := 'Your text string here.......';
Local NumberVar strLen := Length (inString);
Local StringVar result := "";
Local NumberVar maxLen := 45; // adjust the length of text per line
Local NumberVar idx := 0;
Local NumberVar proceed := 0;
While strLen > maxLen Do
(
proceed := 1;
idx := maxLen;
While (mid(inString,idx,1) <> " " and idx > 1) Do
(
idx := idx -1;
);
if (idx = 1) then
result := result + mid(inString,1,maxlen) + chr(10)
else
(
result := result + mid(inString, 1, idx-1)+ chr(10);
strLen := strLen-idx;
inString := mid(inString, idx+1, strLen)
)
);
if proceed = 1 then
(
result := result + inString
)
else
(
result := inString
);
result
のCrystal Reportsである環境では、私たちは、レジストリキーを設定するために助けました
どのように見つけるか?
:MSのWindowsの64ビット版の場合
HKEY_LOCAL_MACHINE \ SOFTWARE \ WOW6432NODE \ SAPのBusinessObjects \スイートXI 4.0 \ Crystal Reportsの\輸出\ PDF
:MSのWindowsの32ビット版の場合
HKEY_LOCAL_MACHINE \ SOFTWARE \ SAP BusinessObjectsの\スイートXI 4.0 \ Crystal Reportsの\輸出\ PDF
で、以下のソリューションを参照してください。 https://apps.support.sap.com/sap/サポート/知識/公共/ EN / 0001835763 の
これは 3 つの異なる正面から攻撃する必要がある難しい問題です。
- ソフトウェアホットフィックス
- デフォルトのプリンター
- フォームオーサリング
ソフトウェアホットフィックス: Hot Fix 20 を含む CRRuntime をダウンロードする必要があります。このホットフィックスは、PDF 作成時の切り詰めの問題を解決します。で見つけることができます http://downloads.businessobjects.com/akdlm/crnetruntime/clickonce/CRRuntime_64bit_13_0_20.msi
デフォルトのプリンター: レポートの作成時に使用するプリンタは、レポートを表示するプリンタと一致する必要があります。当社のサーバーには、Microsoft XPS Document Writer 以外のプリンターはインストールされていません。レポートを作成するときは、必ずそれをデフォルトのプリンターとして選択してください。
フォームのオーサリング: データベース フィールドをレポートに追加するときは、フィールド エクスプローラーからデザイン画面にデータベース フィールドをドラッグしないでください。まず、デザイン画面にテキスト オブジェクトを挿入します。テキスト オブジェクトの位置とサイズを好みに合わせて変更したら、データベース フィールドをテキスト オブジェクト上にドラッグします。中括弧で囲まれたデータベース項目の名前がテキスト オブジェクトに表示されることがわかります。何らかの理由で、データベース フィールドをテキスト オブジェクトで囲むと、より適切にラップされます。