У меня есть HTML-документ, и я хочу отрендерить его с помощью Flutter с помощью плагина flutter_html.Я хочу по-разному отображать разные типографии.Например.Я хочу иметь другой шрифт и размер для жирного шрифта и другой для не выделенного жирным шрифтом.
Я попытался прочитать документацию, которая имеет свойство для конструктора Html под названием customRenderer, я не мог понять реализацию для него.
Ниже приведен код из документации.
Html(
data: """
<!--For a much more extensive example, look at example/main.dart-->
<div>
<h1>Demo Page</h1>
<p>This is a fantastic nonexistent product that you should buy!</p>
<h2>Pricing</h2>
<p>Lorem ipsum <b>dolor</b> sit amet.</p>
<h2>The Team</h2>
<p>There isn't <i>really</i> a team...</p>
<h2>Installation</h2>
<p>You <u>cannot</u> install a nonexistent product!</p>
<!--You can pretty much put any html in here!-->
</div>
""",
padding: EdgeInsets.all(8.0),
backgroundColor: Colors.white70,
defaultTextStyle: TextStyle(fontFamily: 'serif'),
linkStyle: const TextStyle(
color: Colors.redAccent,
),
onLinkTap: (url) {
},
customRender: (node, children) {
if(node is dom.Element) {
switch(node.localName) {
case "video": return Chewie(...);
case "custom_tag": return CustomWidget(...);
}
}
},
)
Если я просто смогу изменить размер шрифта и семейство шрифтов в соответствии с именем тега, это подойдет.