From 34b7002faf703b17942f3d06f9f466c8cef0a275 Mon Sep 17 00:00:00 2001 From: ww-rm Date: Thu, 27 Mar 2025 10:08:16 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E8=83=8C=E6=99=AF=E9=A2=9C?= =?UTF-8?q?=E8=89=B2=E9=80=89=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SpineViewer/Exporter/ExportArgs.cs | 6 ++++++ SpineViewer/Exporter/Exporter.cs | 4 ++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/SpineViewer/Exporter/ExportArgs.cs b/SpineViewer/Exporter/ExportArgs.cs index f0acb6e..077d41e 100644 --- a/SpineViewer/Exporter/ExportArgs.cs +++ b/SpineViewer/Exporter/ExportArgs.cs @@ -88,6 +88,12 @@ namespace SpineViewer.Exporter [Category("[0] 导出"), DisplayName("仅渲染选中"), Description("是否仅导出选中的模型,请在预览画面参数面板进行调整")] public bool RenderSelectedOnly { get; } + /// + /// 背景颜色 TODO: 提供颜色编辑 + /// + [Category("[0] 导出"), DisplayName("背景颜色"), Description("要使用的背景色, 格式为 #RRGGBBAA")] + public SFML.Graphics.Color BackgroundColor { get; set; } = SFML.Graphics.Color.Transparent; + /// /// 检查参数是否合法并规范化参数值, 否则返回用户错误原因 /// diff --git a/SpineViewer/Exporter/Exporter.cs b/SpineViewer/Exporter/Exporter.cs index c435133..018ea65 100644 --- a/SpineViewer/Exporter/Exporter.cs +++ b/SpineViewer/Exporter/Exporter.cs @@ -81,7 +81,7 @@ namespace SpineViewer.Exporter { // tex 必须临时创建, 随用随取, 防止出现跨线程的情况 using var tex = GetRenderTexture(); - tex.Clear(SFML.Graphics.Color.Transparent); + tex.Clear(ExportArgs.BackgroundColor); tex.Draw(spine); tex.Display(); return new(tex.Texture.CopyToImage()); @@ -94,7 +94,7 @@ namespace SpineViewer.Exporter { // tex 必须临时创建, 随用随取, 防止出现跨线程的情况 using var tex = GetRenderTexture(); - tex.Clear(SFML.Graphics.Color.Transparent); + tex.Clear(ExportArgs.BackgroundColor); foreach (var spine in spinesToRender) tex.Draw(spine); tex.Display(); return new(tex.Texture.CopyToImage());