平时如果在客户端的,尤其是游戏客户端面临最大游戏内存问题,莫过于图像和声音两种,下面详细阐述如果将超大图像文件批量压缩,压缩后缩减60%左右,除了一些需要高清的外其他的基本没有影响。

先介绍个网站 https://tinypng.com 这个网站可以上传图片压缩支持png,jpg格式,方便简单。但是如果手动一个上传,动辄几百张图片就显得十分的慢。下面就介绍tinypng提供的api,批量上传压缩。

进网站后先点击 developer api ,这里提供几种方式安装,我们选择node.js 方式安装 :

npm install --save tinify

这里需要取得api_key,因为网站上有相关如何获取api这里就不介绍如果和获取api_key

新建一个tini的文件夹,里面新建tini.js,代码如下:

var fs = require("fs")   //node文件模块
var paths = require("path")  //文件路径var root = paths.join(__dirname+'/daizhuanhuan')//daizhuanhuan文件夹放入你要压缩的图像const tinify = require("tinify"); //获取tinify模块
tinify.key = "你的API_KEY"; //设置你的api_keyreadDirSync(root)function readDirSync(path){var pa = fs.readdirSync(path);pa.forEach(function(ele,index){    //遍历daizhuanhuan整个文件夹var info = fs.statSync(path+"/"+ele)  if(info.isDirectory()){console.log("dir: "+ele)readDirSync(path+"/"+ele);     if (!fs.existsSync("./zhuanhou/"+ele)) {  //在转换后的文件夹里新建一样的fs.mkdirSync("./zhuanhou/"+ele);}}else{var io = paths.resolve(path+"/"+ele, '..')console.log(io.replace("daizhuanhuan","zhuanhou")+"/"+ele)console.log("file: "+ele)console.log(path+"/"+ele)const source = tinify.fromFile(path+"/"+ele);     //遍历上传图像文件source.toFile(io.replace("daizhuanhuan","zhuanhou")+"/"+ele); //压缩后文件} })
}

再在tini文件夹下新建daizhuanhuan文件夹放置你要压缩的图像文件,也可以将整个资源文件夹放入,但是资源文件里只能包含png或jpg文件,切记。再新建一个名zhuanhou文件夹,终端tini文件夹执行

node tini.js

这样会在zhuanhou文件夹下生成和daizhuanhuan后一模一样的资源文件夹路径

详情参考git源码https://github.com/sunlighing/tinyPng.git

