CefSharp 不支持 UTF-8 BOM 的解决办法

解决UTF-8 BOM问题:CefSharp网页控件中的字符错位
本文分享了如何在使用CefSharp加载带BOM的UTF-8网页字符串时,避免页面出现多余的&#FEFF;字符导致的布局问题,通过提供正确的编码设置来修复此隐蔽问题。

经测试,如果给 CefSharp 网页控件传递一个带 UTF-8 BOM 的网页字符串(我是读自资源文件的,文件最前面几个字节是 EFBBBF),输出到页面后就会多出一段 &#FEFF; 的正文字符,导致页面错位。

解决办法:

var html = LoadFromFile(....);
webview.LoadHtml(
    html,
    folder,     // 如果用到本地图片文件,这个参数必填,否则图片出不来
    new UTF8Encoding(false)   // 这个参数false表示去除 UTF8 BOM
);

这个问题很隐蔽,找遍全网也没有答案,最后解析读出的资源文件字节才发现这个问题,并顺藤摸瓜解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

土豆湿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值