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

网站建设所需材料深圳搜索引擎优化收费

网站建设所需材料,深圳搜索引擎优化收费,全球域名注册商,做vr网站要使用FontFaceObserver来加载设置项目本地的字体,先确保字体文件位于项目中或者可以从服务端获取到,这样就可以使用FontFaceObserver来检测并加载这些字体 主要有以下几步: npm或者yarn安装引入fontfaceobserver字体资源引入和font-face配置…

要使用FontFaceObserver来加载设置项目本地的字体,先确保字体文件位于项目中或者可以从服务端获取到,这样就可以使用FontFaceObserver来检测并加载这些字体
主要有以下几步:

  1. npm或者yarn安装引入fontfaceobserver
  2. 字体资源引入和font-face配置
  3. 使用FontFaceObserver加载字体并设置fontFamily

下面写个伪代码的示例:
首先引入字体资源,css配置字体

font.css
@font-face {font-family: '苹方 Medium';src: url('./cn/苹方 Medium.otf');
}
@font-face {font-family: '新宋体';src: url('./cn/新宋体.ttc');
}

这个style样式可以写在需要设置字体的组件中,当然也可以分开以文件的方式引入,我建议分开更好,更符合模块化

font.js
/** @Description: 字体文件列表*/const cnList = [{name: '苹方 Medium',fontFamily: '苹方 Medium',},{name: '新宋体',fontFamily: '新宋体',},
];export default [...cnList];

如果用请求实现字体列表的方式实现的话,这个可以写在需要设置字体的组件中,当然也可以分开以文件的方式引入,这种本地字体更好,我建议分开更好,更符合模块化

如过需要从服务端或者其他服务引用文件字体列表
目标文件.vue

<!-- 字体 -->
<div class="left font-selector"><Select v-model="fontAttr.fontFamily" @on-change="changeFontFamily"><Option v-for="item in fontFamilyList" :value="item.name" :key="`font-${item.name}`"><div class="font-item" v-if="!item.preview">{{ item.name }}</div><div class="font-item" v-else :style="`background-image:url('${item.preview}');`">{{ !item.preview ? item : '' }}<!-- 解决无法选中问题 --><span style="display: none">{{ item.name }}</span></div></Option></Select>
</div>//将上面编写的字体列表js文件引入
import fontList from '@/assets/fonts/font';
const fontFamilyList = ref([...fontList]);//字体请求
const getFontList = async () => {const res = await axios.get('xxx/font.json');console.log('font response', res);fontFamilyList.value = [...fontFamilyList.value,...Object.entries(res.data).map(([, value]) => value),];
};// 修改字体
const changeFontFamily = (fontName) => {console.log('changeFontFamily fontName', fontName);if (!fontName) return;// 字体加载并设置const loadingInstance = ElLoading.service(options)const font = new FontFaceObserver(fontName);console.log('font', font);font.load(null, 15000).then(() => {console.log('字体加载成功');document.documentElement.classList.add('fonts-loaded')document.body.classList.add('font-loaded');loadingInstance.close()}).catch((err) => {console.log(err);loadingInstance.close()});
};<style scoped lang="less">
@import url('@/assets/fonts/font.css');
</style>

最简单的用法如下:

<script>
const font = new FontFaceObserver('自定义字体名')
font.load().then().catch()
</script><style>@font-face {font-family: 自定义字体名;src: url('字体包路径');}
</style>

这样一个前端字体动态设置的功能就实现了。

http://www.khdw.cn/news/56817.html

相关文章:

  • 企业网站怎么注册官网腾讯新闻最新消息
  • 深圳做网站报价苏州seo建站
  • 广州专业网站建设有哪些长春建站程序
  • 做网站 注册那类的商标学历提升哪个教育机构好一些
  • wordpress themes.php网站自然优化
  • 公司备案网站负责人是谁百度seo培训
  • 长春真正免费的建站系统曲靖seo建站
  • 提高网站的权重的最佳方法标题优化方法
  • 外贸专用网站贵阳网络推广排名
  • 做网站选哪家好一键优化软件
  • 国外做网站被动收入提交百度一下
  • 服装网站网络建设和硬件资源cms系统
  • 海外学校网站建设品牌推广策划方案怎么写
  • 龙岗做网站哪里找惠州seo收费
  • 温州网站建设哪家好网站怎么进入
  • 购物网站开发案例教程品牌公关案例
  • 网站滑动效果怎么做的今日特大新闻
  • 企业为什么做网站广州网络优化最早的公司
  • 怎么用电脑做网站服务器吗百度文库官网首页
  • 厦门英文网站建设合肥网络推广
  • jspajax网站开发典型实例宁波网站建设方案推广
  • 北京自助企业建站模板推广产品引流的最佳方法
  • 什么是建设网站的主题免费发布平台
  • 磁力网站怎么做的源码百度招聘网最新招聘信息
  • 义乌小商品市场网seo顾问是什么
  • 上海免费网站建站模板松松软文
  • python建设购物网站上海疫情最新情况
  • 简单的做图网站百度seo一本通
  • 网站建设加工天津天狮网络营销课程
  • wordpress商业模板个人正规seo排名外包