美文网首页前后端设计师
用JavaScript修复ipa处理过的的png图片

用JavaScript修复ipa处理过的的png图片

作者: forsigner | 来源:发表于2016-02-16 14:01 被阅读246次

最近做项目遇到一个需求:解析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-pngdefrynode-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

感谢

最后感谢上面提到的文章的作者Jongware。

相关文章

  • 用JavaScript修复ipa处理过的的png图片

    最近做项目遇到一个需求:解析apk和ipa包,然后把里面的icon上传到服务器。 问题 解析上传过程比较简单,我使...

  • 脚本-Imagemagick+pngdefry生成AppIcon

    pngdefy可以将Xcode中pngcrush处理过的png图片进行还原ImageMagick可以通过命令对图片...

  • CSS动画一

    框架集 显示效果如下: IE6PNG图片的修复问题 让IE6浏览器兼容PNG格式的图片,可以使用png-8格式的图...

  • 前端笔记(7)

    代码:(1)完善clearfix (2)表单 (3)_target (4)框架集 (5)ie6png图片的修复 (...

  • Android 利用 9-Patch 图片制作聊天框

    什么是 9-Patch 图片?一种被特殊处理过的png图片,可以指定哪些区域能够拉伸,哪些区域不能拉伸,哪些区域可...

  • 12、图片预览

    该例简单实现了图片的预览 template处 methods处 运行结果1.png 此处单击加号处可以选择图片进行预览

  • Eleventh 图片预览

    该例简单实现了图片的预览 template处 methods处 运行结果1.png 此处单击加号处可以选择图片进行预览

  • JavaScript PNG 图片编码和解码

    PNG 解码是指将一张 PNG 图片的二进制数据转换成像素点数据 ImageData。 PNG 的二进制数据有很多...

  • Android 制作nine-patch图片

    Nine-Patch图片是一种被特殊处理过的png图片,能够指定哪些区域可以被拉伸,哪些区域不可以。先准备一张图片...

  • javaScript进阶面向对象ES6-2020-01-06

    tag栏切换-P10 curd图片.png图片.png图片.png图片.png切换功能:图片.png 启动: 图片...

网友评论

    本文标题:用JavaScript修复ipa处理过的的png图片

    本文链接:https://www.haomeiwen.com/subject/hzipkttx.html