图片压缩包 教程

现在我制作的2.O出世

自动识别ZIP与7z并且输出的图片和压缩包名字一样间的便捷

全自动识别ZIP与Z7代码
@echo off
chcp 65001 > nul
setlocal enabledelayedexpansion

REM 检查是否存在 b.png 文件
if not exist "b.png" (
    echo 没有找到 b.png 文件
    pause
    exit /b 1
)

REM 获取第一个匹配到的 7z 或 zip 文件名
for %%F in (*.7z *.zip) do (
    set "archive_file=%%~nxF"
    goto :break
)
:break

REM 如果没有找到 7z 或 zip 文件,则输出相应提示并退出
if not defined archive_file (
    echo 没有找到 7z 或 zip 文件
    pause
    exit /b 1
)

REM 获取压缩文件名(不包含后缀)
for /F "delims=" %%A in ("!archive_file!") do (
    set "archive_filename=%%~nA"
)

REM 合并文件
copy /b b.png+"!archive_file!" "!archive_filename!.png"

REM 提示消息
echo 一只废阿宅制作
pause

:end

如何实现图片复制给图片
for /F "delims=" %%A in ("!archive_file!") do (
    set "archive_filename=%%~nA"

段代码是 Windows 批处理脚本中的一部分,它的作用是从变量 archive_file 中获取文件名,并将其赋值给变量 archive_filename

让我逐行解释:

  1. for /F "delims=" %%A in ("!archive_file!") do (
    这是一个 for 循环的开始,它会遍历由 archive_file 变量指定的文件(假设它是一个文件路径)。
  • /F
    表示使用文件内容而不是文件列表进行循环。
  • "delims="
    指定了分隔符为空,这样就可以处理文件名中的空格。
  • %%A
    是用于循环的变量名,在每次迭代中,它会被设置为文件中的一行内容。
  1. set "archive_filename=%%~nA":这行代码将循环变量 %%A 的文件名部分提取出来,并赋值给 archive_filename 变量。
  • %%~nA 表示对循环变量 %%A 中的文件名部分进行变换,n 表示仅获取文件名部分,而不包括路径和扩展名。

copy /b b.png+"!archive_file!" "!archive_filename!.png

  1. copy /b b.png+"!archive_file!":这部分命令使用 copy 命令来将两个文件合并。
  • /b 选项告诉 copy 命令以二进制模式合并文件,这对于合并图像文件通常是必要的。
  • b.png 是一个文件,archive_file 是另一个文件,它们将被合并在一起。
  1. "!archive_filename!.png":这部分指定了合并后的文件的名称。archive_filename 变量保存了之前提取出的 archive_file 的文件名部分,加上 .png 扩展名,最终形成了合并后的文件名。

所以,整个命令的目的是将两个文件合并成一个新文件,并且新文件的名称基于 archive_file 的文件名部分。

废案2.0


copy 你图片名字.png/b+你压缩包名字.7z/b=生成的图片名字.png
如图中我举个例是 B是我第三个图片 a是我的压缩包 C是我生成的压缩包
copy b.png/b+a.7z/b=c.png

如何生成呢?

第一步

新建一个文件夹

第二步

拖入你的图片/压缩包

第三步

新建一个 文本.txt

第四步

双击你的鼠标打开文本
输入指令:copy b.png/b+a.7z/b=c.png
这里你需要把b.png a.7z记得换成你的图片名字和压缩包名字

第五步

然后右键 你的txt



修改里面的
.txt
把它改成
.bat
然后点确定

第六步

双击启动


这样你的 压缩包就变成了一张很大的图片

第七步

如何打开? 你只需要修改png变成7z或者zip即可


或者 右键选择打开方式 然后点选择其他应用找到你的 压缩软件程序 一样是可以打开

1 Like