mirror of
https://github.com/aseprite/aseprite.git
synced 2024-11-20 14:21:45 +00:00
Check loading/saving a single image in all formats
This commit is contained in:
parent
d9cde80ebb
commit
7dad69e310
61
cli/file-formats.sh
Normal file
61
cli/file-formats.sh
Normal file
@ -0,0 +1,61 @@
|
||||
#! /bin/bash
|
||||
# Copyright (C) 2019 Igara Studio S.A.
|
||||
|
||||
# Create a simple image and save it in all formats using scripts
|
||||
d=$t/file-formats
|
||||
mkdir $d
|
||||
cat >$d/gen.lua <<EOF
|
||||
local a = Sprite(32, 32)
|
||||
app.useTool{ points={{0,0},{31,31}}, tool='filled_ellipse', color=Color(255,255,255) }
|
||||
a:saveAs('$d/test.aseprite')
|
||||
a:saveAs('$d/test.gif')
|
||||
a:saveAs('$d/test.ico')
|
||||
a:saveAs('$d/test.jpg')
|
||||
a:saveAs('$d/test.pcx')
|
||||
a:saveAs('$d/test.svg')
|
||||
a:saveAs('$d/test.tga')
|
||||
a:saveAs('$d/test.webp')
|
||||
EOF
|
||||
$ASEPRITE -b -script "$d/gen.lua" || exit 1
|
||||
|
||||
# Load image and save in all formats using CLI
|
||||
$ASEPRITE -b "$d/test.aseprite" \
|
||||
-save-as "$d/test2.gif" \
|
||||
-save-as "$d/test2.ico" \
|
||||
-save-as "$d/test2.jpg" \
|
||||
-save-as "$d/test2.pcx" \
|
||||
-save-as "$d/test2.svg" \
|
||||
-save-as "$d/test2.tga" \
|
||||
-save-as "$d/test2.webp" \
|
||||
|| exit 1
|
||||
|
||||
# Compare that all images are the same/equivalent
|
||||
# Note: app.open() and Sprite{fromFile:} are the same
|
||||
cat >$d/compare.lua <<EOF
|
||||
local a = Sprite{ fromFile="$d/test.aseprite" }
|
||||
local b = {
|
||||
app.open("$d/test.gif"), app.open("$d/test2.gif"),
|
||||
app.open("$d/test.ico"), app.open("$d/test2.ico"),
|
||||
app.open("$d/test.jpg"), app.open("$d/test2.jpg"),
|
||||
app.open("$d/test.pcx"), app.open("$d/test2.pcx"),
|
||||
--app.open("$d/test.svg"), -- we don't support loading SVG files
|
||||
app.open("$d/test.tga"), app.open("$d/test2.tga"),
|
||||
app.open("$d/test.webp"), app.open("$d/test2.webp")
|
||||
}
|
||||
for i,c in ipairs(b) do
|
||||
if c.colorMode == ColorMode.INDEXED then
|
||||
app.activeSprite = c
|
||||
app.command.ChangePixelFormat{ format="rgb" }
|
||||
end
|
||||
assert(c.colorMode == ColorMode.RGB)
|
||||
if c.layers[1].isBackground then -- jpg and pcx
|
||||
app.activeSprite = c
|
||||
app.command.LayerFromBackground()
|
||||
-- tolerance is 1 to remove jpg noise
|
||||
app.command.ReplaceColor{ from=Color(0, 0, 0, 255), to=Color(0, 0, 0, 0), tolerance=1 }
|
||||
app.command.ReplaceColor{ from=Color(255, 255, 255, 255), to=Color(255, 255, 255, 255), tolerance=1 }
|
||||
end
|
||||
assert(a.cels[1].image:isEqual(c.cels[1].image))
|
||||
end
|
||||
EOF
|
||||
$ASEPRITE -b -script "$d/compare.lua" || exit 1
|
Loading…
Reference in New Issue
Block a user