有字庫SDK

一、介紹

1.中文動態(tài)子集化服務(wù)

SDK其實是針對不同語言(.Net、Java、PHP、NodeJs),將有字庫的API接口打包封裝,形成更方便用戶后臺程序調(diào)用有字庫的動態(tài)子集化服務(wù)的工具包(您也可以直接通過API接口方式自己寫Post方法來調(diào)用有字庫的動態(tài)子集化服務(wù)的API接口),SDK將實體類型的參數(shù)轉(zhuǎn)為API接口字符串類型的參數(shù),然后用內(nèi)置的Post方法提交到對應(yīng)的API接口,當(dāng)收到API接口的返回值(json類型)時,將返回值實體化。

有字庫專注于動態(tài)子集化方案的應(yīng)用與優(yōu)化,本文檔即是有字庫面向后端程序提供的動態(tài)子集化服務(wù)的SDK文檔。

用戶通過后端程序調(diào)用有字庫的SDK,提交頁面內(nèi)容,有字庫根據(jù)所提交的內(nèi)容生成相對應(yīng)的專屬子集字體文件。當(dāng)內(nèi)容在前臺顯示時,引用這個子集字體文件,即可使頁面內(nèi)容產(chǎn)生預(yù)期的字體效果。

2.工作流程

???①用戶用后端程序調(diào)用SDK,提交動態(tài)內(nèi)容到有字庫的子集化(裁切)服務(wù)器
???②服務(wù)器接收到所提交內(nèi)容后,根據(jù)內(nèi)容裁剪出對應(yīng)的小字體文件,并轉(zhuǎn)換為4種通用字體格式(woff、eot、ttf、svg)
???③服務(wù)器將所有字體文件按用戶指定的地址上傳至阿里云CDN
???④用戶使用字體時,用自定義的路徑,參照@font-face格式來拼出能兼容所有瀏覽器的@font-face語句

3.@font-face語句

@font-face語句是CSS3中的一個功能模塊,是所有瀏覽器天然支持的CSS語句。它的作用是將一個遠程字體文件加載到當(dāng)前頁面,并且定義成一個字體,使得前端頁面能夠像使用本地字體一樣使用該字體。
所以,@font-face語句是實現(xiàn)在線字體效果的核心代碼。

4. 顯示字體效果

用戶自定義字體存放路徑,當(dāng)需要顯示字體效果時,可以根據(jù)自己所定義的路徑拼組出@font-face語句,然后將語句輸出到前端頁面,即可使內(nèi)容顯示字體效果。

二、參數(shù)及返回值

SDK的參數(shù)與返回值的數(shù)據(jù)結(jié)構(gòu)與API接口是一樣的,可以參考API接口文檔上關(guān)于參數(shù)與返回值的介紹。

API接口的返回值是json數(shù)據(jù),而SDK的返回值則是實體類,兩者的字段結(jié)構(gòu)相同。

API接口的參數(shù)需要用戶將數(shù)據(jù)拼接成一個字符串,而SDK的參數(shù)是實體化的類,用戶將數(shù)據(jù)賦值給實體化類,兩者的字段結(jié)構(gòu)相同。

三、SDK下載

.net v3.5+(兼容.NET Framework 3.5及以上所有版本)
.net v4.5+(兼容.NET Framework 4.5及以上所有版本;增加對異步調(diào)用[使用async和await]的支持)
java
php  
nodejs

四、GitHub代碼示例

Example-Net? ?? ?  Example-Java? ?? ?      Example-PHP ? ?? ?  Example-NodeJS

五、Demo下載

Demo-Net? ?? ? Demo-Java? ?? ? Demo-PHP  ? ? Demo-NodeJs      

請先同意托管協(xié)議