你好,可以参考如下文档解决,望采纳。

对象存储 OSS-图片处理指南-图片水印

水印操作可以在图片上设置另外一张图片或者文字做为水印。

参数

操作名称:watermark

基础参数

名称

描述

参数类型

t

参数意义:透明度, 如果是图片水印,就是让图片变得透明,如果是文字水印,就是让水印变透明。默认值:100, 表示 100%(不透明) 取值范围: [0-100]

可选参数

g

参数意义:位置,水印打在图的位置,详情参考下方区域数值对应图。取值范围:[nw,north,ne,west,center,east,sw,south,se]

可选参数

x

参数意义:水平边距, 就是距离图片边缘的水平距离, 这个参数只有当水印位置是左上,左中,左下, 右上,右中,右下才有意义。默认值:10取值范围:[0 – 4096]单位:像素(px)

可选参数

y

参数意义:垂直边距, 就是距离图片边缘的垂直距离, 这个参数只有当水印位置是左上,中上, 右上,左下,中下,右下才有意义 默认值:10 取值范围:[0 – 4096] 单位:像素(px)

可选参数

voffset

参数意义: 中线垂直偏移,当水印位置在左中,中部,右中时,可以指定水印位置根据中线往上或者往下偏移 默认值:0 取值范围:[-1000, 1000] 单位:像素(px)

可选参数

说明

水平边距、垂直边距、中线垂直偏移不仅可以调节水印在图片中的位置,而且当图片存在多重水印时,也可以调节两张水印在图中的布局。

用到的URL安全的Base64位编码可以参考文档下方的解释。

区域数值以及每个区域对应的基准点如下图。

图片水印参数

名称

描述

参数类型

image

参数意义: 水印图片的object名字(必须编码)

说明

内容必须是URL安全base64编码 encodedObject = url_safe_base64_encode(object) 如object为”panda.png”, 编码过后的内容为”cGFuZGEucG5n”

必选参数

水印图片预处理

用户在打水印时,可以对水印图片进行预处理,支持的预处理操作有:图片缩放,图片裁剪(不支持内切圆),图片旋转(具体内容请直接查看文档相关章节)。在“resize”操作下还额外支持一个参数:P(大写P),表示水印图片按主图的比例进行处理,取值范围为[1, 100],表示百分比。

预处理示例

设置了P_10, 当主图是100x100, 水印图片大小就为10x10, 当主图变成了200x200,水印图片大小就为20x20。如果生成的图片大小不一样,而使用相同的水印处理参数,就会导致一些小图,水印图片过大。或者一些大图,水印图片过小。增加P参数,就可以解决这个问题。采用P参数,IMG会根据主图的大小来动态调整水印图片的大小。

对panda.png按30%缩放。 那么水印文件是:panda.png?x-oss-process=image/resize,P_30 (经过URL安全base64编码后是:cGFuZGEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMzA)

如果水印操作是:watermark=1&object=cGFuZGEucG5nQDMwUA&t=90&p=9&x=10&y=10 (右下角打水印)原图按宽度是400,需要缩略,再打上述水印的示例:

http://image-demo.img-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,w_400/watermark,image_cGFuZGEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMzA,t_90,g_se,x_10,y_10

如果原图按宽度300缩略,再打上上述水印的示例:

http://image-demo.img-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,w_300/watermark,image_cGFuZGEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMzA,t_90,g_se,x_10,y_10

文字水印参数

名称

描述

参数类型

text

参数意义:表示文字水印的文字内容(必须编码)

说明

必须是URL安全base64编码 encodeText = url_safe_base64_encode(fontText) 最大长度为64个字符(即支持汉字最多20个左右)

必选参数

type

参数意义:表示文字水印的文字类型(必须编码)

说明

注意:必须是URL安全base64编码 encodeText = url_safe_base64_encode(fontType)

取值范围:见下表(文字类型编码对应表)默认值:wqy-zenhei ( 编码后的值:d3F5LXplbmhlaQ)

可选参数

color

参数意义:文字水印文字的颜色参数的构成必须是:六个十六进制数,如:000000表示黑色。 000000每两位构成RGB颜色, FFFFFF表示的是白色默认值:000000黑色

可选参数

size

参数意义:文字水印文字大小(px)取值范围:(0,1000]默认值:40

可选参数

shadow

参数意义:文字水印的阴影透明度取值范围:(0,100]

可选参数

rotate

参数意义:文字顺时针旋转角度取值范围:[0,360]

可选参数

fill

参数意义:进行水印铺满的效果取值范围:[0,1],1表示铺满,0表示效果无效

可选参数

文字类型编码对应表

参数值

中文意思

URL安全base64编码后的值

备注

wqy-zenhei

文泉驿正黑

d3F5LXplbmhlaQ==

根据RFC,可省略填充符=变为d3F5LXplbmhlaQ

wqy-microhei

文泉微米黑

