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

TOP

想要连续显示多个图片,每个图片像素不一样,判断图片居中显示

TOP

回复 12# Batcher


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

TOP

返回列表