[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

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

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

似乎通过ps能很简单实现,批处理能否实现?还是需要调用第三方软件,请达人指点一下

需下载 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 编辑 ]

TOP

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

回复 2# tmplinshi


http://www.bathome.net/thread-43916-1-1.html

TOP

为图片添加多行文字水印
  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"
复制代码
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

本帖最后由 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
复制代码
才发现是多年前的帖子

TOP

返回列表