rokka / client-bundle
在 symfony 框架中定义了访问 Rokka 图像服务的服务
Requires
- php: ^7.2 || ^8.0
- rokka/client: ^1.10
- rokka/client-cli: ^1.9
- rokka/twig: ^1.0
- symfony/framework-bundle: ^5.2 || ^6.0 || ^7.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.0
- symfony/phpunit-bridge: ^5.2 || ^6.0
README
Symfony 框架的 Symfony 扩展包,用于 Rokka 图像服务。
rokka 是正确的数字图像处理方式。存储、渲染和交付图像。简单且速度极快。此扩展包允许您将图像文件上传到 rokka 并以尽可能轻和尽可能快的方式交付它们。并且您只需支付您使用的费用,没有预付和固定成本。
提供免费账户计划。只需安装插件,注册并使用即可。
安装
rokka Symfony 扩展包附带一个 flex 脚本。
执行以下操作。
composer config extra.symfony.allow-contrib true
composer require rokka/client-bundle
然后您可以将您的 API 密钥和组织添加到 .env
文件或编辑 config/packages/rokka.yaml
。
配置
输入您的 API 密钥和组织字符串。
rokka_client:
api_key: 'key-here'
organization: 'my-organization'
# Optional, not needed for most users
#base_url: https://api.rokka.io
base_url 是用于覆盖 API 位置的。我们主要用这个来测试,所以不需要更改。
使用方法
该扩展包将为您创建两个服务,rokka.client.image
和 rokka.client.user
。这些为您提供对来自 rokka/client 库的基本功能的访问,预先配置了您的凭据。
此扩展包还提供了与 rokka.io 交互的控制台命令。如果您只想使用 rokka 的 CLI,您还可以作为独立的 phar 安装 rokka PHP CLI 工具。
有关如何使用 rokka 的更多信息,请参阅 官方文档。
Twig
rokka twig 扩展已自动包含。它提供了一些 twig 过滤器和函数,用于在 twig 模板中构建 rokka 图像 URL。一些过滤甚至允许动态上传图像。
{{ '/path/to/image' | rokka_stack_url('preview', seo='my-seo-image-url-fragment', seoLanguage = 'fr') }}
{{ rokka_generate_url(my_rokka_hash, 'preview', seo='my-image-url-fragement') }}
有关如何使用过滤器的说明,请参阅 rokka twig 包的 README。
默认情况下,图像路径假定为相对于 Symfony 应用程序的 public
目录的相对路径。您可以使用以下方法配置不同的图像根路径
rokka_client:
web_path_resolver:
root_dir: "%kernel.project_dir%/path/to/images"
有关进一步的自定义选项,请参阅 rokka twig 包的 README。要使用这些选项,您需要覆盖此扩展包的服务。
从 LiipImagineBundle 迁移
如果您使用 imagine 并想切换到 rokka,为每个 imagine 过滤器创建一个 rokka 栈。然后在您的 twig 模板中将 imagine_filter
替换为 rokka_stack_url
(如果不想使用 jpg,也可以指定格式)。
如果您的图像不存储在文件系统中,则需要做一些进一步的调整。twig 扩展的 README 解释了如何从其他源加载图像。