一个基于 .NET 8 和 WPF 的杀戮尖塔2卡牌裁剪器。 使用GPT5.4编写。
- 支持拖拽单个图片、多个图片或整个文件夹
- 支持在 exe 窗口中直接输入图片路径或文件夹路径并处理
- 支持通过 JSON 配置导入一个或多个输入目录
- 支持把图片文件或文件夹直接拖到 exe 图标上启动并自动处理
- 支持三种裁剪模式:默认卡牌 500 × 381、先古卡牌 500 × 762、自定义宽高
- 将图片按 cover 策略等比例缩放后,以中心点裁剪为所选尺寸
- 统一导出为 PNG
- 开发环境输出到项目根目录的 output 文件夹,发布后的 exe 输出到 exe 同级目录的 output 文件夹
- 同名文件直接覆盖
- .png
- .jpg
- .jpeg
- .bmp
- .gif
- .webp
参见 config/example-config.json。
{
"inputDirectories": [
"D:\\Images\\SourceA",
"D:\\Images\\SourceB"
],
"recursive": true
}dotnet build .\sts2CardImageResizer.sln
dotnet run --project .\ImageResizer.App\ImageResizer.App.csproj.\scripts\publish.ps1如果 PowerShell 执行策略阻止脚本运行,可以改用:
powershell -ExecutionPolicy Bypass -File .\scripts\publish.ps1或者直接执行:
dotnet publish .\ImageResizer.App\ImageResizer.App.csproj -c Release -r win-x64 --self-contained true /p:PublishSingleFile=true /p:IncludeNativeLibrariesForSelfExtract=true /p:EnableCompressionInSingleFile=true发布后工作区根目录会直接得到一份 exe:
sts2CardImageResizer.exe
原始 publish 输出仍位于:
ImageResizer.App\bin\Release\net8.0-windows\win-x64\publish\sts2CardImageResizer.exe
- 启动应用。
- 你可以直接拖入图片或文件夹到窗口,拖入后会立即开始处理。
- 你也可以在窗口顶部输入图片路径或文件夹路径,然后点击“加入路径”或“直接处理路径”。
- 如需按目录配置批量导入,点击“加载 JSON 配置”。
- 如果你把图片文件或文件夹直接拖到 exe 图标上,程序启动后会自动处理这些输入。
- 需要手动批量处理当前列表时,点击“开始处理”。
- 在 output 文件夹查看导出结果。
- 默认卡牌模式输出 500 × 381
- 先古卡牌模式输出 500 × 762
- 自定义模式输出你输入的 x × y
- 先按等比例放大到至少覆盖目标尺寸
- 再以中心为锚点裁剪
- 输出文件名沿用原文件名,扩展名统一为 .png