用于简单缩略图的水印过滤器

django-easy-thumbnails-watermark-1的Python项目详细描述


安装

在已安装的应用程序中放置简单的缩略图和水印

INSTALLED_APPS = (
    'easy_thumbnails_watermark',
)

在您的设置中添加水印预处理程序

from easy_thumbnails.conf import Settings as easy_thumbnails_defaults

THUMBNAIL_PROCESSORS = easy_thumbnails_defaults.THUMBNAIL_PROCESSORS + (
    'easy_thumbnails_watermark.thumbnail_processors.watermark_processor',
)

并将“水印”:,添加到缩略图定义中,以实现简单的缩略图。

'thumb': {
    ...
    'WATERMARK': {
        'image': 'main/img/logo.png',
        'opacity': 0.2,
        'scale': '40%',
    },
    ...
},

以及下列设置之一:

  • image-静态文件文件夹中图像的路径

  • position-指定图像四个角中的一个角的相对位置BRBL

    TRTL。它们分别表示“右下”、“左下”、“右上”和“左上”。

    或者,可以使用相对或绝对定位 水印。相对定位使用百分比;绝对定位使用 精确像素。您可以混合和匹配这两种定位模式,但是 无法将相对/绝对与角点定位混合和匹配什么时候? 使用相对/绝对定位,position参数的值 是XxY,其中X是左值,Y是顶值。这个 左值和顶值必须用小写x分隔。

    如果你想让你的水印图像出现在任何图像的中心 要水印,可以使用位置参数,如 position=50%x50%甚至position=C。如果你想让水印 在图像的左右边缘和100像素之间显示一半 从顶部开始,您将使用一个position参数,如 position=50%x100

    最后,你可以告诉过滤器为你的水印生成一个位置 动态的。为此,请使用position=R

  • opacity-此参数允许您指定 已应用水印。值必须是介于0和1之间的整数,其中0 完全透明,1完全不透明。默认情况下,不透明度设置为 0.5分。

  • tile-如果希望水印平铺在整个图像上,则 只需指定一个参数,比如tile=1

  • scale-如果你想在 目标图像并且完全可见,您可能需要使用scale=F如果你 要指定特定的比例因子,只需使用 scale=1.43。 比例也可以是最小图像的一个百分比,被水印的图像, 维度,例如“20%”将水印缩放为最小值的20% 在目标图像的宽度和高度之间。

  • greyscale-如果希望水印为灰度,可以指定 参数greyscale=1和所有颜色饱和度都将消失。

  • rotation-将此参数设置为0到359之间的任何整数(真的 任何整数都可以,但是为了你自己的理智,我建议保持 值介于0和359之间)。如果希望旋转是随机的,请使用 rotation=R而不是整数

  • noalpha默认值为false,删除随水印效果引入的任何alpha,有助于强制jpg图像保持不变,节省大量空间,设置为true可有效地将任何rgb a颜色空间转换为rgb。

它们默认为watermark=false,position='c',opacity=100,scale=1,tile=false,greyscale=false,rotation=0

学分

我从https://raw.github.com/codekoala/django-watermark复制了各种代码 并简单地适应简单的缩略图

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java内存如何分配给lambda |它如何通过非超类引用变量引用   java SQL将字符串转换为文本   java如何在这个程序中添加另一个方法?转换温度   javascript新的Chrome更新阻止了Java;在调用小程序的代码之前,如何等待权限被授予?   java HyperSQL(HSQLDB):大规模插入性能   java Kura如何在捆绑包之间通信?   java是空的。Ecilipse中的jar文件   java Android Studio从GitHub添加ownCloud库   java错误:“空对象引用上的”“void RecyclerView.setLayoutManager(RecyclerView$LayoutManager)”   java如何在SeleniumWebDriver中比较数组列表和列表Web元素   如何向另一个文件提供输入,该文件在同一Java应用程序中使用批处理命令执行?   java正则表达式减少函数参数之间的空格   汇编什么解释Java的字节码   java如何处理bean在初始化过程中需要服务器调用的情况   java Android创建文本文件   用Jmeter进行javacassandra测试   打开json文件时发生java错误(只读文件?)   javajavafx将数据从表视图中提取到文本字段中