国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

nodejs修復ipa處理過的png圖片

2019-11-20 10:34:48
字體:
來源:轉載
供稿:網友

最近做項目遇到一個需求:解析apk和ipa包,然后把里面的icon上傳到服務器。

問題

解析上傳過程比較簡單,我使用JSZip對apk和ipa進行解壓,然后把找到里面的icon上傳到服務器。但是,當我在網頁中使用圖片時,問題出現了。對于apk中的icon,沒有任何問題,但是對于ipa中解析出來的圖片,在safari中可以正常顯示,在其他任何瀏覽器去無法顯示。

原因

Google后發現,是蘋果對png圖片進行了優化處理,具體看這篇文章(查看),在文章中我們可以了解到一些有用信息:

Apple uses PNGCursh open source library to crush png images inside iPA files。

解決方案

作為一個前端工程師,我希望用javascript解決這個問題。其實之前國外已經有人去解決了,NodeJS-PNGDefry就是可以,可惜這個太久沒維護,已經跑不起來。

找不到可用的,我只能自己動手豐衣足食,自己寫一個。因此有了node-pngdefry。node-pngdefry的功能很明確,就是用Javascript來還原被蘋果處理過的png圖片。

node-pngdefry用法很簡單,支持命令行和常規的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

項目地址

node-pngdefry

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新龙县| 永年县| 全椒县| 蒙城县| 鄂州市| 诏安县| 汾阳市| 石门县| 新源县| 汉沽区| 盘山县| 阳高县| 鄂托克旗| 黑龙江省| 吴川市| 嘉义市| 宣威市| 阿拉善右旗| 甘孜县| 南靖县| 常德市| 论坛| 资源县| 禄丰县| 军事| 桦川县| 青川县| 横山县| 固原市| 沿河| 永平县| 富川| 淳安县| 静乐县| 通州区| 工布江达县| 四川省| 舒城县| 东台市| 襄垣县| 容城县|