fork / craft-altify
使用可选的不同服务生成图像的alt文本。
v1.0.0
2024-06-14 12:09 UTC
Requires
- php: >=8.0.2
- craftcms/cms: ^4.5.0
- deeplcom/deepl-php: ^1.7
Requires (Dev)
- craftcms/ecs: dev-main
- craftcms/phpstan: dev-main
This package is auto-updated.
Last update: 2024-09-14 12:42:54 UTC
README

Craft CMS的Alt文本生成插件
使用可选的不同服务生成图像的alt文本。
需求
此插件需要Craft CMS 4.5.0或更高版本,以及PHP 8.0.2或更高版本。
为了使用alt文本生成服务,您需要根据所使用的认证方法获取API密钥或其他凭证。
安装
您可以从插件商店或使用Composer安装此插件。
从插件商店
转到您项目控制面板中的插件商店,搜索“alt”,然后按“安装”。
使用Composer
打开您的终端,并运行以下命令
# go to the project directory cd /path/to/my-project.test # tell Composer to load the plugin composer require fork/craft-altify # tell Craft to install the plugin ./craft plugin/install altify
使用方法
默认情况下,此插件通过Hugging Face推理API使用BLIP模型。您需要API密钥才能使用它。建议通过环境变量设置,但也可以直接在插件设置中设置。
要使用其他模型,请转到插件设置并选择其中之一。您也可以通过环境变量设置模型。这可以是类名,或以下名称之一。
开箱即用的可用模型
开箱即用的可用翻译服务
实现自己的alt文本生成器和翻译器
您可以通过实现接口fork\alt\connectors\alttextgeneration\AltTextGeneratorInterface
并使用如下方式通过EVENT_REGISTER_GENERATORS
事件注册来自定义alt文本生成服务
use fork\altify\events\RegisterGeneratorsEvent;
use fork\altify\services\Generator;
Event::on(
Generator::class,
Generator::EVENT_REGISTER_GENERATORS,
function (RegisterGeneratorsEvent $event) {
$event->generators['myGenerator'] = MyGenerator::class;
}
);
对于翻译服务也是如此。实现fork\altify\connectors\translation\TranslatorInterface
并按如下方式注册您的翻译器
use fork\altify\events\RegisterTranslatorsEvent;
use fork\altify\services\Translator;
Event::on(
Translator::class,
Translator::EVENT_REGISTER_TRANSLATORS,
function (RegisterTranslatorsEvent $event) {
$event->translators['myTranslator'] = MyTranslator::class;
}
);
待办事项
- 使翻译服务基于站点以尊重语言
- 实现更多alt文本生成服务
- 可能实现一个自托管的alt文本生成服务
- 可能实现一个使用TensorFlow JS或类似技术的浏览器中的alt文本生成服务
- 实现一个alt文本生成器注册事件
- 在GitHub上公开发布,在Packagist和Craft插件商店上发布