问题标签 [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 servlet 加载到 JTextPane 时,为什么会丢失换行符?

我尝试使用 java servlet 加载包含多行文本的文本文件的内容。
当我在浏览器中测试 servlet 时,它工作正常。文本加载了换行符。
但是当我在我的摇摆应用程序中将它加载到一个字符串然后使用textpane.setText(text);新行时就消失了。我尝试了许多在网上找到的解决方案,但仍然无法正确解决。

Servlet 代码:
从文件中读取文本(简化):

发送文本:

是平台问题吗?Servlet 是在 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 - Java JTextPane HTML 图像 cookie

我正在使用 JTextPane 显示来自不属于我的网页的数据,因此我无法控制其内容。它需要用户登录,因此我使用 URLConnections 连接到该网页并使用 URLConnection 中的 cookie 来检索数据。这很好用。但是,当我将此数据放在内容类型设置为 text/html 的 JTextPane 中时,图像不会显示,因为它们需要发送具有会话 ID 和内容的 cookie 才能检索上传的图像。

有什么方法可以让 JTextPane(尽管我可以在 jdk 中使用任何其他显示 html 的东西)使用我的 cookie?

谢谢。

我将 cookie 存储在链表中:

而且我还需要去除不必要的 HTML,这给了我一个插入文本窗格的字符串:

0 投票
1 回答
1129 浏览

java - 从 JTextPane 复制/粘贴到没有文本格式支持的其他应用程序

我有一个 JTextPane,其 contentType 设置为“text/html”。JTextPane 的内容采用 html 格式。我的行格式如下:“<p>hello</p>\n”。

我能够将数据从我的 JTextPane 复制到支持 OpenOffice 等文本格式的应用程序(我的文本格式包括颜色和换行符),但是当我尝试将数据粘贴到不支持文本的应用程序时格式化(如 gedit),我丢失了换行符(我将所有行合并为一行)。

知道如何能够正确地将带有换行符的文本粘贴到不支持文本格式的应用程序中吗?

谢谢!

0 投票
0 回答
413 浏览

java - 缩放 JTextPane 时如何获得一致的渲染?

可能重复:
第 2 部分 - 缩放 JTextPane 时如何获得一致的渲染?

我想允许用户放大或缩小不可编辑的 JTextPane。

运行下面的示例程序,我发现缩放 Graphics 对象会导致粗体文本和非粗体文本之间的间距不一致。如果粗体和非粗体之间有一个空格,有时它会被渲染得太宽,而在其他缩放级别上,空格会消失并且相邻的字符会重叠。

如果没有渲染提示,间距在 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 方法?

这是我在这个网站上的第一个问题,虽然不是我第一次进入以清除我的疑虑,很棒的网页。:)

我正在编写一个突出显示 JTextPane 中代码的 java 程序,并且我正在更改突出显示的完成方式。我正在使用 JTabbedPane 让用户同时编辑多个文件,并且我曾经使用 Timer 执行文档突出显示,现在我构建了一个在单独线程中运行的突出显示队列并实现了一个 DocumentListener 队列发生变化时的文件。

但是我有一个很大的问题,如果我通过 DocumentListener 添加文档,Highlight 过程需要很长时间,而如果我通过直接从 JTextPane 获取文档将其添加到主类中,则只需几毫秒。我在我的代码中执行了多个基准测试,发现从 DocumentListener 添加文档时需要花费大量时间执行的是方法 Document.setCharacterAttributes()。

下面是通过 DocumentListener 添加文档的方法:

如果我使用这种方法添加一个包含 2k 行的文档,则需要大约 1900 毫秒来突出显示整个文档,而如果我使用插入符号监听方法将文档添加到突出显示队列中,则需要大约 500 毫秒。

这是插入符号侦听方法的一部分,用于在加载整个文档时突出显示它们:

注意:Highlight/Engine.addDocument() 方法有五个参数:(StyledDocument doc,int start, int end, String tabTitle, String docText)。开始和结束都指示需要突出显示的区域。

我将不胜感激与此问题相关的任何帮助,因为我已经尝试解决了几天,但在 Internet 上找不到类似的东西。:(

顺便说一句,有人知道 Document.setCharacterAttributes 和 Document.setParagraphAttributes 之间的实际区别吗?:P

0 投票
2 回答
15282 浏览

java - 在 JTextpane 中切换文本换行

我将如何在 a 上切换文本换行JTextpane

0 投票
2 回答
740 浏览

swing - Java:JTextPane 中是否有任何方法与 JTextArea 中的 append() 执行相同的操作?

该程序允许用户在文本字段中输入命令,然后他们输入的任何内容都将显示在文本区域中。如果是诸如yes之类的关键字,它将变为绿色,但是我不能在文本区域中仅将一行文本设置为绿色,因此我需要使用文本窗格。

问题是,如果我使用文本窗格,我就不能再使用 append 方法了。