Board logo

标题: [文件操作] 批处理怎样在图片指定位置添加文字水印和图片水印? [打印本页]

作者: hijackle    时间: 2011-1-5 01:50     标题: 批处理怎样在图片指定位置添加文字水印和图片水印?

批处理怎样把文字合并到图片上?
批处理能否实现如下功能
存在如下文件:
a.txt  a.jpg b.jpg
通过批处理取得a.txt的内容,a.jpg和b.jpg文件的图片的尺寸大小,然后将a.txt里面的内容写到到尺寸大一点的jpg的右上角,将尺寸小一点的jpg的图片放到大一点尺寸的图片的中间或其他位置,通过以上操作形成一个新的jpg文件

似乎通过ps能很简单实现,批处理能否实现?还是需要调用第三方软件,请达人指点一下
作者: tmplinshi    时间: 2011-1-5 05:19

需下载 nconvert
  1. @echo off
  2. set txt="a.txt"
  3. set jpg1="a.jpg"
  4. set jpg2="b.jpg"
  5. set jpg_output="_new.jpg"
  6. :: 找出图片的尺寸大小关系。尺寸小的图片会被设为 jpg1,大的为 jpg2。
  7. set command=nconvert -quiet -info %jpg1% %jpg2%
  8. for /f "tokens=1,2 delims=: " %%a in ('%command%') do (
  9.     if "%%a"=="Width" set Width=%%b
  10.     if "%%a"=="Height" (
  11.         if not defined size1 (
  12.             set /a size1 = Width * %%b
  13.         ) else (
  14.             set /a var = size1 - Width * %%b
  15.         )
  16.     )
  17. )
  18. if %var% gtr 0 (
  19.     set jpg1=%jpg2%
  20.     set jpg2=%jpg1%
  21. )
  22. :: 读取“%txt%”的内容。(只读取第一行内容。)
  23. set /p text=<%txt%
  24. :: 给“%jpg2%”加水印文字“%txt%”和水印图片“%jpg1%”
  25. nconvert -text_flag top-right -text "%text%" -wmflag center -wmfile %jpg1% -out jpeg -o %jpg_output% %jpg2%
复制代码

[ 本帖最后由 tmplinshi 于 2011-1-5 07:18 编辑 ]
作者: 2323947724    时间: 2017-4-23 02:15

本帖最后由 pcl_test 于 2017-4-23 02:23 编辑

回复 2# tmplinshi


http://www.bathome.net/thread-43916-1-1.html
作者: Batcher    时间: 2018-10-4 21:51

为图片添加多行文字水印
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set CrLf=^
  4. set strWatermark=bbs!CrLf!bathome!CrLf!net
  5. nconvert -text_flag bottom-center -text "!strWatermark!" -out jpeg -o "1_new.jpg" "1.jpg"
复制代码

作者: 523066680    时间: 2018-10-5 09:20

本帖最后由 523066680 于 2018-10-5 10:38 编辑

抛个示例,ImageMagick 图片右下角加日期时间,新版不是convert命令了,是magick
  1. @echo off
  2. set t=%date:~0,10% %time:~0,5%
  3. set t=%t:/=-%
  4. magick sample.jpg -gravity SouthEast -draw "font-size 80 font simhei text 50,50 '%t%'" sample_date.jpg
  5. pause
复制代码
才发现是多年前的帖子




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2