體驗地址:https://jrainlau.github.io/sp...
項目地址:https://github.com/jrainlau/s...git
一個可以把字符串編碼成png圖片,或者從png圖片中解碼出字符串的超輕量級開源庫,總代碼數甚至不超過100行!github
經過npm
安裝npm
npm install sphinx.js
經過<script></script>
標籤引入瀏覽器
<script src="sphinx.js"></script>
值得注意的是,由於
SphinxJS
使用了ES2015的Promise
以及其餘很棒的特性,這意味着須要你的瀏覽器提供支持。不然的話,你可能須要Babel
或者一些別的工具去構建你的代碼。工具
SphinxJS
同時支持以AMD
,CommonJS
以及ES6模塊
的方式進行引用。編碼
定義一個字符串Hello Sphinx!
,咱們將對它進行編碼url
let base64URL = new Sphinx().encode('Hello Sphinx!')
而後你將獲得一串base64
編碼spa
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAADCAYAAABWKLW/AAAAJklEQVQYV2P0SM35r8K1heE5owcDY2Zexf8dc1Yw/BdjYGBkQAIA+r4JjQKvLx4AAAAASUVORK5CYII=
到這一步,編碼便已經完成了。code
正如你所看到的那樣,encode()
方法返回一張圖片的base64
編碼。對象
定義一串圖片的url:
let url = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAADCAYAAABWKLW/AAAAJklEQVQYV2P0SM35r8K1heE5owcDY2Zexf8dc1Yw/BdjYGBkQAIA+r4JjQKvLx4AAAAASUVORK5CYII='
而後咱們對其進行解碼!
new Sphinx().decode(url) .then((info) => { console.log(info) // Hello Sphinx! })
decode()
方法會返回一個Promise
對象,它包含了從圖片中解密出來的字符串信息。
new Sphinx()
可以接收一個用於定義圖片類型的配置對象
config {Object} 可選
默認值: {img: 'png'}
new Sphinx({img: 'bmp'})
MIT