nodejs利用tinyPNG的API批量压缩图像文件相关推荐

  1. python批量爬取小网格区域坐标系_Python爬虫实例_利用百度地图API批量获取城市所有的POI点...

    上篇关于爬虫的文章,我们讲解了如何运用Python的requests及BeautifuiSoup模块来完成静态网页的爬取,总结过程,网页爬虫本质就两步: 1.设置请求参数(url,headers,co ...

  2. 利用ECMWF的api批量下载数据,及下载效率问题(已解决)

    利用ECMWF的api批量下载气象数据,及下载效率问题(已解决) 最近在下载数据,遇到并解决了一些问题,比如如何利用api批量下载数据,以及关于下载的速度等等. 以S2S数据为例进行说明. 下载S2S ...

  3. 利用新浪API批量生成t.cn 短链接的接口有哪些?

    新浪提供了长链接转为短链接的API,可以把长链接转为t.cn/xxx这种格式的短链接.短链接对于一些商家来说使用价值非常大,故整理了6个较为好用的t.cn短链接批量生成接口. 1.快鸟短网址 随着移动 ...

  4. 利用高德地图API批量获取地点经纬度和行车线路与OD距离(excel和python)

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言 一.excel调取API方法 1.申请一个key 2.excel调用API 二.python方法 计算地址列表中两两之 ...

  5. 如何使用python批量压缩图片_python利用Guetzli批量压缩图片

    Google 又开源了,这次开源了一款图像算法工具 Guetzli.Guetzli,在瑞士德语中是"cookie(曲奇)"的意思,是一个针对数码图像和网页图像的 JPEG 编码器, ...

  6. python高德地图api调用实例_Python 利用高德地图api实现经纬度与地址的批量转换...

    我们都知道,可以使用高德地图api实现经纬度与地址的转换.那么,当我们有很多个地址与经纬度,需要批量转换的时候,应该怎么办呢? 在这里,选用高德Web服务的API,其中的地址/逆地址编码,可以实现经纬 ...

  7. 利用Dnspod api批量更新添加DNS解析【python脚本】 - 推酷

    利用Dnspod api批量更新添加DNS解析[python脚本] - 推酷 利用Dnspod api批量更新添加DNS解析[python脚本] - 推酷 undefined posted on 20 ...

  8. 利用zabbix api批量添加数百台监控主机

    利用zabbix api批量添加监控主机 在公司规模很庞大的时候,每次都手动添加监控主机将会很麻烦,我们可以利用zabbix的api去批量添加监控主机 本次我们将实现用一台主机虚拟出100台主机,并通 ...

  9. php 批量压缩png,利用Python批量压缩png方法实例(支持过滤个别文件与文件夹)...

    前言 本文主要给大家介绍的关于Python批量压缩png的相关资料,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍: 1.需求 为什么会有这个需求?是因为游戏的资源大多是png图片,需要 ...

  10. 如何使用python批量压缩图片_利用Python 批量压缩图片

    方法一 直接调整宽高 先放参考资料:如何用Python智能批量压缩图片? import math from glob import glob from PIL import Image import ...

最新文章

  1. 初学Python,我给你总结了常见的17个错误
  2. Spring---基于Spring IOC的小程序
  3. 15分钟从零开始搭建支持10w+用户的生产环境(三)
  4. Android之All children of ConstraintLayout must have ids to use ConstraintSet
  5. 视觉开发需要什么程度的数学_角度的概念在视觉上非常直观,但其数学定义并不是那么简单...
  6. 695.岛屿的最大面积(026)BFS
  7. api代理提取_了解提取API
  8. c查看变量类型_C语言的变量、常量及运算
  9. 基于JAVA+SpringMVC+Mybatis+MYSQL的校友录管理系统
  10. C++中this指针的用法
  11. 从零开始利用vue-cli搭建简单音乐网站(四)
  12. 架构之美第五章-架构概述
  13. 2022-02-27周报
  14. Linux命令对应的英文及整体学习法
  15. 【游戏】金融帝国2:金融帝国实验室(Capitalism Lab)3.0.19安装包下载
  16. 高斯投影正反算C语言程序代码,一个老师给的高斯投影正反算c++源码.doc
  17. 高质量 Go 进阶图书,它来了
  18. 最大的计算机计数单位,计数单位最大只知道亿?也许更大的计数单位能让你笑出声。...
  19. 理性、抽丝剥茧地解决 Easypoi、poi 版本冲突问题,而不是无头苍蝇一样闷头百度、google 一顿搜
  20. 马士兵mca课程java学习笔记

热门文章

  1. 中兴zxr10路由器重启命令_zxr10维护常用命令
  2. [工具][转载] ExtractData 1.08更新
  3. matlab可以仿真液压系统,基于Matlab计算机仿真在液压系统中的应用
  4. 基于jsp java的员工绩效考核管理系统
  5. 安装了java环境后,双击.jar包无法运行的解决方案
  6. IIS5 IIS6 IIS7区别
  7. 记录mt7615e wifi 驱动移植到openwrt cc
  8. linux中vi后如何退出命令,linux用VI编辑后保存退出命令是什么啊?
  9. IOSOpenDev~使用MobileTerminal修改越狱后的root密码
  10. 张果老能是鸿蒙时期一蝙蝠,他是八仙之一,吹一口气纸驴就能活过来,真实身份却是一只蝙蝠精...