Board logo

标题: [系统相关] 请教BeePhoto.exe(在屏幕上显示图片)怎么用? [打印本页]

作者: locoman    时间: 2020-6-24 10:43     标题: 请教BeePhoto.exe(在屏幕上显示图片)怎么用?

BeePhoto.exe(在屏幕上显示图片)怎么用?

论坛中有这个命令行工具,但没有使用说明,该工具也没有命令行帮助信息,想用又不知道怎么用!
请问大神们知道这个工具的详细用法吗?谢谢指点!!

作者: locoman    时间: 2020-6-24 10:43

@Batcher大神,您知道怎么用吗?
作者: Batcher    时间: 2020-6-24 13:39

回复 2# locoman


    我没有用过这个工具
作者: locoman    时间: 2020-6-24 18:10

回复 3# Batcher


   论坛中就有,请看:
http://bbs.bathome.net/viewthread.php?tid=3934

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

谢谢您一直的帮助和指导!
作者: Batcher    时间: 2020-6-24 20:23

回复 4# locoman


    我找不到使用说明和详细用法
作者: Batcher    时间: 2020-10-17 13:34

回复 1# locoman


BeePhoto 用法:
http://bbs.bathome.net/thread-7755-1-1.html#pid51205
作者: locoman    时间: 2020-10-18 19:28

回复 6# Batcher


    非常感谢您!
您一直都是那样的热忱和无私,是网络江湖之楷模!我已在微信群中发了红包以资答谢!

作者: Batcher    时间: 2020-10-20 23:24

批处理调用 BeePhoto 在屏幕上居中显示一个图片(手工设置图片宽度和高度)
  1. @echo off
  2. set "PictureName=屏幕水印001.bmp"
  3. set "PictureWidth=800"
  4. set "PictureHeight=700"
  5. cd /d "%~dp0"
  6. for /f "tokens=1-2" %%a in ('mshta VBScript:Execute("CreateObject(""Scripting.Filesystemobject"").GetStandardStream(1).Write(screen.width&"" ""&screen.height)"^)(close^)') do (
  7.     set "ScreenWidth=%%a"
  8.     set "ScreenHeight=%%b"
  9. )
  10. set /a PositionX=(ScreenWidth-PictureWidth)/2
  11. set /a PositionY=(ScreenHeight-PictureHeight)/2
  12. BeePhoto /p:"%PictureName%" /x:%PositionX% /y:%PositionY%
复制代码

作者: Batcher    时间: 2020-10-20 23:47

批处理调用 BeePhoto 在屏幕上居中显示一个图片(调用 nconvert 获取图片的宽度和高度)
  1. @echo off
  2. set "PictureName=屏幕水印001.bmp"
  3. cd /d "%~dp0"
  4. for /f "tokens=1,3" %%a in ('nconvert -info "%PictureName%"') do (
  5.     set "str=%%a"
  6.     if "%%a" equ "Width" (
  7.         set "PictureWidth=%%b"
  8.     ) else if "%%a" equ "Height" (
  9.         set "PictureHeight=%%b"
  10.     )
  11. )
  12. for /f "tokens=1-2" %%a in ('mshta VBScript:Execute("CreateObject(""Scripting.Filesystemobject"").GetStandardStream(1).Write(screen.width&"" ""&screen.height)"^)(close^)') do (
  13.     set "ScreenWidth=%%a"
  14.     set "ScreenHeight=%%b"
  15. )
  16. set /a PositionX=(ScreenWidth-PictureWidth)/2
  17. set /a PositionY=(ScreenHeight-PictureHeight)/2
  18. BeePhoto /p:"%PictureName%" /x:%PositionX% /y:%PositionY%
复制代码

作者: 0475    时间: 2022-8-23 08:49

批处理调用 BeePhoto 在屏幕上居中显示一个图片(调用 nconvert 获取图片的宽度和高度)
Batcher 发表于 2020-10-20 23:47



    大佬,连续显示多个图片如何弄?我只会这样,代码太多了
