TRichEditコントロールに読み込んでいるRTFファイルがあります。
私が直面している唯一の問題は、RTFファイルにテーブルが含まれていて、同じものをロードするとテーブルの境界線が表示されることです。しかし、MS Wordに同じRTFをロードすると、境界線が表示されません(クライアントは同じ動作を望んでいます)。
TRichEditへのロード中にテーブルの境界線を表示しない方法はありますか?
Delphi7を使用しています。
TRichEdit コントロールは、RTF 形式の実装において、MS Word ほど完全ではありません。私が覚えている限り、TRichEdit は表の境界線を処理しません。
MS Word を Active X コントロールとして埋め込むか、TRichViewコンポーネントを使用する必要があります。TRichView は、より優れたアプローチです。TRichEdit の動作は、さまざまなバージョンの Windows と一貫性がなく、既存の MS Word インストールに依存しないためです。しかし、それは無料のコンポーネントではありません。:(
一部のテキストと表のみを表示する場合は、それを HTML に変換してから、組み込みの Internet Explorer または THtmlView を使用して表示できます。
2003 以前の MS Office などの古いバージョンで RTF ファイルを開くと、境界線を指定しない場合でも、境界線を表示できます。
MS Office (2007 および 2010) の新しいバージョンでは、境界線を表示できません。
TRichEdit の RTF エンジンは古い仕様で記述されているため、アプリケーションで境界線が表示されます。
したがって、@ A.Bouchez の回答で指定されたサードパーティ コンポーネントを確認する必要があります。