第一次了解到@font-face是小伙伴给我展示的功能  感觉奇妙的不得了    @font-face 是CSS3中的一个模块  使用它你就可以将你自定义的web字体 去实现一些奇妙的想法

首先先介绍一款字体制作软件   fontforge   下载地址 http://fontforge.github.io/en-US/

下面演示下一个小的使用流程

首先打开软件  选择一个字体文件(这个文件是我windows本身的文件  也可以到字体网站上去下载其他样式的字体文件)

下面是打开之后的界面

这是字体文件的一部分  当你使用这个字体的时候   5在页面中就会变成下面的样子   我们利用这个字体重新生成一个自定义的字体

在刚才打开的字体页面  选择 file->new

就显示出一个完全空的没有对应规则的字体文件(此时的后缀名是.sfd)  下面我们来编写这个字体文件

在最开始的文件中选择一个对应项 比如1下面的值  右键复制  到new出来的文件中 我将粘贴到5下面  也就是我完成了一个 5到1的对应  在页面中我使用数字5的时候 使用这个自定义字体会展示成1     (我一共完成了 1- 5  2-4  3-3  4-2 5-1 )  也就是在页面中12345 会展示成54321

     

接下来 我对0的对应项进行了设置  双击new出来的file下面的空白项  弹出窗口 在这里你就可以设置你0 对应的字体了  我打开了另一个字体文件(也是我电脑里面的字体文件)

webdings.ttf

我将其中的一个非常炫酷的摩托车 粘贴到0的下面   (当然你也可以按照这个摩托车的比例 去自己画一些图案 )

下面将new出来的文件保存为ttf格式文件    在new出来的窗口选择file->Generate fonts

在弹出的窗口中 options的选项上面 选择 TrueType(Symbol)格式 就会生成ttf格式的文件了 我保存的文件名是fun.ttf (这里面如果你选择的了别的字体样式 通过更改后缀名 是不会生成有效的字体的文件的  保存的过程中出现提示 说字体中存在错误 也选择继续save )

这样就生成了自定义的字体了  有关fontforge的介绍完毕

使用方法:

   @font-face {
font-family: <YourWebFontName>; //是你自定义的字体的名字
src: <source> [<format>][,<source> [<format>]]*; //<source> 是字体文件的位置 [<format>]帮助浏览器识别字体文件的类型
[font-weight: <weight>]; //是否粗体
[font-style: <style>];// 字体样式
}

下面在我的页面中使用我自定义的字体(我是在chrome下测试的 因为浏览器对各种字体的支持度不同 为了兼容浏览器  还要通过字体转换工具把ttf文件转换成你需要的格式)

    <style type="text/css">
@font-face {
font-family: "test";
src:url('fonts/fun.ttf') format('truetype');
} #test {
font-family:'test';
}
</style>

这样在我页面中id为test的里面的文字就会应用我的自定义的字体

<p id="test">012345</p>

出现了那个炫酷的摩托车  12345也对应成了54321

1)摩托车应用

可以在logo出使用自定义字体来代替图片

2)12345 -> 54321

可以设计成一些页面展示值的混淆      上面的例子中你打开chrome的控制台 发现显示的值还是012345   也就是其他人还是能读取我的值  我想到一个最简单的方式就是 比如后台数据是1  在传给前端的时候给个2  而2 在页面中就变成了4  这样后台数据与前端数据的对应显示 就变成了 1 - 4 的关系  但是别人看见的仍然是2 - 4的对应关系 你也可以在后边对数据进行更加复杂的数据处理 来实现数据混淆的效果

参考http://www.w3cplus.com/content/css3-font-face

