1

Swingアプリケーションでは、HTMLDocumentバックエンドでJTextPaneを使用しています。ある時点で、ある種のプレースホルダーをプログラムでドキュメントに挿入しています。

document.insertString(...)

何らかの理由で、

HTMLEditorKit.insertHTML()

メソッドは、テキストをJTextPaneに表示しません。

私が知りたいのは、ドキュメント内のどの位置に挿入するか、つまり、バックグラウンドで書き込まれるHTMLドキュメントです。私は言うことができます

JTextPane.getCaretPosition()

ただし、これにより、フロントエンドに表示されるドキュメントのオフセットのみが表示され、結果のオフセットは表示されません。

4

1 に答える 1

1

結果ドキュメントのhtmlテキストが異なる可能性があるため、意味がありません。たとえば、OSとJVMの設定に応じて、行末は「\n」または「\r\n」になります。HTMLは、たとえばダブルスペースやタグ間のスペースをスキップします。間にスペースがなく、間に改行がある2つのタグは、ドキュメント内で同じオフセットを持ちます。特定のIDを持つカスタムタグを追加し、結果ドキュメントのhtmlテキストでIDを検索できます。

于 2011-01-25T11:09:22.537 に答える