ammardev / commonmark-image-tools
league/commonmark 的图像 markdown 渲染增强
v0.1.0-beta
2022-10-23 16:21 UTC
Requires
- php: ^7.4|^8.0
- league/commonmark: ^2.0
Requires (Dev)
- phpunit/phpunit: ^9.4
This package is auto-updated.
Last update: 2024-09-15 23:55:34 UTC
README
警告
[WIP] 本包的公共 API 可能会有破坏性更改。
league/commonmark 包的扩展,添加了显示图像的额外实用工具。
特性
- 轻松修改
src
路径。 - 自动将
width
和height
属性添加到img
元素,以避免布局偏移。
安装
composer require ammardev/commonmark-image-tools
使用
您可以直接使用扩展,例如这样
$environment = new Environment(); $environment->addExtension(new Ammardev\CommonMarkImageTools\ImageToolsExtension());
在这种情况下。扩展将使用提供的图像链接来获取图像的宽度和高度,并将它们添加为属性。在这种情况下,不会修改 src
。
您可以通过实现 Ammardev\CommonMarkImageTools\ImagePathManagerContract
接口修改公共路径(在 src
属性中使用的路径)。您还可以通过实现 Ammardev\CommonMarkImageTools\ImagePathManagerContract
接口修改存储路径(从存储中获取图像并获取宽度和高度信息的路径)。
<?php use Ammardev\CommonMarkImageTools\ImagePathManagerContract; class ImagePathManager implements ImagePathManagerContract { /** * This method will update the storage path that is used to get * the image and extract width and height info. */ public function getImageStoragePath(string $originalSrc): string { return __DIR__ . '/storage/my-assets-folder/' . $originalSrc; } /** * This method will update the public path that will be used in * the src attribute. */ public function getImagePublicSrcPath(string $originalSrc): string { return '/public/assets/' . $originalSrc; } }
有关使用扩展的更多详细信息,请参阅 commonmark 插件文档。
待办事项
- 为该包添加测试。
- 添加一种轻松更改图像扩展的方法。
- 响应式图像选项