mirror of
https://github.com/aseprite/aseprite.git
synced 2025-02-11 09:40:42 +00:00
Add Trim option in Export Sprite Sheet
This commit is contained in:
parent
d67b083e42
commit
d3d107b0ac
@ -342,6 +342,7 @@
|
|||||||
<option id="border_padding" type="int" default="0" />
|
<option id="border_padding" type="int" default="0" />
|
||||||
<option id="shape_padding" type="int" default="0" />
|
<option id="shape_padding" type="int" default="0" />
|
||||||
<option id="inner_padding" type="int" default="0" />
|
<option id="inner_padding" type="int" default="0" />
|
||||||
|
<option id="trim" type="bool" default="false" />
|
||||||
<option id="open_generated" type="bool" default="false" />
|
<option id="open_generated" type="bool" default="false" />
|
||||||
<option id="layer" type="std::string" />
|
<option id="layer" type="std::string" />
|
||||||
<option id="frame_tag" type="std::string" />
|
<option id="frame_tag" type="std::string" />
|
||||||
|
@ -234,6 +234,7 @@ padding = Padding
|
|||||||
border = Border:
|
border = Border:
|
||||||
shape = Shape:
|
shape = Shape:
|
||||||
inner = Inner:
|
inner = Inner:
|
||||||
|
trim = Trim
|
||||||
width = Width:
|
width = Width:
|
||||||
height = Height:
|
height = Height:
|
||||||
best_fit = Best fit for texture
|
best_fit = Best fit for texture
|
||||||
|
@ -17,6 +17,7 @@
|
|||||||
<hbox />
|
<hbox />
|
||||||
<vbox>
|
<vbox>
|
||||||
<check id="padding_enabled" text="@.padding" />
|
<check id="padding_enabled" text="@.padding" />
|
||||||
|
<check id="trim_enabled" text="@.trim" />
|
||||||
</vbox>
|
</vbox>
|
||||||
<grid columns="2" id="padding_container" cell_hspan="2">
|
<grid columns="2" id="padding_container" cell_hspan="2">
|
||||||
<label text="@.border" />
|
<label text="@.border" />
|
||||||
|
@ -188,6 +188,7 @@ public:
|
|||||||
m_sprite, frames(), m_docPref.spriteSheet.frameTag());
|
m_sprite, frames(), m_docPref.spriteSheet.frameTag());
|
||||||
|
|
||||||
openGenerated()->setSelected(m_docPref.spriteSheet.openGenerated());
|
openGenerated()->setSelected(m_docPref.spriteSheet.openGenerated());
|
||||||
|
trimEnabled()->setSelected(m_docPref.spriteSheet.trim());
|
||||||
|
|
||||||
borderPadding()->setTextf("%d", m_docPref.spriteSheet.borderPadding());
|
borderPadding()->setTextf("%d", m_docPref.spriteSheet.borderPadding());
|
||||||
shapePadding()->setTextf("%d", m_docPref.spriteSheet.shapePadding());
|
shapePadding()->setTextf("%d", m_docPref.spriteSheet.shapePadding());
|
||||||
@ -356,6 +357,10 @@ public:
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool trimValue() const {
|
||||||
|
return trimEnabled()->isSelected();
|
||||||
|
}
|
||||||
|
|
||||||
bool openGeneratedValue() const {
|
bool openGeneratedValue() const {
|
||||||
return openGenerated()->isSelected();
|
return openGenerated()->isSelected();
|
||||||
}
|
}
|
||||||
@ -641,6 +646,7 @@ void ExportSpriteSheetCommand::onExecute(Context* context)
|
|||||||
docPref.spriteSheet.borderPadding(window.borderPaddingValue());
|
docPref.spriteSheet.borderPadding(window.borderPaddingValue());
|
||||||
docPref.spriteSheet.shapePadding(window.shapePaddingValue());
|
docPref.spriteSheet.shapePadding(window.shapePaddingValue());
|
||||||
docPref.spriteSheet.innerPadding(window.innerPaddingValue());
|
docPref.spriteSheet.innerPadding(window.innerPaddingValue());
|
||||||
|
docPref.spriteSheet.trim(window.trimValue());
|
||||||
docPref.spriteSheet.openGenerated(window.openGeneratedValue());
|
docPref.spriteSheet.openGenerated(window.openGeneratedValue());
|
||||||
docPref.spriteSheet.layer(window.layerValue());
|
docPref.spriteSheet.layer(window.layerValue());
|
||||||
docPref.spriteSheet.frameTag(window.frameTagValue());
|
docPref.spriteSheet.frameTag(window.frameTagValue());
|
||||||
@ -678,9 +684,10 @@ void ExportSpriteSheetCommand::onExecute(Context* context)
|
|||||||
borderPadding = MID(0, borderPadding, 100);
|
borderPadding = MID(0, borderPadding, 100);
|
||||||
shapePadding = MID(0, shapePadding, 100);
|
shapePadding = MID(0, shapePadding, 100);
|
||||||
innerPadding = MID(0, innerPadding, 100);
|
innerPadding = MID(0, innerPadding, 100);
|
||||||
bool listLayers = docPref.spriteSheet.listLayers();
|
const bool trimCels = docPref.spriteSheet.trim();
|
||||||
bool listFrameTags = docPref.spriteSheet.listFrameTags();
|
const bool listLayers = docPref.spriteSheet.listLayers();
|
||||||
bool listSlices = docPref.spriteSheet.listSlices();
|
const bool listFrameTags = docPref.spriteSheet.listFrameTags();
|
||||||
|
const bool listSlices = docPref.spriteSheet.listSlices();
|
||||||
|
|
||||||
if (context->isUIAvailable() && askOverwrite) {
|
if (context->isUIAvailable() && askOverwrite) {
|
||||||
if (!ask_overwrite(true, filename,
|
if (!ask_overwrite(true, filename,
|
||||||
@ -758,6 +765,7 @@ void ExportSpriteSheetCommand::onExecute(Context* context)
|
|||||||
exporter.setBorderPadding(borderPadding);
|
exporter.setBorderPadding(borderPadding);
|
||||||
exporter.setShapePadding(shapePadding);
|
exporter.setShapePadding(shapePadding);
|
||||||
exporter.setInnerPadding(innerPadding);
|
exporter.setInnerPadding(innerPadding);
|
||||||
|
exporter.setTrimCels(trimCels);
|
||||||
if (listLayers) exporter.setListLayers(true);
|
if (listLayers) exporter.setListLayers(true);
|
||||||
if (listFrameTags) exporter.setListFrameTags(true);
|
if (listFrameTags) exporter.setListFrameTags(true);
|
||||||
if (listSlices) exporter.setListSlices(true);
|
if (listSlices) exporter.setListSlices(true);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user