3

これは非常に具体的であるため、ご容赦ください。注意深くお読みください。

問題:

PDF ファイルを開き、改行を含むテキストを選択してコピーし、Google Chrome ブラウザーの TinyMCE テキストエリアに貼り付けます。次に、改行を削除し、同じポイントにスペースを挿入します。追加されたスペースは、TinyMCE で通常の「スペース バー」キー ストロークを使用した場合でも改行されません。

改行しないスペースがあることをどのように知ることができますか?

TinyMCE 実装の最初の行にある [非表示の文字を表示] ボタンをクリックできます (以下のリンクを参照)。TinyMCE では、テキストを変更して変更を確認するたびに、そのオプションをオフにしてから再度オンにする必要があることに注意してください

分割されていないスペースはオレンジ色で表示され、通常のスペースは通常どおり表示されます。

私がこれまでに見つけたもの:

改行の後に来る文字を削除して、その文字をもう一度入力すると、通常のスペースを挿入できます。問題はそのキャラクターに付いているようです。改行の前にある文字を削除しても、問題は解決しません。つまり、スペースを削除して新しいスペースを入力しても、改行されないスペースのままです。

また、テキストを MySQL データベースに保存し、TinyMCE で再度読み取ると、まだ問題が発生し、「隠し」文字が改行に続く文字に付けられているという印象が強まります (テストでは保存されません)。もちろんページ)。

複製する

もちろん、自分で試すこともできますが、ここに私のテストベッドがあります: http://www.roseback.com/test/tinymce4.html

多くの製品や時代のグラフィック デザイナーから受け取った多くの PDF ファイルでテストしました。これらの PDF は、印刷に使用されるファイルであり、その使用に問題はありません。ここにサンプル ファイルをアップロードしました: http://www.roseback.com/test/languedoc.pdf。「Ce film exceptionnel」で始まる最初の段落でテストします。ただし、Web からのランダムな PDF ファイルもテストし、毎回問題を再現しました。したがって、独自のファイルを試して複製できない場合は、興味深いかもしれません。

環境:

Web ページ:ページは HTML5、UTF-8 です。

元のページでは、ページは PHP を介して提供され、テキストエリアのコンテンツは MySQL 5.1 DB から取得されます。DB 接続は PHP で UTF-8 に設定され、テーブルとテキスト フィールドの内容は utf8_unicode_ci にあります。

テスト ページにはコンテンツも保存もありませんので、DB は関与しません。

ブラウザ:クローム。Firefox や Opera では発生しません (他の場所ではテストされていません)

TinyMCE:バージョン 3 およびバージョン 4 (両方とも標準バージョンであり、jQuery ではありません)

OS: Windows 7 Pro 64 ビットおよび Windows XP Pro 32 ビット

問題の簡単な確認/再現であっても、フィードバックをいただければ幸いです。

4

1 に答える 1