发布时间:2026/8/23 16:28:12
Tiny:3行代码把Android图片压到2.3% Tiny3行代码把Android图片压到2.3%【免费下载链接】Tinyan image compression framework.一个高保真、高压缩比的图片压缩框架项目地址: https://gitcode.com/gh_mirrors/ti/TinyTiny是Android图片压缩框架把6.66MB大图压到151KB1280x788。适合做电商、社交等需要图片上传与展示的App。 效果速览Tiny图片压缩的数字图中原图为3500x2156、6.35MB。README实测同尺寸6.66MB图压到151KB1280x788压缩后约为原图2.3%。压缩比6.66MB → 151KB约2.3%2.60MB → 193KB输出尺寸默认最大宽高1280px可调width/height/baseline输入来源文件路径 / Bitmap / Uri / resId / byte[] / InputStream线程模型后台线程池压缩主线程回调 三步跑通Tiny图片压缩第1步加依赖app模块的build.gradle里加两行dependencies { implementation project(:tiny) implementation project(:libjpeg-turbo-sdk) }Sync后可用armeabi、armeabi-v7a、arm64-v8a、x86四种abi的libtiny.so。第2步初始化在Application的onCreate里调一次Tiny.getInstance().debug(true).init(this);这行只记录Application上下文并打开日志无其他副作用。第3步执行压缩传图片路径用asFile声明输出文件结果在回调里拿Tiny.FileCompressOptions options new Tiny.FileCompressOptions(); Tiny.getInstance().source(/sdcard/DCIM/a.jpg).asFile() .withOptions(options).compress(new FileCallback() { Override public void callback(boolean ok, String outfile, Throwable t) { // ok为true时outfile即压缩后文件路径 } });跑完你会看到回调在主线程触发缓存目录里多了一张1280px级jpg。 两个高频场景电商商品图——详情页加载与上传流量大商品原图动辄2~6MB列表页直出费流量。只改options控制输出宽度与目标体积Tiny.FileCompressOptions options new Tiny.FileCompressOptions(); options.width 1080; // 列表页显示宽度即可 options.size 300; // KB超出则继续压实测2.60MB4032x3024商品图压到193KB1280x960约为原体积1/13。社交多图分享——一次上传多张图发9张图逐张压缩要管理9个回调。把source换成数组换batchAsFileTiny.getInstance().source(new String[]{p1, p2, p3}).batchAsFile() .withOptions(new Tiny.BatchFileCompressOptions()) .batchCompress(new FileBatchCallback() { Override public void callback(boolean ok, String[] out, Throwable t) {} });按README实测比例4张20MB的相册图压完总共约700KB原图的1/30。⚙️ 按需调参参数含义默认值建议值qualityJPEG压缩质量0~100越小越压缩7675~85width / height压缩目标宽、高px0即屏幕尺寸/12801080 / 0baseline最大宽高上限px12801280 或 2560size输出文件大小上限KB超出继续压0自动200~500configBitmap内存格式ARGB_8888RGB_565内存减半推荐起步配置Tiny.FileCompressOptions options new Tiny.FileCompressOptions(); options.width 1080; options.size 300; options.quality 80;⚠️ 集成前先看这4条回调t为权限异常、拿不到文件 → Android 6.0写外部存储需权限 → 启动时动态申请WRITE_EXTERNAL_STORAGE。输出文件名不是你指定的 → outfile传了目录或非.jpg路径Tiny自动改时间戳命名 → 给options.outfile设完整.jpg路径。压缩结果变PNG、体积不降 → 源图带透明通道hasAlphaTiny自动输出PNG → 不需要透明就先抠掉透明背景。个别设备UnsatisfiedLinkError → 没选中设备对应abi → ndk.abiFilters加上armeabi-v7a/arm64-v8a/x86。Tiny是一个基于libjpeg-turbo的Android图片压缩框架单库集成支持文件、Bitmap、Uri、resId四种输入。完整源码获取git clone https://gitcode.com/gh_mirrors/ti/Tiny【免费下载链接】Tinyan image compression framework.一个高保真、高压缩比的图片压缩框架项目地址: https://gitcode.com/gh_mirrors/ti/Tiny创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

2026/8/23 16:23:11

BetterJoy:10 分钟把 Switch 手柄接上 PC

