承接 wineworlds/image-on-demand-service 相关项目开发

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

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

wineworlds/image-on-demand-service

Composer 安装命令:

composer require wineworlds/image-on-demand-service

包简介

A TYPO3 extension for providing on-demand image processing services.

README 文档

README

Image on Demand Service is a TYPO3 extension that provides on-demand image processing services for your TYPO3 website. It allows you to dynamically manipulate and generate images based on specific requests.

Features

  • On-the-fly image processing.
  • Dynamic resizing and formatting of images.

Installation

The extension can be easily installed using Composer and is available on Packagist.

  1. Install the extension using Composer:
    composer require wineworlds/image-on-demand-service
  2. Activate the extension in the TYPO3 backend.

Usage

The Image on Demand Service extension automatically processes requested images that match a specific URL pattern. It uses the ImageOnDemandMiddleware class to handle image requests. When an image request URL matches the specified pattern, the middleware processes the request and serves the manipulated image.

URL Pattern (1.1.0)

The URL pattern for image requests is: /image-service/{width}/{height}/{filename}?id={fileReferenceId}&type={format}&crop={cropVariant}&text={dummyImageText}&bgColor={dummyImageBgColor}&textColor={dummyImageTextColor}

The filename is not taken into account in caching.

Parameter Description Default Value Required
/width/ The width of the generated image. - Yes
/height/ The height of the generated image. - Yes
&id=18 The unique ID of the fileReference. - No
&type=webp The format of the image (e.g., JPEG, PNG, WebP, etc.). - No
&crop=desktop The selected image crop variant. 'default' No
&text=No Image The text displayed on the dummy image if no ID is provided or no image is found. 'Dummy Image' No
&bgColor=ff0000 The background color of the dummy image. '000000' No
&textColor=0000ff The text color of the text displayed on the dummy image. 'ffffff' No

URL Pattern (1.0.3)

The URL pattern for image requests is: /image-service/{fileId}/{width}/{height}/{format}/{filename}

  • fileReferenceId: The unique ID of the file reference to process.
  • width: The desired width of the processed image. TYPO3 Docs Image width
  • height: The desired height of the processed image. TYPO3 Docs Image height
  • format: The desired format (file extension) of the processed image. TYPO3 Docs GFX file extension
  • filename: The name of the image file (for SEO-friendly URLs).

For example: /image-service/123/300c/200c/jpeg/my-seo-friendly-image.jpeg will request an image with the ID 123, resized to a width of 300c pixels and a height of 200c pixels, saved in JPEG format, and with the filename "my-seo-friendly-image.jpeg".

If the requested image is not found or an error occurs during processing, a placeholder "Image Not Found" image will be returned.

Contributors

License

This TYPO3 extension is licensed under the MIT License.

wineworlds/image-on-demand-service 适用场景与选型建议

wineworlds/image-on-demand-service 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 777 次下载、GitHub Stars 达 1, 最近一次更新时间为 2023 年 08 月 25 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「image processing」 「TYPO3 CMS」 「Image Service」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 wineworlds/image-on-demand-service 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 wineworlds/image-on-demand-service 我们能提供哪些服务?
定制开发 / 二次开发

基于 wineworlds/image-on-demand-service 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2023-08-25