d3F5LW1pY3JvaGVp

fangzhengshusong

方正书宋

ZmFuZ3poZW5nc2h1c29uZw==

根据RFC,可省略填充符=变为ZmFuZ3poZW5nc2h1c29uZw

fangzhengkaiti

方正楷体

ZmFuZ3poZW5na2FpdGk=

根据RFC,可省略填充符=变为ZmFuZ3poZW5na2FpdGk

fangzhengheiti

方正黑体

ZmFuZ3poZW5naGVpdGk=

根据RFC,可省略填充符=变为ZmFuZ3poZW5naGVpdGk

fangzhengfangsong

方正仿宋

ZmFuZ3poZW5nZmFuZ3Nvbmc=

根据RFC,可省略填充符=变为ZmFuZ3poZW5nZmFuZ3Nvbmc

droidsansfallback

DroidSansFallback

ZHJvaWRzYW5zZmFsbGJhY2s=

根据RFC,可省略填充符=变为ZHJvaWRzYW5zZmFsbGJhY2s

文图混合

名称

描述

参数类型

order

参数意义: 文字,图片水印前后顺序取值范围:[0, 1] order = 0 图片在前(默认值); order = 1 文字在前

可选参数

align

参数意义:文字、图片对齐方式取值范围:[0, 1, 2] align = 0 上对齐(默认值) align = 1 中对齐 align = 2 下对齐

可选参数

interval

参数意义:文字和图片间的间距取值范围: [0, 1000]

可选参数

URL安全的Base64位编码

在图片处理服务里会有很多参数需要变成Base64位编码,参考RFC4648。注意这里的URL 安全Base64位编码只是用在水印操作某些特定参数(文字水印的文字内容,文字颜色,文字字体及图片水印的水印object)里,不要将其用来签名字符串(Signature)的内容。编码的格式是:

先将内容编码成Base64结果;

将结果中的加号”+”替换成中划线“-“;

将结果中的斜杠”/”替换成下划线”_”;

将结果中尾部的“=”号全部保留;

以Python为例子

import base64

input='wqy-microhei'

print(base64.urlsafe_b64encode(input))

示例

下面URL的含义,是example.jpg加上水印文件为 :panda.png (panda.png 经过URL安全base64编码后是:cGFuZGEucG5n)

http://image-demo.img-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,w_300,h_300/auto-orient,1/quality,q_90/format,jpg/watermark,image_cGFuZGEucG5n,t_90,g_se,x_10,y_10

对panda.png按宽度是50缩放。 那么水印文件是:panda.png?x-oss-process=image/resize,w_50 (经过URL安全base64编码后是:cGFuZGEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLHdfNTA=)

http://image-demo.img-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,w_300,h_300/auto-orient,1/quality,q_90/format,jpg/watermark,image_cGFuZGEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLHdfNTA=,t_90,g_se,x_10,y_10

最简单水印:文字内容是:Hello, 图片服务

http://image-demo.img-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,w_300,h_300/watermark,type_d3F5LXplbmhlaQ,size_30,text_SGVsbG8g5Zu-54mH5pyN5YqhIQ

