JEditorPane разрушает исходный код HTML, используя getText () - PullRequest
0 голосов
/ 07 декабря 2018

Вопрос :
Как получить текст исходного кода из JEditorPane в формате HTML без изменения фактически просматриваемого содержимого?

Что я вижу :
JeditorPane полностью способен отрисовывать мой код, но не способен снова показать мне исходный код, который я предоставил ранее.

Проблема :
Если я отрисовываю этот HTML-кодв JEditorPane:

<html>
<head>
<style>
    html { font-size: 50%; }
</style>    
</head>
<body>
    <p>
        The font-size property supports a variety of methods for
        specifying a font size.  For example, there
        are seven different absolute size keywords, which set the
        font size relative to the user's font size preference.
    </p>
    <ul>
        <li style='font-size: xx-small;'>xx-small</li>
    </ul>
    <p>
        You can also make fonts
        <span style='font-size: larger;'>larger</span> or
    </p>
    <p>
        You can make fonts
        <span style='font-size: 200%;'>50% larger</span>
        or <span style='font-size: 75%;'>25% smaller</span> by way
        of percentages.
    </p>
    <p>
        You can even make a font
        <span style='font-size: 1.5em;'>50% larger</span>
        or <span style='font-size: 0.75em;'>25% smaller</span> by way
        of em units.
    </p>

</body>

Я получаю это ПРАВИЛЬНОЕ представление HTML этого:

enter image description here

, нозатем, если я использую метод getText () из JEditorPane или документа, источник будет изменен следующим образом:

<html>
<head>
<style type="text/css">
  <!--
    html { font-size: 50% }
  -->
</style>

</head>
<body>
<p>
  The font-size property supports a variety of methods for specifying a 
  font size. For example, there are seven different absolute size 
  keywords, which set the font size relative to the user's font size 
  preference.
</p>
<ul>
  <li>
    xx-small
  </li>
</ul>
<p>
  You can also make fonts <span><font size="larger">larger</font></span> or
</p>
<p>
  You can make fonts <span><font size="200%">50% larger</font></span> or <span><font size="75%">25% 
  smaller</font></span> by way of percentages.
</p>
<p>
  You can even make a font <span><font size="1.5em">50% larger</font></span> 
  or <span><font size="0.75em">25% smaller</font></span> by way of em 
  units.
</p>
</body>
</html>

и вывод представления этого кода будет такой НЕПРАВИЛЬНОЙ визуализацией:

enter image description here

...