Gambar png pembaikan Nodejs diproses oleh ipa_node.js

WBOY
Lepaskan: 2016-05-16 15:15:09
asal
1261 orang telah melayarinya

Baru-baru ini saya menemui keperluan dalam projek: menghuraikan pakej apk dan ipa, kemudian muat naik ikon di dalam ke pelayan.

Soalan

Proses penghuraian dan muat naik agak mudah Saya menggunakan JSZip untuk menyahmampat apk dan ipa, dan kemudian memuat naik ikon yang terdapat di dalam ke pelayan. Walau bagaimanapun, masalah timbul apabila saya menggunakan imej dalam halaman web. Tidak ada masalah dengan ikon dalam apk, tetapi gambar yang dihuraikan dalam ipa boleh dipaparkan secara normal dalam safari, tetapi tidak boleh dipaparkan dalam mana-mana pelayar lain.

Sebab

Selepas Google, saya mendapati bahawa Apple telah mengoptimumkan imej png Sila baca artikel ini (lihat) untuk mendapatkan maklumat yang berguna dalam artikel:

Apple uses PNGCursh open source library to crush png images inside iPA files。
Salin selepas log masuk

Penyelesaian

Sebagai jurutera hadapan, saya berharap dapat menggunakan javascript untuk menyelesaikan masalah ini. Malah, seseorang di luar negara telah menyelesaikannya sebelum ini.

Saya tidak dapat mencari satu yang tersedia, jadi saya terpaksa membuat makanan dan pakaian yang mencukupi sendiri dan menulis sendiri. Oleh itu nod-pngdefry. Fungsi node-pngdefry sangat jelas, iaitu menggunakan Javascript untuk memulihkan imej png yang diproses oleh Apple.

node-pngdefry sangat mudah digunakan dan menyokong baris arahan dan Node.js biasa:

Penggunaan baris arahan

pasang:

$ npm install -g pngdefry
Salin selepas log masuk

kemudian jalankan:

$ pngdefry -i icon.png -o icon.new.png
Salin selepas log masuk

Menggunakan dalam Node.js

$ npm install pngdefry --save-dev
Salin selepas log masuk
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');
});

Salin selepas log masuk

Ujian

$ npm test
Salin selepas log masuk

Alamat Projek

nod-pngdefry

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan