摘要:但是,當(dāng)我在網(wǎng)頁(yè)中使用圖片時(shí),問題出現(xiàn)了。原因后發(fā)現(xiàn),是蘋果對(duì)圖片進(jìn)行了優(yōu)化處理,具體看這篇文章查看,在文章中我們可以了解到一些有用信息。的功能很明確,就是用來還原被蘋果處理過的圖片。
最近做項(xiàng)目遇到一個(gè)需求:解析apk和ipa包,然后把里面的icon上傳到服務(wù)器。
問題解析上傳過程比較簡(jiǎn)單,我使用JSZip對(duì)apk和ipa進(jìn)行解壓,然后把找到里面的icon上傳到服務(wù)器。但是,當(dāng)我在網(wǎng)頁(yè)中使用圖片時(shí),問題出現(xiàn)了。對(duì)于apk中的icon,沒有任何問題,但是對(duì)于ipa中解析出來的圖片,在safari中可以正常顯示,在其他任何瀏覽器去無法顯示。
原因Google后發(fā)現(xiàn),是蘋果對(duì)png圖片進(jìn)行了優(yōu)化處理,具體看這篇文章(查看),在文章中我們可以了解到一些有用信息:
解決方案Apple uses PNGCursh open source library to crush png images inside iPA files。
作為一個(gè)前端工程師,我希望用javascript解決這個(gè)問題。其實(shí)之前國(guó)外已經(jīng)有人去解決了,NodeJS-PNGDefry就是可以,可惜這個(gè)太久沒維護(hù),已經(jīng)跑不起來。
找不到可用的,我只能自己動(dòng)手豐衣足食,自己寫一個(gè)。因此有了node-pngdefry。node-pngdefry的功能很明確,就是用Javascript來還原被蘋果處理過的png圖片。
node-pngdefry用法很簡(jiǎn)單,支持命令行和常規(guī)的Node.js:
命令行用法install:
$ npm install -g pngdefry
then run:
$ pngdefry -i icon.png -o icon.new.png在Node.js中使用
$ npm install pngdefry --save-dev
var pngdefry = require("pngdefry"); var path = require("path"); var input = path.join(__dirname, "icon.png"); var output = path.join(__dirname, "icon.new.png"); pngdefry(input, output, function(err) { if (err) { return; } console.log("success"); });Test
$ npm test項(xiàng)目地址
node-pngdefry
感謝最后感謝上面提到的文章的作者Jongware。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/78660.html
摘要:背景介紹使用將包括安卓和上傳到七牛上傳所以不考慮數(shù)據(jù)處理使用后臺(tái)得到七牛上傳基于下面不詳述如何使用參見七牛上傳的簡(jiǎn)單案例也不詳述,參見官網(wǎng)事例很清楚了。指定上傳的目標(biāo)資源空間和資源鍵的長(zhǎng)度最大為字節(jié)。,表示只允許用戶上傳指定的文件。 背景介紹 使用JS將APP(包括安卓和IOS)上傳到七牛 (上傳APP所以不考慮數(shù)據(jù)處理) uptoken使用JAVA后臺(tái)得到 七牛上傳基于pluplo...
摘要:如下圖所示一重繪與回流前端性能優(yōu)化最關(guān)鍵的就是減少頁(yè)面的重繪與回流。很明顯就是少了一步,這是因?yàn)榘褧?huì)觸發(fā)回流的屬性用替代,這樣就使渲染的過程減少了這一步,使渲染的時(shí)間減少?gòu)亩岣咝阅堋? 我們今天來說說前端圖形渲染優(yōu)化,因?yàn)槲医酉聛淼臅r(shí)間可能要開始研究webgl方面的東西,所以就在這里把之前做過的H5做一個(gè)總結(jié),現(xiàn)同步發(fā)布于GERRY_BLOG,TiMiGerry-知乎,轉(zhuǎn)載請(qǐng)保留鏈接。...
摘要:如下圖所示一重繪與回流前端性能優(yōu)化最關(guān)鍵的就是減少頁(yè)面的重繪與回流。很明顯就是少了一步,這是因?yàn)榘褧?huì)觸發(fā)回流的屬性用替代,這樣就使渲染的過程減少了這一步,使渲染的時(shí)間減少?gòu)亩岣咝阅堋? 我們今天來說說前端圖形渲染優(yōu)化,因?yàn)槲医酉聛淼臅r(shí)間可能要開始研究webgl方面的東西,所以就在這里把之前做過的H5做一個(gè)總結(jié),現(xiàn)同步發(fā)布于GERRY_BLOG,TiMiGerry-知乎,轉(zhuǎn)載請(qǐng)保留鏈接。...
閱讀 2926·2021-11-19 09:40
閱讀 3610·2021-10-09 09:43
閱讀 2688·2021-09-22 15:31
閱讀 1741·2021-07-30 15:31
閱讀 798·2019-08-30 15:55
閱讀 3274·2019-08-30 15:54
閱讀 1175·2019-08-30 11:26
閱讀 1923·2019-08-29 13:00