ImageMagick实现图片加水印(ImageMagick6.9.10)
一,ImageMagick的安装
请参见:
https://www.cnblogs.com/architectforest/p/12807514.html
说明:刘宏缔的架构森林是一个专注架构的博客,地址:https://www.cnblogs.com/architectforest
对应的源码可以访问这里获取: https://github.com/liuhongdi/
说明:作者:刘宏缔 邮箱: 371125307@qq.com
二,ImageMagick使用例子:在左下角加水印
原图:

水印图:

1,左下角加水印
#composite命令:用来合并两张图片
#gravity : 组合的图片的位置,取值:
southwest: 左下
southeast: 右下
northwest: 左上
northeast: 右上
south : 底部居中
west : 左侧居中
north: 顶部居中
east: 右侧居中
#leftbottom.png 在这里是添加的水印图
[root@blog im2]# composite -gravity southwest -compose plus leftbottom.png debian.jpg debian_zx.jpg
效果:

2,右下角加水印:
[root@blog im2]# composite -gravity southeast -compose plus leftbottom.png debian.jpg debian_yx.jpg
效果:

三,ImageMagick使用例子:居中加水印
水印图:

#gravity : 组合的图片的位置
[root@blog im2]# composite -gravity Center -compose plus fudiao.png debian.jpg debian_center.jpg
这里:debian.jpg是原图
fudiao.png是水印图
debian_center.jpg 是生成的加水印的图片
效果:

四,ImageMagick使用例子:生成水印时指定位置:
#xc:指定颜色,例子: xc:blue或
#xc:rgb(0,0,255)
1,生成两张指定颜色的图片
蓝色背景图:
[root@blog im3]# convert -size 1024x768 xc:"#00F" blue.jpg
红色水印图:
[root@blog im3]# convert -size 200x100 xc:"#F00" red.jpg
2,以左下角位置为例,给添加水印图
#geometry:相对左边/底边或右边/底边或左边/上边或右边/上边的位置
#视水印图的位置而定
不指定geometry,此时没有边距
[root@blog im3]# composite -gravity southwest -compose plus red.jpg blue.jpg leftbottom.jpg
效果:

指定geometry边距为10,10
[root@blog im3]# composite -gravity southwest -compose plus -geometry +10+10 red.jpg blue.jpg leftbottom2.jpg
效果:

指定geometry边距为20,10
[root@blog im3]# composite -gravity southwest -compose plus -geometry +20+10 red.jpg blue.jpg leftbottom3.jpg
效果:

