承接 nexacodetech/compress 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

nexacodetech/compress

最新稳定版本:0.2.4

Composer 安装命令:

composer require nexacodetech/compress

包简介

Compactador de arquivos PDF e Imagem, compatível também com Laravel.

README 文档

README

A biblioteca Compress permite a compressão de imagens e PDFs com facilidade. Suporta diferentes níveis de qualidade e modos de saída. Em alguns testes, conseguimos reduzir um PDF em até 98% do seu tamanho e imagem em até 75%.

Instalação

Para instalar a biblioteca, utilize o Composer para adicionar o pacote nexacodetech/compress ao seu projeto:

composer require nexacodetech/compress

Além disso, é necessário instalar o Ghostscript e o ImageMagick. Siga as instruções abaixo e adapte para o seu sistema operacional:

Ubuntu

sudo apt-get update
sudo apt-get install -y ghostscript
sudo apt-get install -y imagemagick

Uso

Comprimindo Imagens

Para comprimir uma imagem, utilize o seguinte código:

use NexacodeTech\Compress\Compress;
use NexacodeTech\Compress\Enums\CompressTypeEnum;
use NexacodeTech\Compress\Enums\QualityEnum;
use NexacodeTech\Compress\Enums\OutputTypeEnum;

$compress = Compress::make(CompressTypeEnum::IMAGE);

$compress->setQuality(QualityEnum::LOW);
$content = $compress->compress('files/panorama.jpg', OutputTypeEnum::FILE, 'files/compressed.jpg');

Qualidade

Os níveis de qualidade disponíveis são:

  • QualityEnum::LOW
  • QualityEnum::MEDIUM
  • QualityEnum::MEDIUM
  • QualityEnum::HIGH
  • QualityEnum::VERY_HIGH
  • QualityEnum::MAXIMUM

Tipo de Saída

Os tipos de saída disponíveis são:

  • OutputTypeEnum::FILE - Salva o arquivo comprimido.
  • OutputTypeEnum::STREAM - Retorna o conteúdo comprimido como um stream.

Comprimindo PDFs

Para comprimir um arquivo PDF, a única modificação necessária é alterar o tipo de compressão para PDF:

use NexacodeTech\Compress\Compress;
use NexacodeTech\Compress\Enums\CompressTypeEnum;
use NexacodeTech\Compress\Enums\QualityEnum;
use NexacodeTech\Compress\Enums\OutputTypeEnum;

$compress = Compress::make(CompressTypeEnum::PDF);

$compress->setQuality(QualityEnum::LOW);
$content = $compress->compress('files/document.pdf', OutputTypeEnum::FILE, 'files/compressed.pdf');

Contribuição

Se desejar contribuir para este projeto, sinta-se à vontade para abrir um pull request ou relatar problemas na página de issues.

Licença

Este projeto está licenciado sob a MIT License.

统计信息

  • 总下载量: 12
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 1
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-05-20