当前位置: 首页 > wzjs >正文

南通企业自助建站官方网站是什么意思

南通企业自助建站,官方网站是什么意思,医疗网站前置审批查询,如何建立公司企业网站针对 WebView 强制使用本地字体的完整解决方案,需要从 字体加载机制、CSS 注入时机 和 兼容性处理 三个维度进行优化。以下是分步骤的终极方案: 一、核心方案:拦截网络请求替换字体(100% 覆盖) 通过 shouldIntercept…

针对 WebView 强制使用本地字体的完整解决方案,需要从 字体加载机制、CSS 注入时机 和 兼容性处理 三个维度进行优化。以下是分步骤的终极方案:

一、核心方案:拦截网络请求替换字体(100% 覆盖)

通过 shouldInterceptRequest 拦截所有字体请求,直接返回本地字体文件:

YourActivity.java

webView.setWebViewClient(new WebViewClient() {@Overridepublic WebResourceResponse shouldInterceptRequest(WebView view, WebResourceRequest request) {String url = request.getUrl().toString().toLowerCase();// 拦截所有字体请求(支持常见字体格式)if (url.endsWith(".ttf") || url.endsWith(".otf") || url.endsWith(".woff") || url.endsWith(".woff2")) {try {// 从 assets 加载本地字体文件(示例:替换所有请求为同一个字体)InputStream is = getAssets().open("fonts/YourFont.ttf");return new WebResourceResponse("font/ttf", "UTF-8", is);} catch (IOException e) {e.printStackTrace();}}return super.shouldInterceptRequest(view, request);}@Overridepublic void onPageFinished(WebView view, String url) {// 补充 CSS 强制覆盖(防止网页内联样式覆盖)String css = "*:not([class*='icon']):not([class*='symbol']) { " +"font-family: 'YourFont' !important; " +"}";String js = "(function() {" +"var style = document.createElement('style');" +"style.innerHTML = '" + css + "';" +"document.head.appendChild(style);" +"})()";view.evaluateJavascript(js, null);}
});

---

二、关键增强措施

1. 字体格式兼容性处理

修改 shouldInterceptRequest 中返回的 MIME 类型:  

   // 根据实际文件类型返回正确的 MIMEString mimeType = "font/woff";if (url.endsWith(".ttf")) mimeType = "font/ttf";else if (url.endsWith(".otf")) mimeType = "font/otf";

2. 多字体策略(针对不同文字类型)   

// 根据请求路径返回不同字体if (url.contains("zh") || url.contains("chinese")) {return new WebResourceResponse(..., getAssets().open("fonts/zh_font.ttf"));} else {return new WebResourceResponse(..., getAssets().open("fonts/en_font.ttf"));}

3. 防缓存污染

在 WebView 设置中禁用缓存:

  

 webView.getSettings().setCacheMode(WebSettings.LOAD_NO_CACHE);

---

三、终极保障方案

1. 字体预加载策略

在 WebView 初始化时提前注入字体定义:  

   String preloadJS = "var style = document.createElement('style');" +"style.textContent = '@font-face { font-family: YourFont; src: url(\"file:///android_asset/fonts/YourFont.ttf\"); }';" +"document.head.appendChild(style);";webView.evaluateJavascript(preloadJS, null);

  • 暴力 DOM 更新

定时检查并强制更新字体:   

   String watchdogJS = "setInterval(function() {" +"document.querySelectorAll('*').forEach(el => {" +"el.style.fontFamily = 'YourFont !important';" +"})" +"}, 1000);";webView.evaluateJavascript(watchdogJS, null);

四、调试技巧

1. 启用 WebView 调试   

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {WebView.setWebContentsDebuggingEnabled(true);}

通过 Chrome 的 chrome://inspect 实时调试

2. 日志监控

在 shouldInterceptRequest 中添加日志:

   

Log.d("FONT_INTERCEPT", "Intercepted font request: " + url);

五、注意事项

1. 字体授权

确保本地字体文件有合法的使用授权

2. 性能优化

大字体文件建议使用 woff2 格式并压缩

  • 排除图标字体

在 CSS 选择器中添加排除规则(示例中已包含 :not([class*='icon']))

此方案通过 请求拦截 + CSS 注入 + DOM 监控 三重保障,可应对 99% 的网页场景。若仍有个别元素未被覆盖,可通过 Chrome 远程调试具体分析元素样式优先级。


文章转载自:

http://RGd1gHIV.txfzt.cn
http://C9VIu6lj.txfzt.cn
http://C9kd18E3.txfzt.cn
http://7fGuVIsC.txfzt.cn
http://FpvieSGF.txfzt.cn
http://0qQLIcsp.txfzt.cn
http://bwczc0dB.txfzt.cn
http://vHc87qUY.txfzt.cn
http://TFHPKGSF.txfzt.cn
http://4RSHtSlB.txfzt.cn
http://EuC5x8m4.txfzt.cn
http://Er1LiFWR.txfzt.cn
http://i7fCpjH5.txfzt.cn
http://ClQLmoS8.txfzt.cn
http://2M7d0rxe.txfzt.cn
http://BRwoNN23.txfzt.cn
http://tNjYIFDV.txfzt.cn
http://wqabVSe5.txfzt.cn
http://o44as1Iv.txfzt.cn
http://I6wrQWxV.txfzt.cn
http://24x8oa1X.txfzt.cn
http://CjiUlqzs.txfzt.cn
http://C1AEILD6.txfzt.cn
http://iaa6uoMW.txfzt.cn
http://vt2GaYk2.txfzt.cn
http://7q8cCBwK.txfzt.cn
http://GLLNWR9k.txfzt.cn
http://L9OF1PVz.txfzt.cn
http://qJK9hcYo.txfzt.cn
http://6pGls3Tv.txfzt.cn
http://www.dtcms.com/wzjs/636716.html

相关文章:

  • 有没有高质量的网站都懂的企业网络营销策略设计
  • 济南智能网站建设哪家便宜物联网应用技术就业前景
  • 做互联网网站赚钱吗做仿网站公司
  • 网站域名选择的原则地址定位怎么申请开通
  • php做直播类型的网站wordpress 全宽页面
  • 网站空间空间正保建设工程网站
  • 怎么做提货网站一个小程序的项目大概多少钱
  • 公司做网站多效能建设网站
  • 机械网站建设方案网站界面设计案例
  • 天津网站建设外贸嘉兴互联网公司
  • 海珠建网站多少钱网站网页设计0基础学
  • 做网站用的什么服务器吗在wordpress添加算法
  • 安徽建设厅网站节能北备案wordpress模版seo
  • dw网站制作模板万网制作网站吗
  • asp网站知道用户名是admin网站连通率
  • 在住房和城乡建设部网站查询网站建设 优惠
  • 深圳模具外贸网站建设陕西的网站建设公司哪家好
  • 深圳网站建设怎样做特殊字体
  • 珠海公司网站域名注册微信小程序官网平台入口官网登录
  • 医院做网站运维办网站用什么证件
  • 做一元云购网站方维不变心心的初心
  • 内蒙古赤峰市建设局网站外贸流程
  • 青岛做家纺的公司网站西安企业资本服务中心有限公司
  • 部队网站建设方案上海公司沪牌价格
  • 做汽车价格的网站建设asp网站检查
  • win7下asp.net网站发布网站有备案 为企业
  • 南京专业网站设计公司价格网站建设 全包
  • 内网网站搭建工具wordpress标签调用代码
  • 网站制作价格东莞国外中文网站域名注册商
  • 企业做网站排名温州大凯工艺品有限公司英文网站