五,查看ImageMagick的版本
[root@blog head]# convert -version
Version: ImageMagick 6.9.10-86 Q16 x86_64 2020-01-13 https://imagemagick.org
六,查看centos的版本
[root@blog ~]$ cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)
ImageMagick实现图片加水印(ImageMagick6.9.10)的更多相关文章
- 黄聪:利用ImageMagicK给图片加水印
1 图片水印处理 假设把名为logo.gif的水印图标添加在原始图片(src.jpg)右下角,且水印的下边缘距原始图片10像素.右边缘距原始图片5像素.使用如下命令即可: convert src.jp ...
- php 分享两种给图片加水印的方法
本文章向码农们介绍 php 给图片加水印的两种方法,感兴趣的码农可以参考一下本文章的源代码. 方法一:PHP最简单的加水印方法 <?php // http://www.manongjc.com ...
- c#封装DBHelper类 c# 图片加水印 (摘)C#生成随机数的三种方法 使用LINQ、Lambda 表达式 、委托快速比较两个集合,找出需要新增、修改、删除的对象 c# 制作正方形图片 JavaScript 事件循环及异步原理(完全指北)
c#封装DBHelper类 public enum EffentNextType { /// <summary> /// 对其他语句无任何影响 /// </summary> ...
- C#给图片加水印,可设置透明度
C#给图片加水印,可设置透明度,设置水印的位置可以看一下上一篇哈 /// <summary> /// Creating a Watermarked Photograph with GDI+ ...
- 使用Node.js给图片加水印的方法
一.准备工作: 首先,确保你本地已经安装好了node环境. 然后,我们进行图像编辑操作需要用到一个Node.js的库:images. 这个库的地址是:https://github.com/zhangy ...
- 火车头dede采集接口,图片加水印,远程图片本地化,远程无后缀的无图片本地化
<?php /* [LocoySpider] (C)2005-2010 Lewell Inc. 火车采集器 DedeCMS 5.7 UTF8 文章发布接口 Update content: 图片加 ...
- thinkphp 3.2.3整合ueditor 1.4,给上传的图片加水印
今天分享一下thinkphp 3.2.3整合ueditor 1.4,给上传的图片加水印.博主是新手,在这里卡住了很久(>_<) thinkphp 3.2.3整合ueditor 1.4 下载 ...
- PHPThumb处理图片,生成缩略图,图片尺寸调整,图片截取,图片加水印,图片旋转
[强烈推荐]下载地址(github.com/masterexploder/PHPThumb). 注意这个类库有一个重名的叫phpThumb,只是大小写的差别,所以查找文档的时候千万注意. 在网站建设过 ...
- Java图片处理(二)图片加水印
图片加水印,是通过图片重叠绘制实现的.实现代码如下: public static void press(String pressImg, String pressText, String target ...
随机推荐
- Java SPI详细的例子
先翻一个来自于Baeldung的介绍: 为了更通俗易懂我就没有直译,如果有不严谨的地方请大神指教. JavaSPI的定义 Java SPI defines four main components S ...
- SpringMVC-09-Ajax技术
9. Ajax技术 简介 AJAX=Asynchronous JavaScript and XML (异步的JavaScript和XML) AJAX是一种在无需重新加载整个网页的情况下,能够更新部分网 ...
- 渣渣的Leetcode之旅(Python3)_1.两数之和
题目:给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标.你可以假设每种输入只会对应一个答案.但是,数组中同一个元素不能使用两遍 ...
- NSThread线程对象
NSThread 创建线程的方式 准备在后台线程调用的方法 longOperation: - (void)longOperation:(id)obj { NSLog(@"%@ - %@&qu ...
- JavaScript 流程控制-分支
JavaScript 流程控制-分支 1.流程控制 在一个程序执行的过程中,各条代码的执行顺序对程序的结果是有直接影响的,很多时候我们要通过控制代码的执行顺序来实现我们要完成的功能. 简单理解:流程控 ...
- Node.js 从零开发 web server博客项目[express重构博客项目]
web server博客项目 Node.js 从零开发 web server博客项目[项目介绍] Node.js 从零开发 web server博客项目[接口] Node.js 从零开发 web se ...
- java注解(1)
Java注解是附加在代码中的一些元信息,用于一些工具在编译.运行时进行解析和使用,起到说明.配置的功能.注解不会也不能影响代码的实际逻辑,仅仅起到辅助性的作用.注解是Java SE5中引入的重要的语言 ...
- VUE开发(一)Spring Boot整合Vue并实现前后端贯穿调用
文章更新时间:2020/03/14 一.前言 作为一个后端程序员,前端知识多少还是要了解一些的,vue能很好的实现前后端分离,且更便于我们日常中的调试,还具备了轻量.低侵入性的特点,所以我觉得是很有必 ...
- JVM学习(三)JVM垃圾回收
一.引用的分类 在了解JVM垃圾回收机制之前,了解一下对象的引用类型是非常必要的. 强引用:GC时不会被回收 软引用:描述有用但不是必须的对象,在发生内存溢出异常之前被回收 弱引用:描述有用但不是必须 ...
- 搜索引擎学习(五)Lucene操作索引
一.代码分析 /** * Lucene入门 * 操作索引 */ public class ManageIndex { public IndexWriter getIndexWriter() throw ...