Chrome在从PDF复制并粘贴到TinyMCE的文本中添加了不间断的空间

时间:2013-07-16 13:38:58

标签: google-chrome pdf tinymce

我担心这是非常具体的,所以请耐心等待并仔细阅读。

问题:

打开PDF文件,选择并复制包含换行符的一些文本,然后将其粘贴到Google Chrome浏览器中的TinyMCE textarea中。然后删除任何换行符并在同一点插入一个空格:即使我在TinyMCE中使用了常规的“空格键”键,所添加的空格也没有中断。

我怎么知道有一个不间断的空间?

您可以点击我的TinyMCE实施的第一行上的“显示不可见字符”按钮(参见下面的链接)。 请记住,使用TinyMCE时,每次修改文本以查看更改时,必须再次关闭此选项

不间断空格将以橙色显示,正常空格正常显示。

到目前为止我发现了什么:

如果我删除换行符后面的字符,然后再次输入该字符,我可以插入一个普通空格。问题似乎与该角色有关。 如果我删除换行符之前出现的字符,问题仍然存在,即当我删除空格并键入新空格时,它仍然是一个不间断的空间。

当我将文本保存到MySQL数据库并在TinyMCE中再次读取时,问题仍然存在,这加强了我的印象,即“隐藏”字符附加到换行符后的字母上(没有保存)当然在测试页面上。)

复制它

你当然可以自己尝试一下,但这是我的测试平台:http://www.roseback.com/test/tinymce4.html

我已经使用许多产品和时代从图形设计师那里收到的许多PDF文件进行了测试。这些PDF是用于打印的文件,这些文件没有问题。 我在此处上传了一个示例文件http://www.roseback.com/test/languedoc.pdf。测试第一段以“Ce film exceptionnel”开头。 但是,我还从网上测试了随机PDF文件并每次都复制问题。因此,如果您尝试使用自己的文件而无法复制,那可能会很有趣。

环境:

网页:该网页采用HTML5格式,采用UTF-8格式。

在原始页面上,页面通过PHP提供,textarea内容来自MySQL 5.1 DB。数据库连接在PHP中设置为UTF-8,表格和文本字段的内容在utf8_unicode_ci

在测试页面上没有内容也没有保存,因此不涉及数据库。

浏览器:Chrome。在Firefox或Opera中没有发生(未在别处测试)

TinyMCE:版本3和版本4(标准版本,不是jQuery)

Windows 7 Pro 64位以及Windows XP Pro 32位上的

操作系统

我会很感激任何反馈,甚至是对问题的简单确认/复制。

1 个答案:

答案 0 :(得分:1)

嗯,我认为你观察到的事情与tinymce插入非破坏空间而不是空格的事实有关。 Tinymce需要这样做,以避免浏览器显示同时输入多个空格作为一个单独的空间(这是默认的浏览器行为)。 您可以通过插入多个空格来验证这一点,然后查看不可见的字符。