問題:タグを追加したテキスト用のテキスト編集ウィジェットを実装したいと考えています。ユーザーの気を散らさないように、場合によってはタグを非表示にしたいと思います。
環境:私はPyQt
と を使用QPlainTextWidget
してQSyntaxHighlighter
います。
アプローチ:自分の要件に一致する文字列をQSyntaxHighlighter
設定できます。サイズ、色などのすべてのフォント プロパティが表示されますが、テキストを非表示にしたり、サイズをゼロにするオプションが見つかりませんでした。QTextCharFormat
QTextCharFormat
タグを削除したり置き換えたりしたくありません。これにより、より多くのコードが導入されるためです (コピーにはタグを含める必要がありQSyntaxHighlighter
、タグに従って残りのテキストをフォーマットするために使用することはできません)。
更新:これまでのところ、醜いハックを見つけました。QTextFormat::FontLetterSpacingを小さな値に設定することにより、テキストが消費するスペースがますます少なくなります。透明色と組み合わせることで、テキストは見えないようなものになります。
問題:私のテストでは、文字間隔が 0.016 % までしか機能しませんでした。間隔の下は 100% にリセットされます。