BetterJoy:10 分钟把 Switch 手柄接上 PC 【免费下载链接】BetterJoy Allows the Nintendo Switch Pro Controller, Joycons and SNES controller to be used with CEMU, Citra, Dolphin, Yuzu and as generic XInput 项目地址: https://gitcode.com/gh_mirrors/b…

2026/8/23 21:48:49

Qt QTextEdit底层原理与工业级性能优化实战

1. 为什么Text Edit不是“随便拖个框就能用”的控件?——从一个被低估的输入类控件说起Qt里的Text Edit,表面看就是个能打字、能换行、能滚动的文本框,新手拖进Designer里改改大小、设个占位符,好像就完事了。但我在带三个团队做工…

2026/8/23 21:48:49

MCAP:面向机器人多模态数据的零拷贝通用容器协议

1. 这不是又一个ROS Bag——MCAP到底在解决什么问题?你有没有遇到过这样的场景:调试一辆自主移动机器人时,激光雷达点云、IMU姿态、相机图像、底盘控制指令全都在跑,但回放数据时要么卡顿得像幻灯片,要么索引崩溃直接丢…

2026/8/23 21:48:49

深入解析操作系统用户态与内核态:从隔离原理到性能优化实践

1. 从一次程序崩溃说起:理解用户态与内核态的必要性相信很多开发者,尤其是刚接触系统编程的朋友,都遇到过类似这样的错误提示:“程序‘claude.exe’无法运行:指定的可执行文件不是此操作系统平台的有效应用程序”。乍一…

2026/8/23 21:48:49

技术面试复盘:从失败到高薪offer的进阶之路

1. 面试复盘的价值究竟在哪里去年帮团队招聘中级Java开发时遇到一个典型案例:候选人小张连续面了3家一线大厂都倒在终面,最后一次面试后他做了件特别的事——花了4小时整理了一份12页的面试复盘文档。三个月后当他再次出现在我的面试会议室,从…

2026/8/23 21:48:49

QT6 Widget快速开发指南:从环境搭建到项目实战

1. 项目概述:为什么现在要学QT6 Widget开发?如果你是一位C开发者,或者对桌面应用、嵌入式GUI开发感兴趣,最近肯定没少听到QT6这个名字。从QT5到QT6,这不仅仅是一个版本号的迭代,更像是一次从内到外的“大换…

2026/8/23 21:43:49

开源招聘系统技术解析与商业实践

1. 项目概述:开源招聘系统的商业价值与技术实现在人力资源行业深耕多年,我见证了传统招聘模式从线下到线上的迁移过程。当前企业招聘面临的核心痛点在于:渠道分散导致管理成本高、简历筛选效率低下、招聘流程缺乏标准化。我曾为一家快速扩张的…

2026/8/23 0:02:04

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/23 0:02:04

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/23 0:02:04

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/23 0:02:04

[光学原理与应用-521]:对光的错误理解与纠偏

首先光是一种能量的载体和形态,宏观上观察到的光是由无数个微观的光量子组成的,每个光子在产生的瞬间,其在真空的空间中以确定不变的速度沿着一个初始的方向一直向前,在微观层面,每个光量子的运动轨迹是以波函数所展现…

2026/8/23 0:02:04

SIP通话转接原理与REFER方法实战解析

1. 通话转接不是“挂断再拨号”,而是SIP会话的动态重定向你有没有遇到过这样的场景:客服坐席A正在和客户通电话,突然需要把这通对话无缝转给专家坐席B,客户完全感知不到中间的断连——既没听到忙音,也没被要求重新拨号…

2026/8/23 0:02:04

Kolla-ansible单节点OpenStack部署实战:从环境准备到排坑指南

1. 为什么选择Kolla-ansible来部署单节点OpenStack?如果你正在寻找一种能把OpenStack从“概念”快速变成“可用的实验环境”的方法,那么Kolla-ansible几乎是当前最主流、最省心的选择。我见过太多人卡在手动编译依赖、配置服务、处理版本冲突的泥潭里&am…

2026/8/23 13:29:45

实测才敢推 AI论文网站 2026最新测评与推荐

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。一、综…

2026/8/23 6:14:43

2026必备!AI论文网站测评:最新推荐与深度对比

2026年真正好用的AI论文网站,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

2026/8/23 4:22:01

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…