如何在不渲染所有内容的情况下使用 j2html

How do I use j2html without rendering everything

我正在将我的 html 渲染代码转换为使用 j2html。虽然我喜欢这个库,但一次转换所有代码对我来说并不容易,所以有时我可能会将外部 html 转换为使用 j2html 但无法转换内部 html 到 j2html 同时。所以我希望 j2html 能够接受传递给它的已经呈现的文本,但它总是重新呈现它所以

System.out.println(p("<b>the bridge</b>"));

returns

<p>&lt;b&gt;the bridge&lt;/b&gt;</p>

有没有办法让它输出

<p><b>the bridge</b></p>

完整测试用例

import j2html.tags.Text;

import static j2html.TagCreator.b;
import static j2html.TagCreator.p;

public class HtmlTest
{
    public static void main(String[] args)
    {
        System.out.println(p(b("the bridge")));
        System.out.println(p("<b>the bridge</b>"));
    }

}
import static j2html.TagCreator.b;
import static j2html.TagCreator.p;
import static j2html.TagCreator.rawHtml;


public class HtmlTest
{
    public static void main(String[] args)
    {
        System.out.println(p(b("the bridge")));
        System.out.println(p(rawHtml("<b>the bridge</b>")));
    }

}

结果:

<p><b>the bridge</b></p>
<p><b>the bridge</b></p>

在 j2html 1.1.0 中,您可以通过编写

来禁用文本转义
Config.textEscaper = text -> text;

不过要小心..