由于中文字体文件过大,有字库采用“按需截取”(根据页面内容把字体中不需要的字型删除掉)的方案,将中文字体压缩成和英文字体一样小巧玲珑。
“按需截取”生成的中文字体只有十几K至一百多K,而“整套嵌入”的中文字体一般3M至十几M,因此页面响应速度上“按需截取”狂甩“整套嵌入”好几条街。
“按需截取”是每一张页面都配有专属的字体文件(字体子集),即每打开一张页面就会加载与之对应的字体文件,而"整套嵌入“则是一次加载,整站通用。
有字库专注于“按需截取“方案的应用及优化,可以根据应用场景为用户打造全套字体解决方案,不提供“整套嵌入”服务。该文档即是“按需截取”方案的API调用文档。程序调用API提交页面内容,有字库服务将自动为您生成与内容相对应的专属字体文件。当内容在前台显示时,您只需要将这个已生成的字体文件随内容一起加载至页面,即可实现中文在线字体的应用效果。
1.可传递多个自定义路径和内容 一次生成[ 异步]
1.1接口方法:CreateBatchWoffWebFontAsync()
1.2请求参数
参数字段 | 类型 | 必填 | 描述 |
---|---|---|---|
ApiKey | string | 是 | 系统规定参数,每个用户有一个固定ApiKey,用于用户身份验证,使用时请注意保密,防止被盗用。 从后台获取:www.webfont.com/apiKey/index |
Datas | List<T> | 是 | 内容的集合 |
请求参数子结构(请求参数中的Datas集合字段)
Datas集合字段 | 类型 | 必填 | 描述 |
---|---|---|---|
Url | string | 是 | 自定义存储目录路径。不允许传递文件扩展名,格式:a/b/filename,重复将被覆盖,用户需要自己确认唯一性 |
Content | string | 是 | 要生成字体的文字内容 |
AccessKey | string | 是 | 系统规定参数,从有字库字体使用页中"卢教"模式中获取,$youziku.load 语句中第2个参数即为AccessKey。 |
1.3请求示例
参数格式
url = "http://service.webfont.com/batchCustomWebFont/createBatchWoffWebFontAsync";
postStr =“ApiKey= ################################
&Datas[0][Content]=有字库&Datas[0][Url]=my/a&Datas[0][AccessKey]= xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
&Datas[1][Content]=好字体&Datas[1][Url]=my/b&Datas[1][AccessKey]= yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy"
备注:请求参数体为标准的Post参数格式 ;如果有多个标签,只需按索引拼接即可;索引必须从0开始
返回结果(Json格式)
1.4引用字体
2响应结果集
2.1结果字段介绍
字段 | 结果 |
---|---|
Code | 状态码 |
ErrorMessage | 错误消息 |
2.2结果中的Code状态码介绍
200 | 请求成功 |
500 | 有字库S系统繁忙,请稍后再试! |
403 | 有字库服务器检测到当前Datas总数过多,请控制在50个以内! |
有字库服务器没有从请求参数中找到任何Datas数据,请检查! | |
有字库服务器无法识别Post参数,请检查代码是否正确! | |
有字库无法通过身份验证,请升级会员或检查Apikey是否填写正确! | |
有字库无法验证AccessKey,请检查是否填写正确! |
1.直接返回所有格式的@fontface
1.1接口方法GetFontFace()
1.2请求参数
参数字段 | 类型 | 必填 | 描述 |
---|---|---|---|
ApiKey | string | 是 | 系统规定参数,每个用户有一个固定ApiKey,用于用户身份验证,使用时请注意保密,防止被盗用。 从后台获取:www.webfont.com/apiKey/index |
AccessKey | string | 是 | 系统规定参数,从有字库字体使用页中“卢教”模式中获取,$youziku.load 语句中第2个参数即为AccessKey。 例如:$youziku.load("#id1","128c10eec9b647288c01e4f95a1f864e","fontanme"); |
Content | string | 是 | 要生成字体的文字内容 |
Tag | string | 否 | 选择器(标签的class名或id名)不填写则直接返回纯@font-face语句,用户需同时获取另一返回值(FontFamily),将FontFamily的值设置到对应标签下,方能生效;填写则返回已设置到对应标签下的完整语句,自动生效。 |
UseRanFontFamily | bool | 否 | 是否使用随机产生的font-family。默认值为false(使用原生font-family)。同一个页面上,每个@font-face语句中的font-family值必须唯一。如果有重复,则重复的@font-face语句中只有最后一个有效。随机font-family则可以有效防止font-family值重复。 |
1.3请求示例
1.3.1不填写Tag参数
参数格式
url = "http://service.webfont.com/webFont/getFontFace";
postStr ="ApiKey=################################& AccessKey= xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx & Content= 有字库,好字体";
备注:请求参数为标准的Post参数格式;
返回结果(Json格式)
1.3.2填写Tag参数
参数格式
url = "http://service.webfont.com/webFont/getFontFace";
postStr ="ApiKey= ################################&AccessKey= xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx &Content=有字库,好字体&Tag=.class1";
备注:请求参数为标准的Post参数格式;
返回结果(Json格式)
2直接返回流(woff流)的@fontface
2.1接口方法GetWoffBase64StringFontFace()
2.2请求参数(同上1.2)
2.3请求示例
参数格式
url = "http://service.webfont.com/webFont/getWoffBase64StringFontFace";
postStr = "ApiKey= ################################& AccessKey= xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx &Content= 有字库,好字体";
备注:请求参数为标准的Post参数格式;
返回结果(Json格式)
3响应结果集
3.1结果字段介绍
字段 | 结果 |
---|---|
FontFamily | 系统生成的FontFamily |
FontFace | 选择器对应的@fontface语句 |
Code | 状态码 |
Tag | 选择器(与提交的参数对应) |
ErrorMessage | 错误消息 |
3.2结果中的Code状态码介绍
200 | 请求成功 |
500 | 有字库D系统繁忙,请稍后再试! |
有字库S系统繁忙,请稍后再试! | |
404 | 有字库服务器无法找到该FontId对应的字体,请检查是否输入正确! |
有字库服务器无法提供被禁用字体的服务,请选择其他字体! | |
有字库服务器无法提供未同意托管协议的字体的服务,请选择其他字体! | |
403 | 有字库服务器无法识别Post参数,请检查代码是否正确! |
有字库无法通过身份验证,请升级会员或检查Apikey是否填写正确! | |
有字库无法验证AccessKey,请检查是否填写正确! |
1.直接返回所有格式的@fontface
备注:可传递多个标签和内容一次生成多个@fontface
1.1接口方法:GetBatchFontFace()
1.2请求参数
参数字段 | 类型 | 必填 | 描述 |
---|---|---|---|
ApiKey | string | 是 | 系统规定参数,每个用户有一个固定ApiKey,用于用户身份验证,使用时请注意保密,防止被盗用。 从后台获取:www.webfont.com/apiKey/index |
Tags | List<T> | 是 | 选择器及其内容的集合 |
请求参数子结构(请求参数中的Tags集合字段)
Tags集合字段 | 类型 | 必填 | 描述 |
---|---|---|---|
AccessKey | string | 是 | 系统规定参数,从有字库字体使用页中"卢教"模式中获取,$youziku.load 语句中第2个参数即为AccessKey。 |
Tag | string | 是 | 选择器(标签的class名或id名) |
Content | string | 是 | 要生成字体的文字内容 |
UseRanFontFamily | bool | 否 | 是否使用随机产生的font-family。默认值为false(使用原生font-family)。同一个页面上,每个@font-face语句中的font-family值必须唯一。如果有重复,则重复的@font-face语句中只有最后一个有效。随机font-family则可以有效防止font-family值重复。 |
1.3请求示例
参数格式
url = "http://service.webfont.com/batchWebFont/getBatchFontFace";
postStr =“ApiKey= ################################
& Tags[0][Content]=有字库& Tags[0][Tag]=.class1& Tags[0][AccessKey]= xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
& Tags[1][Content]=好字体& Tags[1][Tag]=#id1& Tags[1] [AccessKey]= yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy"
备注:请求参数体为标准的Post参数格式 ;如果有多个标签,只需按索引拼接即可;索引必须从0开始
返回结果集(Json格式)
2直接返回仅woff格式的@fontface
2.1接口方法GetBatchWoffFontFace ()
2.2请求参数(同上1.2)
2.3请求示例
参数格式
url = "http://service.webfont.com/batchWebFont/getBatchWoffFontFace";
postStr =“ApiKey= ################################
&Tags[0][Content]=有字库&Tags[0][Tag]=.class1&Tags[0][AccessKey]= xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
&Tags[1][Content]=好字体&Tags[1][Tag]=#id1&Tags[1][AccessKey]= yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy"
备注:请求参数体为标准的Post参数格式 ;如果有多个标签,只需按索引拼接即可;索引必须从0开始
返回结果集(Json格式)
3响应结果集
3.1结果字段介绍
字段 | 结果 |
---|---|
FontfaceList | 选择器对应的@fontface语句集合 |
Code | 状态码 |
ErrorMessage | 错误消息 |
3.2结果中的FontfaceList介绍
FontFamily | 系统生成的FontFamily |
Tag | 选择器(与提交的参数对应) |
FontFace | 选择器对应的@fontface语句 |
3.3结果中的Code状态码介绍
200 | 请求成功 |
500 | 有字库D系统繁忙,请稍后再试! |
有字库S系统繁忙,请稍后再试! | |
404 | 有字库服务器无法找到该FontId对应的字体,请检查是否输入正确! |
有字库服务器无法提供被禁用字体的服务,请选择其他字体! | |
有字库服务器无法提供未同意托管协议的字体的服务,请选择其他字体! | |
403 | 有字库服务器检测到当前Tag总数过多,请控制在50个以内! |
有字库服务器没有从请求参数中找到任何Tags数据,请检查! | |
有字库服务器无法识别Post参数,请检查代码是否正确! | |
有字库无法通过身份验证,请升级会员或检查Apikey是否填写正确! | |
有字库无法验证AccessKey,请检查是否填写正确! |