diff --git a/BetterLyrics.WinUI3/BetterLyrics.WinUI3/Controls/LyricsSettingsControl.xaml b/BetterLyrics.WinUI3/BetterLyrics.WinUI3/Controls/LyricsSettingsControl.xaml index 8c53e2b..0d6a9df 100644 --- a/BetterLyrics.WinUI3/BetterLyrics.WinUI3/Controls/LyricsSettingsControl.xaml +++ b/BetterLyrics.WinUI3/BetterLyrics.WinUI3/Controls/LyricsSettingsControl.xaml @@ -358,9 +358,25 @@ - + - + + + + + + + 旋转 -> 平移 ds.Transform = Matrix3x2.CreateScale((float)line.ScaleTransition.Value, line.CenterPosition) - * Matrix3x2.CreateRotation((float)line.AngleTransition.Value, currentPlayingLine.Position) + * Matrix3x2.CreateRotation((float)line.AngleTransition.Value, + currentPlayingLine.Position.WithX(_liveStatesService.LiveStates.LyricsWindowStatus.LyricsEffectSettings.FanLyricsAngle < 0 ? (float)_maxLyricsWidth : 0)) * Matrix3x2.CreateTranslation((float)_lyricsXTransition.Value, (float)yOffset); using var combined = new CanvasCommandList(control); diff --git a/BetterLyrics.WinUI3/BetterLyrics.WinUI3/ViewModels/LyricsRendererViewModel/LyricsRendererViewModel.Messages.cs b/BetterLyrics.WinUI3/BetterLyrics.WinUI3/ViewModels/LyricsRendererViewModel/LyricsRendererViewModel.Messages.cs index d794cf9..eda1946 100644 --- a/BetterLyrics.WinUI3/BetterLyrics.WinUI3/ViewModels/LyricsRendererViewModel/LyricsRendererViewModel.Messages.cs +++ b/BetterLyrics.WinUI3/BetterLyrics.WinUI3/ViewModels/LyricsRendererViewModel/LyricsRendererViewModel.Messages.cs @@ -207,6 +207,10 @@ namespace BetterLyrics.WinUI3.ViewModels.LyricsRendererViewModel { _isLayoutChanged = true; } + else if (message.PropertyName == nameof(LyricsEffectSettings.FanLyricsAngle)) + { + _isLayoutChanged = true; + } } else if (message.Sender is LyricsStyleSettings) { diff --git a/BetterLyrics.WinUI3/BetterLyrics.WinUI3/ViewModels/LyricsRendererViewModel/LyricsRendererViewModel.Update.cs b/BetterLyrics.WinUI3/BetterLyrics.WinUI3/ViewModels/LyricsRendererViewModel/LyricsRendererViewModel.Update.cs index 702a875..00980b6 100644 --- a/BetterLyrics.WinUI3/BetterLyrics.WinUI3/ViewModels/LyricsRendererViewModel/LyricsRendererViewModel.Update.cs +++ b/BetterLyrics.WinUI3/BetterLyrics.WinUI3/ViewModels/LyricsRendererViewModel/LyricsRendererViewModel.Update.cs @@ -696,7 +696,7 @@ namespace BetterLyrics.WinUI3.ViewModels.LyricsRendererViewModel line.AngleTransition.StartTransition(_liveStatesService.LiveStates.LyricsWindowStatus.LyricsEffectSettings.IsFanLyricsEnabled ? Math.PI - * (30.0 / 180.0) + * (_liveStatesService.LiveStates.LyricsWindowStatus.LyricsEffectSettings.FanLyricsAngle / 180.0) * distanceFactor * (i > _playingLineIndex ? 1 : -1) : 0 diff --git a/LICENSE.txt b/LICENSE.txt index ed1214f..fe33cba 100644 --- a/LICENSE.txt +++ b/LICENSE.txt @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2025 Zhe Fang +Copyright (c) 2025 Zhe Fang and contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal