問題タブ [jtextpane]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1204 参照

java - Java サーブレットから JTextPane にテキストをロードすると改行文字が失われるのはなぜですか?

Java サーブレットを使用して、複数行のテキストを含むテキスト ファイルのコンテンツを読み込もうとしています。
ブラウザでサーブレットをテストすると、正常に動作します。テキストは改行文字でロードされます。
しかし、swing アプリケーションで文字列にロードしてからtextpane.setText(text);新しい行を使用すると、行がなくなります。ネットで見つけた多くの解決策を試しましたが、まだ正しくできません。

サーブレット コード:
ファイルからのテキストの読み取り (簡略化):

テキストの送信:

プラットフォームの問題ですか?サーブレットは Linux で作成およびコンパイルされましたが、Windows (JBoss) で実行します。テキストファイルも私のマシンに保存されています。

0 投票する
2 に答える
1429 参照

java - Java ラップ テキスト画像

Javaで画像の周りにテキストをラップする方法は? または、Java で CSS フロートを実現する方法は?

いくつかのイメージ タグを含む HTML テキストを JTextPane コンポーネントにロードしています。

例:

例 2: http://www.bbc.co.uk/news/world-us-canada-11882019 (テキストは左、画像は右に似たもの)

そして、画像をテキストでラップする必要があります。

css を使用してみました... float: right;(Java はその機能をサポートしていません.. 必要です..)

すべての画像の配置(左、右など)を試しました(運が悪い..)

PS PHPプログラマ..

0 投票する
2 に答える
2136 参照

java - JTextPaneのキャレット位置でスタイルを取得する

ドキュメントのスタイルを設定できる基本的なテキストエディタ(太字、下線、斜体、下線、左/右/中央の配置、色、フォントサイズ/ファミリ)があり、すべてうまく機能します。私が抱えている問題は、ボタンとボックスをカレットのある場所に合った正しいスタイルに設定したいということです。

たとえば、私は文字列を持っていると言います

速い茶色のキツネ は怠惰な犬を飛び越えます

uとiの間をすばやくクリックすると、イタリック体のボタンがオンになり、カレットがあるテキストがイタリック体のスタイルになっていることを示します。

テキストを保持するためにJTextPaneを使用し、スタイル設定のためにStyledEditorKitを使用しています。

ありがとう。

0 投票する
2 に答える
943 参照

java - JavaJTextPaneHTML画像Cookie

JTextPaneを使用して、自分のものではないWebページのデータを表示しているため、そのコンテンツを制御できません。ユーザーがログインする必要があるため、URLConnectionsを使用してそのWebページに接続し、URLConnectionのCookieを使用してデータを取得します。それはうまくいきます。ただし、このデータをコンテンツタイプがtext / htmlに設定されたJTextPaneに配置すると、アップロードされた画像を取得するためにセッションIDなどのCookieを送信する必要があるため、画像は表示されません。

JTextPane(htmlを表示するjdkで他のものを使用することはできますが)にCookieを使用させる方法はありますか?

ありがとう。

リンクリストにCookieを保存します。

また、不要なHTMLを削除する必要があります。これにより、テキストペインにプラグインした文字列が得られます。

0 投票する
1 に答える
1129 参照

java - テキスト書式設定をサポートしていない JTextPane から他のアプリケーションへのコピー/貼り付け

contentType が「text/html」に設定された JTextPane があります。JTextPane のコンテンツは、html でフォーマットされています。私の行は次のようにフォーマットされています: "<p>hello</p>\n".

JTextPane から OpenOffice などのテキスト形式をサポートするアプリケーションにデータをコピーできます (色や改行などの形式でテキストを取得します) が、テキストをサポートしていないアプリケーションにデータを貼り付けようとすると、書式設定 (gedit など) を行うと、改行が失われます (すべての行が 1 行にマージされます)。

テキストの書式設定をサポートしていないアプリケーションに、改行を含むテキストを正しく貼り付ける方法はありますか?

ありがとう!

0 投票する
0 に答える
413 参照

java - JTextPane をスケーリングするときに一貫したレンダリングを取得するにはどうすればよいですか?

重複の可能性:
パート 2 - JTextPane のスケーリング時に一貫したレンダリングを取得するにはどうすればよいですか?

ユーザーが編集不可能な JTextPane をズームインまたはズームアウトできるようにしたいと考えています。

以下のサンプル プログラムを実行すると、Graphics オブジェクトをスケーリングすると、太字のテキストと太字でないテキストの間の間隔に一貫性がなくなることがわかります。太字と非太字の間に 1 つのスペースがあると、レンダリングの幅が広すぎる場合があり、他のズーム レベルではスペースが消えて隣接する文字が重なります。

レンダリング ヒントがない場合、間隔は 100% で正しいですが、他のズーム レベルでは正しくありません。KEY_FRACTIONALMETRICS レンダリング ヒントを使用すると、結果はすべてのズーム レベルで一貫していますが、太字と非太字の間隔は 100% でも正しくありません。

Java 1.6.0_13 と 1.6.0_23 の両方でこれを試しました。結果は同じでした。すべてのズーム レベルで魅力的なスケーリングされたレンダリングを実現する方法について何か提案はありますか?

0 投票する
3 に答える
2207 参照

java - パート2-JTextPaneをスケーリングするときに一貫したレンダリングを取得するにはどうすればよいですか?

以前にこの質問の別のバージョンとサンプルプログラムを提出しました:JTextPaneをスケーリングするときに一貫したレンダリングを取得するにはどうすればよいですか?

問題の要約:ユーザーが編集不可能なJTextPaneにズームインまたはズームアウトできるようにしたいと思います。前の質問で送信されたサンプルプログラムを実行すると、Graphicsオブジェクトが単純にスケーリングされ、太字のテキストと太字でないテキストの実行の間隔に一貫性がなくなりました。

以下のサンプルプログラムは、テキストペインを100%のBufferedImageに描画し、画像を拡大縮小することで問題を解決しようとしています。これにより、間隔の不一致の問題は解決されますが、結果のテキストには鮮明さが欠けます。鮮明なテキストを生成するレンダリングヒント(またはその他の変更)の組み合わせはありますか?

このアプローチの実現可能性に関する提案やコメントを事前に感謝します。

0 投票する
2 に答える
794 参照

java - DocumentListener は Document.setCharacterAttributes メソッドを遅くしますか?

これはこのサイトでの最初の質問ですが、疑問を解消するために入るのは初めてではありません。すばらしい Web ページです。:)

JTextPane でコードを強調表示する Java プログラムを作成しており、強調表示の方法を変更しています。ユーザーが同時に複数のファイルを編集できるように JTabbedPane を使用しています。以前はタイマーを使用してドキュメントのハイライトを実行していましたが、別のスレッドで実行されるハイライト キューを作成し、キューに入れる DocumentListener を実装しました。変更が行われたときのドキュメント。

しかし、大きな問題があります。DocumentListener を介してドキュメントを追加すると、Highlight プロセスに非常に長い時間がかかりますが、JTextPane からドキュメントを直接取得してメイン クラスに追加すると、ほんの数ミリ秒しかかかりません。コードで複数のベンチマークを実行したところ、DocumentListener からドキュメントを追加するときに実行に非常に時間がかかるのは、Document.setCharacterAttributes() メソッドであることがわかりました。

DocumentListener を介してドキュメントを追加するメソッドは次のとおりです。

この方法で 2,000 行のドキュメントを追加すると、ドキュメント全体を強調表示するのに約 1900 ミリ秒かかりますが、キャレット リスニング メソッドを使用してドキュメントを強調表示キューに追加すると、約 500 ミリ秒かかります。

以下は、ロード時にドキュメント全体を強調表示するために使用されるキャレット リスニング メソッドの一部です。

注: Highlight/Engine.addDocument() メソッドには、5 つのパラメーター (StyledDocument doc,int start、int end、String tabTitle、String docText) があります。開始と終了は両方とも、強調表示が必要な領域を示します。

この問題に関連するヘルプをいただければ幸いです。数日間この問題を解決しようとしましたが、インターネット上で同様のものを見つけることができません。:(

ところで、Document.setCharacterAttributes と Document.setParagraphAttributes の実際の違いを知っている人はいますか? :P

0 投票する
2 に答える
15282 参照

java - JTextpane でテキストの折り返しを切り替える

でテキストの折り返しを切り替えるにはどうすればよいJTextpaneですか?

0 投票する
2 に答える
740 参照

swing - Java: JTextArea の append() と同じことを行う JTextPane のメソッドはありますか?

このプログラムでは、ユーザーがテキストフィールドにコマンドを入力すると、入力したものがテキスト領域に表示されます。yes などのキーワードの場合は緑色に変わりますが、テキスト エリアに 1 行のテキストだけを緑色に設定することはできないため、テキスト ペインを使用する必要があります。

問題は、テキスト ペインを使用すると追加メソッドを使用できなくなることです。