@echo off
set "ictureName=img\209.png"
set "PictureName2=img\201.jpg"
set "PictureName3=img\202.jpg"
cd /d "%~dp0"
for /f "tokens=1,3" %%a in ('nconvert_6.8 -info "%PictureName%"') do (
    set "str=%%a"
    if "%%a" equ "Width" (
        set "PictureWidth=%%b"
    ) else if "%%a" equ "Height" (
        set "PictureHeight=%%b"
    )
)
for /f "tokens=1-2" %%a in ('mshta VBScript:Execute("CreateObject(""Scripting.Filesystemobject"").GetStandardStream(1).Write(screen.width&"" ""&screen.height)"^)(close^)') do (
    set "ScreenWidth=%%a"
    set "ScreenHeight=%%b"
)
set /a PositionX=(ScreenWidth-PictureWidth)/2
set /a PositionY=(ScreenHeight-PictureHeight)/2
BeePhoto /p:"%PictureName%" /x:%PositionX% /y:%PositionY% /t:6000

for /f "tokens=1,3" %%a in ('nconvert_6.8 -info "%PictureName2%"') do (
    set "str=%%a"
    if "%%a" equ "Width" (
        set "PictureWidth=%%b"
    ) else if "%%a" equ "Height" (
        set "PictureHeight=%%b"
    )
)
for /f "tokens=1-2" %%a in ('mshta VBScript:Execute("CreateObject(""Scripting.Filesystemobject"").GetStandardStream(1).Write(screen.width&"" ""&screen.height)"^)(close^)') do (
    set "ScreenWidth=%%a"
    set "ScreenHeight=%%b"
)
set /a PositionX=(ScreenWidth-PictureWidth)/2
set /a PositionY=(ScreenHeight-PictureHeight)/2
BeePhoto /p:"%PictureName2%" /x:%PositionX% /y:%PositionY% /t:6000

for /f "tokens=1,3" %%a in ('nconvert_6.8 -info "%PictureName3%"') do (
    set "str=%%a"
    if "%%a" equ "Width" (
        set "PictureWidth=%%b"
    ) else if "%%a" equ "Height" (
        set "PictureHeight=%%b"
    )
)
for /f "tokens=1-2" %%a in ('mshta VBScript:Execute("CreateObject(""Scripting.Filesystemobject"").GetStandardStream(1).Write(screen.width&"" ""&screen.height)"^)(close^)') do (
    set "ScreenWidth=%%a"
    set "ScreenHeight=%%b"
)
set /a PositionX=(ScreenWidth-PictureWidth)/2
set /a PositionY=(ScreenHeight-PictureHeight)/2
BeePhoto /p:"%PictureName3%" /x:%PositionX% /y:%PositionY% /t:6000
作者: 0475    时间: 2022-8-23 08:57

想要连续显示多个图片,每个图片像素不一样,判断图片居中显示
作者: Batcher    时间: 2022-8-23 10:07

回复 10# 0475
  1. @echo off
  2. set "PictureName1=img\209.png"
  3. set "PictureName2=img\201.jpg"
  4. set "PictureName3=img\202.jpg"
  5. cd /d "%~dp0"
  6. for /f "tokens=1-2" %%a in ('mshta VBScript:Execute("CreateObject(""Scripting.Filesystemobject"").GetStandardStream(1).Write(screen.width&"" ""&screen.height)"^)(close^)') do (
  7.     set "ScreenWidth=%%a"
  8.     set "ScreenHeight=%%b"
  9. )
  10. for %%i in (%PictureName1% %PictureName2% %PictureName3% ) do (
  11.     call :GetPicSize "%%i"
  12. )
  13. goto :eof
  14. :GetPicSize
  15. for /f "tokens=1,3" %%a in ('nconvert -info "%~1"') do (
  16.     set "str=%%a"
  17.     if "%%a" equ "Width" (
  18.         set "PictureWidth=%%b"
  19.     ) else if "%%a" equ "Height" (
  20.         set "PictureHeight=%%b"
  21.     )
  22. )
  23. set /a PositionX=(ScreenWidth-PictureWidth)/2
  24. set /a PositionY=(ScreenHeight-PictureHeight)/2
  25. BeePhoto /p:"%~1" /x:%PositionX% /y:%PositionY%
复制代码

作者: 0475    时间: 2022-8-23 14:04

回复 12# Batcher


    感谢大神,太完美了,谢谢




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