From ca34494483c38274283ad4d6b931dd619323d892 Mon Sep 17 00:00:00 2001 From: ww-rm Date: Fri, 25 Jul 2025 13:50:36 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=AF=BC=E5=87=BA=E5=8D=95?= =?UTF-8?q?=E4=B8=AA=E6=A8=A1=E5=BC=8F=E7=9A=84=E6=97=B6=E9=95=BF=E9=94=99?= =?UTF-8?q?=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ViewModels/Exporters/CustomFFmpegExporterViewModel.cs | 2 +- .../ViewModels/Exporters/FFmpegVideoExporterViewModel.cs | 2 +- .../ViewModels/Exporters/FrameSequenceExporterViewModel.cs | 6 +++--- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/SpineViewer/ViewModels/Exporters/CustomFFmpegExporterViewModel.cs b/SpineViewer/ViewModels/Exporters/CustomFFmpegExporterViewModel.cs index bb90b00..6dc050b 100644 --- a/SpineViewer/ViewModels/Exporters/CustomFFmpegExporterViewModel.cs +++ b/SpineViewer/ViewModels/Exporters/CustomFFmpegExporterViewModel.cs @@ -92,7 +92,7 @@ namespace SpineViewer.ViewModels.Exporters var output = Path.Combine(_outputDir!, filename); if (_autoResolution) SetAutoResolutionAnimated(exporter, spines); - if (_duration < 0) exporter.Duration = spines.Select(sp => sp.GetAnimationMaxDuration()).DefaultIfEmpty(0).Max(); + exporter.Duration = _duration >= 0 ? _duration : spines.Select(sp => sp.GetAnimationMaxDuration()).DefaultIfEmpty(0).Max(); exporter.ProgressReporter = (total, done, text) => { diff --git a/SpineViewer/ViewModels/Exporters/FFmpegVideoExporterViewModel.cs b/SpineViewer/ViewModels/Exporters/FFmpegVideoExporterViewModel.cs index 5af1e78..97468ee 100644 --- a/SpineViewer/ViewModels/Exporters/FFmpegVideoExporterViewModel.cs +++ b/SpineViewer/ViewModels/Exporters/FFmpegVideoExporterViewModel.cs @@ -83,7 +83,7 @@ namespace SpineViewer.ViewModels.Exporters var output = Path.Combine(_outputDir!, filename); if (_autoResolution) SetAutoResolutionAnimated(exporter, spines); - if (_duration < 0) exporter.Duration = spines.Select(sp => sp.GetAnimationMaxDuration()).DefaultIfEmpty(0).Max(); + exporter.Duration = _duration >= 0 ? _duration : spines.Select(sp => sp.GetAnimationMaxDuration()).DefaultIfEmpty(0).Max(); exporter.ProgressReporter = (total, done, text) => { diff --git a/SpineViewer/ViewModels/Exporters/FrameSequenceExporterViewModel.cs b/SpineViewer/ViewModels/Exporters/FrameSequenceExporterViewModel.cs index ac91c91..68fcdd6 100644 --- a/SpineViewer/ViewModels/Exporters/FrameSequenceExporterViewModel.cs +++ b/SpineViewer/ViewModels/Exporters/FrameSequenceExporterViewModel.cs @@ -56,12 +56,12 @@ namespace SpineViewer.ViewModels.Exporters var output = Path.Combine(_outputDir!, folderName); if (_autoResolution) SetAutoResolutionAnimated(exporter, spines); - if (_duration < 0) exporter.Duration = spines.Select(sp => sp.GetAnimationMaxDuration()).DefaultIfEmpty(0).Max(); + exporter.Duration = _duration >= 0 ? _duration : spines.Select(sp => sp.GetAnimationMaxDuration()).DefaultIfEmpty(0).Max(); exporter.ProgressReporter = (total, done, text) => { - pr.Total = total; - pr.Done = done; + pr.Total = total; + pr.Done = done; pr.ProgressText = text; _vmMain.ProgressValue = pr.Done / pr.Total; };