silverstripe / tinymce - 停止自动调整大小
silverstripe / tinymce - stop automatic resize
当我使用 tinymce 编辑器上传图像时,使用 Silverstripe CMS (v3.4) 它会自动在图像上设置 width/height。这会导致一些问题,例如破坏动画 gif 使其无法播放,还会降低静态图像的质量。
如何完全关闭此功能,以便在上传时不调整大小?
不要在 TinyMCE 中添加图像……它不能正确支持 hi-dpi 图像,而且很难控制生成的布局。
最好使用内容块模块之类的东西,或者只使用单独的图像上传字段。您还可以使用 shortcodable 模块之类的东西通过自定义短代码插入图像等媒体。
您可以修改图片的插入宽度,而不是将它们调整为 600 像素宽。
mysite/_config.yml
HtmlEditorField:
insert_width:
1200
您还可以使用 css 覆盖图片标签上的宽度/高度属性。
.typography img {
width: 100%;
max-width: 100%;
height: auto;
}
它不是很好,但它是我所知道的唯一解决方法。
至于动画 gif,如果使用 php 调整大小,它们总是会损坏。
HTMLEditorField
在其 saveInto
函数中更新 img
标签。 saveInto
函数内部是一个 processImage
扩展挂钩,它允许我们操作使用 TinyMCE 插入的图像。
首先我们创建一个带有 processImage
功能的 CustomHTMLEditorField
扩展。如果图像是 gif,我们将 img
src
设置回原始图像路径。
银色条纹 3
class CustomHTMLEditorField extends Extension
{
public function processImage($image, $img)
{
if ($image->getExtension() == 'gif') {
$img->setAttribute('src', $image->getRelativePath());
}
}
}
接下来我们将扩展名添加到 config.yml
文件中的 HtmlEditorField
:
HtmlEditorField:
extensions:
- CustomHTMLEditorField
当我使用 tinymce 编辑器上传图像时,使用 Silverstripe CMS (v3.4) 它会自动在图像上设置 width/height。这会导致一些问题,例如破坏动画 gif 使其无法播放,还会降低静态图像的质量。
如何完全关闭此功能,以便在上传时不调整大小?
不要在 TinyMCE 中添加图像……它不能正确支持 hi-dpi 图像,而且很难控制生成的布局。
最好使用内容块模块之类的东西,或者只使用单独的图像上传字段。您还可以使用 shortcodable 模块之类的东西通过自定义短代码插入图像等媒体。
您可以修改图片的插入宽度,而不是将它们调整为 600 像素宽。
mysite/_config.yml
HtmlEditorField:
insert_width:
1200
您还可以使用 css 覆盖图片标签上的宽度/高度属性。
.typography img {
width: 100%;
max-width: 100%;
height: auto;
}
它不是很好,但它是我所知道的唯一解决方法。
至于动画 gif,如果使用 php 调整大小,它们总是会损坏。
HTMLEditorField
在其 saveInto
函数中更新 img
标签。 saveInto
函数内部是一个 processImage
扩展挂钩,它允许我们操作使用 TinyMCE 插入的图像。
首先我们创建一个带有 processImage
功能的 CustomHTMLEditorField
扩展。如果图像是 gif,我们将 img
src
设置回原始图像路径。
银色条纹 3
class CustomHTMLEditorField extends Extension
{
public function processImage($image, $img)
{
if ($image->getExtension() == 'gif') {
$img->setAttribute('src', $image->getRelativePath());
}
}
}
接下来我们将扩展名添加到 config.yml
文件中的 HtmlEditorField
:
HtmlEditorField:
extensions:
- CustomHTMLEditorField