如何在果园CMS中添加自动图像水印?

问题描述 投票:3回答:2

我用Orchard cms。我想在上传图片时,图片会自动获得水印。我怎样才能做到这一点?

image orchardcms watermark
2个回答
4
投票

要自动添加水印,您必须为OnPublished添加ImagePart处理程序,如下所示:

OnPublished<ImagePart>((context, part) => {
    var mediaPart = part.As<MediaPart>();
    // Here you can add watermark code
});

如果要在原始上传的图像上添加水印,则必须直接从处理程序中调用它,但是如果要使用媒体处理模块机制(将原始图像保持原样,并使用过滤器创建一个新图像应用并保存在_Profiles文件夹中),然后您可以为IImageFilterProviderto添加新的实现为Orchard媒体处理管道添加新的过滤器。

最后,我建议你使用ImageResizer.Plugins.Watermark插件来实现这一点,因为Orchard已经使用ImageResizer组件作为默认的图像处理框架。

更新:请参阅此link以获取完整实现,或请参阅此repo获取源代码。


0
投票

这应该可以通过提供IImageFilterProvider的自定义实现来实现。在解决方案中搜索此接口,您将在ResizeFilter模块中找到FormatFilterOrchard.MediaProcessing作为示例。

此外,还有一些像http://www.davidhayden.me/blog/developing-custom-image-filters-in-orchard-cms的文章。

© www.soinside.com 2019 - 2024. All rights reserved.