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

时间:2016-08-22 07:04:56

标签: image orchardcms watermark

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

2 个答案:

答案 0 :(得分:4)

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

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

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

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

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

答案 1 :(得分:0)

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

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