poplanchong123/image-compress
Composer 安装命令:
composer require poplanchong123/image-compress
包简介
A powerful image compression library similar to TinyPNG
README 文档
README
一个强大的PHP图片压缩库,提供类似TinyPNG的功能。
特性
- 支持多种图片格式(JPG/JPEG、PNG、GIF)
- 智能压缩算法,在保证画质的前提下减小文件体积
- 支持等比缩放图片尺寸
- 多种输入方式支持:
- 上传图片文件
- 本地图片路径
- Base64编码的图片数据
- 灵活的输出选项:
- 保存到指定路径
- 返回文件流
- 批量处理支持
- 完善的错误处理机制
安装
composer require poplanchong123/image-compress
要求
- PHP >= 5.6
- GD扩展
- Fileinfo扩展
快速开始
use Poplanchong123\ImageCompress\ImageCompressor; use Poplanchong123\ImageCompress\Input\FileInput; use Poplanchong123\ImageCompress\Output\FileOutput; // 创建压缩器实例 $compressor = new ImageCompressor([ 'max_width' => 1920, 'max_height' => 1080, 'quality' => 85 ]); // 压缩图片 $input = new FileInput('path/to/input.jpg'); $output = new FileOutput('path/to/output.jpg'); $result = $compressor->compress($input, $output);
配置选项
max_width: 最大宽度(像素)max_height: 最大高度(像素)quality: 压缩质量(1-100)preserve_aspect_ratio: 是否保持宽高比(默认:true)strip_metadata: 是否去除元数据(默认:true)
输入方式
文件输入
use Poplanchong123\ImageCompress\Input\FileInput; $input = new FileInput('path/to/image.jpg');
Base64输入
use Poplanchong123\ImageCompress\Input\Base64Input; $input = new Base64Input($base64String);
输出方式
文件输出
use Poplanchong123\ImageCompress\Output\FileOutput; $output = new FileOutput('path/to/output.jpg');
流输出
use Poplanchong123\ImageCompress\Output\StreamOutput; $output = new StreamOutput(); $imageData = $compressor->compress($input, $output);
批量处理
$inputs = [ new FileInput('path/to/image1.jpg'), new FileInput('path/to/image2.png') ]; $outputs = [ new FileOutput('path/to/output1.jpg'), new FileOutput('path/to/output2.png') ]; $results = $compressor->batchCompress($inputs, $outputs);
错误处理
库使用异常机制处理错误。所有的异常都继承自ImageCompressException:
try { $result = $compressor->compress($input, $output); } catch (ImageCompressException $e) { echo "压缩失败:" . $e->getMessage(); }
示例
更多使用示例请查看examples目录。
许可证
MIT License
poplanchong123/image-compress 适用场景与选型建议
poplanchong123/image-compress 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 5 次下载、GitHub Stars 达 0, 最近一次更新时间为 2025 年 09 月 26 日, 在 PHP 生态内属于活跃度较高的组件。
我们在过去多个企业项目中使用过 poplanchong123/image-compress 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 poplanchong123/image-compress 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
统计信息
- 总下载量: 5
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 16
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2025-09-26