定制 bitverliebt/contao-image-resize 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

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

bitverliebt/contao-image-resize

Composer 安装命令:

composer require bitverliebt/contao-image-resize

包简介

Automatically resizes oversized images when they are uploaded via the Contao back end file manager.

README 文档

README

Verkleinert Bilder automatisch, sobald sie über die Contao-Dateiverwaltung (Backend) hochgeladen werden und ein konfiguriertes Maximum überschreiten. Löst das Problem, dass Kamera- bzw. Handyfotos mit z. B. 4331×6496 Pixel beim späteren Generieren von Bildgrößen Speicher- oder Verarbeitungsfehler verursachen.

Funktionsweise

  • Hängt sich über den offiziellen postUpload-Hook in den Backend-Upload ein.
  • Liest die Abmessungen des hochgeladenen Bildes aus.
  • Ist es größer als max_width / max_height, wird es proportional verkleinert und überschreibt die Originaldatei.
  • JPEG-Fotos werden anhand ihrer EXIF-Daten automatisch richtig gedreht, bevor sie verkleinert werden.
  • GIF und SVG werden absichtlich nicht verändert (Animation bzw. Vektorformat).
  • Optional: Ist ein Bild kleiner als min_width / min_height, wird nur eine Logmeldung geschrieben (keine automatische Vergrößerung, da das die Bildqualität verschlechtern würde).

Installation

composer require bitverliebt/contao-image-resize

Danach im Contao Manager bzw. per Konsole den Cache leeren:

php vendor/bin/contao-console cache:clear --env=prod --no-warmup
php vendor/bin/contao-console cache:warmup --env=prod

Konfiguration

Standardmäßig wird auf 2500×2500 Pixel begrenzt. Eigene Werte in config/config.yaml der Hauptanwendung setzen:

contao_image_resize:
    max_width: 3000
    max_height: 3000
    min_width: 0      # 0 = deaktiviert
    min_height: 0     # 0 = deaktiviert
    jpeg_quality: 85

Hinweise für den produktiven Einsatz

  • Das Verkleinern selbst braucht beim Hochladen kurzzeitig genauso viel PHP-Speicher, wie das Original benötigen würde (Breite × Höhe × 4 Byte plus Verarbeitungsoverhead). Ein memory_limit von mind. 256–512M wird empfohlen, damit auch sehr große Kamerafotos beim Upload sicher verarbeitet werden. Danach liegt nur noch die kleine Version auf dem Server – die laufende Bildverarbeitung (Thumbnails, Bildgrößen) ist davon nicht mehr betroffen.
  • Wirkt nur auf neue Uploads über die Backend-Dateiverwaltung, nicht rückwirkend auf bereits vorhandene Dateien.
  • Getestet für Contao 5.3+ / PHP 8.1+.

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-06-23

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固