字体是文泉驿正黑,字体大小是40, 颜色是白色(#FFFFFF), 文字阴影是50, 文字水印内容是:Hello, 图片服务!, 水印位置是:右下,水平边距是:10, 中线垂直偏移是:10

http://image-demo.img-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,w_300,h_300/watermark,type_d3F5LXplbmhlaQ,size_30,text_SGVsbG8g5Zu-54mH5pyN5YqhIQ,color_FFFFFF,shadow_50,t_100,g_se,x_10,y_10

文图混合水印,文字内容是:Hello, 图片服务! 阴影是50, 位置在右下角,图片object 是panda.png。 水平边距和垂直边距都是10, 水印透明是100, 排版方式是图片前, 对齐方式是下对齐,间距是10

http://image-demo.img-cn-hangzhou.aliyuncs.com/example.jpg?x-oss-process=image/resize,w_300,h_300/auto-orient,1/quality,q_90/format,jpg/watermark,image_cGFuZGEucG5nP3gtb3NzLXByb2Nlc3M9aW1hZ2UvcmVzaXplLFBfMjU,type_d3F5LXplbmhlaQ,size_30,text_SGVsbG8g5Zu-54mH5pyN5YqhIQ,color_FFFFFF,shadow_50,order_0,align_2,interval_10,t_100,g_se,x_10,y_10

收起

相关推荐问题

对象存储 OSS-图片处理指南-图片水印-参数

对象存储 OSS-图片处理指南-图片缩放

对象存储 OSS-图片处理指南-图片水印-示例

python打开是什么颜色-python图片颜色相关推荐

  1. python打开是什么样的-Python程序的执行过程是什么样的?

    我们都知道,使用CC++之类的编译性语言编写的程序,是需要从源文件转换成计算机使用的机器语言,经过链接器链接之后形成了二进制可执行文件.运行该程序的时候,就可以二进制程序从硬盘载入到内存中并运行. 但 ...

  2. python打开是什么样子的图片_黑洞6问:黑洞内部是什么样子?黑洞图片发布,理论和实测的碰撞...

    在科学领域,没有什么比你在第一次观察或实验结果中验证一个长期的理论预测时更令人兴奋的了.2012年,大型强子对撞机揭示了希格斯玻色子--标准模型中最后未发现的基本粒子的存在. 几年前,LIGO合作直接 ...

  3. python 打开是黑的-python黑色

    广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 下面部分是笔者摘取python tkinter course,笔者将其受用于pyt ...

  4. python 打开程序 最大化_@Python 程序员,如何最大化提升编码效率?

    作者 | Enoch CK 译者 | 刘畅 整理 | Jane 出品 | Python大本营 [导语]无论你是一位高级的AI工程师还是学生,你都会在工作或学习过程中需要用到 Python.自 1991 ...

  5. python打开后的界面-Python - tkinter:打开和关闭对话框窗口

    我是Python新手,必须编写一个简单的GUI程序,为了简单起见,我选择在tkinter中这样做. 我想要的GUI应该非常类似于在Windows上安装程序时经常遇到的对话框(您想要安装的位置,您想要的 ...

  6. python打开一个文件-在“Python”中如何“尝试/抓住”打开一个文件?

    一开始,它有助于防止您在尝试中引入的问题-终于-例如. 结构化方式,如果在尝试打开该文件时抛出异常,那么永远不会将打开的文件绑定到名称f,导致finally子句中的NameError(如果f从未在范围 ...

  7. python打开excel的函数-Python读取excel文件中带公式的值的实现

    在进行excel文件读取的时候,我自己设置了部分直接从公式获取单元格的值 但是用之前的读取方法进行读取的时候,返回值为空 import os import xlrd from xlutils.copy ...

  8. python打开.data_DataX初体验-python命令启动以及纯java启动

    一.DataX安装 官网描述很详细,很简单---->DataX安装 二.使用示例:从Oracle数据库导数据到Mysql数据库 事先准备: Oracle数据库的ORDER_INFO表,MySQL ...

  9. python打开文件_用Python(in PsychoPy)打开SPSS数据文件

    用Python(in PsychoPy)打开SPSS数据文件 有时,要访问SPSS的sav文件中的内容,而手里电脑没有SPSS软件,或者需要对SPSS数据文件中的数据进行SPSS支持不够好的操作,如对 ...

  10. 用python打开视频_MoviePy - 用Python玩转视频剪辑!(MoviePy安装及视频文件读取)...

    最近有一些视频需要剪辑,但本人比较懒,不想逐一手工处理.第一个想到的,就是万能的Python. 果不其然google一搜,真的有现成的库 moviepy.如官方文档所介绍的,moviepy是一个用于视 ...

最新文章

  1. “画中画”效果--谈IFRAME标签的使用
  2. c语言20字节的内存的数据怎么读取_C++编程-内存对齐
  3. SearchScore
  4. bcp大容量复制实用工具_运行中的BCP(大容量复制程序)命令
  5. Photos_2017 China MVP Community Connection
  6. 【window】Windows10下为PHP安装redis扩展
  7. finalize()与PhantomReference学习笔记
  8. css设置div边框圆角,CSS圆角有立体感的DIV边框
  9. Ubuntu下安装Qt
  10. 分布式session解决方案
  11. 插值法绘制山区地貌图和等高线
  12. PHP的抽象类和抽象方法 abstract
  13. 关于background背景和img图片
  14. 字节跳动,正在动摇互联网的根基!(转)
  15. linux桌面显示我的电脑,Windows服务器如何显示”我的电脑”图标 [多种方法详细介绍]...
  16. 如何创建一个Hidl Service?
  17. 电子科技大学计算机复试综面,2018年电子科技大学考研复试分数线已公布
  18. 网络安全职业_我如何开始网络安全职业
  19. android8carlife连接不上,carlife为什么连接不上汽车 连接不上汽车解决方法
  20. Windows安装Mysql并配置(安装版)

热门文章

  1. 开发日记-20190824 关键词 读书笔记《掌控习惯》DAY 3
  2. 开发日记-20190503 关键词 汇编语言(二)
  3. 转载别人的转载 Android Studio实用插件集合
  4. https://www.adminsub.net/tcp-udp-port-finder/14000 ——查找tcp端口对应的服务 可以看某些端口是否让恶意软件开启...
  5. k8s object对象(pod controller)介绍
  6. python 写创建和追加一个文件
  7. 移动端点击事件延迟300毫秒
  8. tableView下沉
  9. 【转】Linux 前后台作业切换及脱机管理
  10. 插件、页面-在csdn写markdown,基于chrome插件-by小雨