フッターにキャプションがあるレポートを生成しています。DrawText を使用して、キャプションのサイズを調べます。問題は、テキストが常に切り取られることですが、テキストの最後にキャリッジ リターンがあると、すべてのテキストが完全に表示されます。
lClientRect := Rect(0, 0, 4770, 59);
lFlags := DT_CALCRECT or DT_EXPANDTABS or Alignments[Alignment]
or WordWraps[WordWrap] or DT_NOPREFIX or DT_TOP or DT_EXTERNALLEADING;
DrawText(lCanvas.Handle, PChar(lsCaption), Length(lsCaption), lClientRect, lFlags);
DrawText の呼び出し後に rect を調べたところ、(0, 0, 4366, 59) ですが、キャリッジ リターンがある場合は (0, 0, 4366, 118) です。
何が起こっているのか、私には何の手がかりもありません。どんな助けでも大歓迎です。