使用自定义字体 @font-face 小试的更多相关文章

  1. java 引入自定义字体font后出现的硬盘吃光的问题

    有个需求要用美术字体在图片上写字 用自定义的文字有两个方法: 1. Font dynamicFont = Font.createFont(Font.TRUETYPE_FONT, InputStream ...

  2. css3 自定义字体的使用方法

    @font-face是CSS3中的一个模块,他主要是把自己定义的Web字体嵌入到你的网页中,随着@font-face模块的出现,我们在Web的开发中使用字体不怕只能使用Web安全字体,你们当中或许有许 ...

  3. iOS - 使用自定义字体-苹方字体

    苹方提供了六个字重,font-family 定义如下:苹方-简 常规体font-family: PingFangSC-Regular, sans-serif;苹方-简 极细体font-family: ...

  4. CSS 自定义字体

    移动端如何兼容UI给的字体 [toc] 移动端的默认字体 IOS 默认中文字体是Heiti SC 默认英文字体是Helvetica 默认数字字体是HelveticaNeue Android 默认中文字 ...

  5. iOS自定义字体

    1.下载字体库,如:DINCond-Bold.otf 2.双击,在mac上安装 3.把下载的字体库拖入工程中: 4.配置info.plist文件 5.xib方式设置自定义字体:Font选Custom, ...

  6. css3之自定义字体

    使用@font-face自定义字体 我们在浏览国外的一些个人网站时,总是可以发现一些非常个性的字体,比如

  7. TextView的一些高级应用(自定义字体、显示多种颜色、添加阴影)

    1.    自定义字体可以使用setTypeface(Typeface)方法来设置文本框内文本的字体,而android的Typeface又使用TTF字体文件来设置字体所以,我们可以在程序中放入TTF字 ...

  8. Windows Phone:自定义字体在xaml和代码中使用

    最近,我的小应用<认字>更新了一个能发声的版本,朋友对Speech做读音没有兴趣,反而对其中使用的楷体文字表示了兴趣,也许Speech的文章比较多,这次我对这个自定义字体在xaml和代码中 ...

  9. css自定义字体

    @font-face { font-family: 华文隶书; src: url( ../font/STLITI.eot ); /* IE */ src: url( ../font/STLITI.tt ...

随机推荐

  1. EETOP中关于Gm仿真的一些帖子的总结

    1. cadence画gm曲线 电路里,要把漏的电源dc值设置成变量,比如叫vds,计算器,info标签,点op,然后点管子,在op窗口点list,选gm,然后把这个公式弄到ADE的outputs那里 ...

  2. FFmpeg编译出错_img_convert 找不到

    问题出现在下载的ffmpeg的版本不一样,在0.4.8以前的版本中还有img_convert这个函数,新版本中用sws_getContext和sws_scale代替了.简单说明如下: 新版本的ffmp ...

  3. 更改linux文件夹的默认颜色

    我不知道正常人看Linux下面文件夹的颜色(默认为深蓝)是不是有点晕晕的,看不清楚,反正对我这样的色弱的人来说,我看着很不爽,所以我到网上去找了一下,如果修改文件夹颜色的方法,网上真实众说纷纭,很多都 ...

  4. 【Android】键盘的展开和收起

    键盘的展开和收起主要使用到类InputMethodManager:http://developer.android.com/reference/android/view/inputmethod/Inp ...

  5. Probabilistic Graphical Models

    http://innopac.lib.tsinghua.edu.cn/search~S1*chx?/YProbabilistic+Graphical+Models&searchscope=1& ...

  6. 破解android手机图形锁

    安卓手机的图形锁包括3*3,4*4,5*5的点阵,按次序连接数个点从而达到锁定/解锁的功能.以3*3为例,最少需要连接4个点,最多能连接9个点.在我们进行绘制图形的过程中,每选中这9个点中的一个点,实 ...

  7. Adroid学习系列-入门(1)

    1.  安装 安装Eclipse,安装Adroid插件.安装Adroid SDK. 2.  项目目录说明 2.1.       建立Adroid项目 与一般的Java项目一样 )src文件夹是项目的所 ...

  8. 后端码农谈前端(HTML篇)第一课:HTML概述

    一.什么是HTML? HTML不是编程语言,是用来描述网页文档(页面结构)的一种标记语言: HTML指超文本标记语言(Hyper Text Markup Language),之所以称为超文本标记语言, ...

  9. 用户授权 OAuth 2.0

    什么是OAuth OAuth是一个关于授权(Authorization)的开放网络标准,目前的版本是2.0版.OAuth适用于各种各样的包括提供用户身份验证机制的应用程序,注意是Authorizati ...

  10. Tips4:把 Inspector面板转换为Debug模式

    你知道 Inspector 的调试(debug)模式吗? 当debug模式打开后, Inspector将会把游戏物体所有的属性都显示出来,包括公有(public)和私有(private)变量. 例如, ...