Forráskód Böngészése

Update to 2.15.4
* MISC - Added configuration option to apply 'UI resize behaviour' to all components regardless of them being translated: ForceUIResizing
* MISC - Added configuration option to change line spacing for UGUI within the 'UI resize behaviour': ResizeUILineSpacingScale

randoman 6 éve
szülő
commit
9b1595dfde

+ 5 - 1
CHANGELOG.md

@@ -1,4 +1,8 @@
-### 2.15.3
+### 2.15.4
+ * MISC - Added configuration option to apply 'UI resize behaviour' to all components regardless of them being translated: ForceUIResizing
+ * MISC - Added configuration option to change line spacing for UGUI within the 'UI resize behaviour': ResizeUILineSpacingScale
+
+### 2.15.3
  * BUG FIX - Potential crash during startup where potentially 'illegal' property was being read.
  * MISC - Support 'scrolling text' for immediate components such as IMGUI. Previously such behaviour would shut down the plugin.
  * MISC - Changed behaviour of font overriding. All found Text instances will now have their fonts changed.

+ 2 - 0
README.md

@@ -57,6 +57,8 @@ TrimAllText=True                 ;Indicates whether spaces in front and behind t
 UseStaticTranslations=True       ;Indicates whether or not to use translations from the included static translation cache
 OverrideFont=                    ;Overrides the fonts used for texts when updating text components. NOTE: Only works for UGUI
 WhitespaceRemovalStrategy=TrimPerNewline ;Indicates how whitespace/newline removal should be handled before attempting translation. Can be ["TrimPerNewline", "AllOccurrences"]
+ResizeUILineSpacingScale=        ;A decimal value that the default line spacing should be scaled by during UI resizing, for example: 0.80. NOTE: Only works for UGUI
+ForceUIResizing=True             ;Indicates whether the UI resize behavior should be applied to all UI components regardless of them being translated.
 
 [Http]
 UserAgent=                       ;Override the user agent used by APIs requiring a user agent

+ 1 - 1
src/XUnity.AutoTranslator.Patcher/Patcher.cs

@@ -29,7 +29,7 @@ namespace XUnity.AutoTranslator.Patcher
       {
          get
          {
-            return "2.15.3";
+            return "2.15.4";
          }
       }
 

+ 1 - 1
src/XUnity.AutoTranslator.Plugin.BepIn/XUnity.AutoTranslator.Plugin.BepIn.csproj

@@ -2,7 +2,7 @@
 
    <PropertyGroup>
       <TargetFramework>net35</TargetFramework>
-      <Version>2.15.3</Version>
+      <Version>2.15.4</Version>
    </PropertyGroup>
 
    <ItemGroup>

+ 27 - 8
src/XUnity.AutoTranslator.Plugin.Core/AutoTranslationPlugin.cs

@@ -592,8 +592,9 @@ namespace XUnity.AutoTranslator.Plugin.Core
 
       private void AddTranslation( TranslationKey key, string value )
       {
-         _translations[ key.GetDictionaryLookupKey() ] = value;
-         _reverseTranslations[ value ] = key.GetDictionaryLookupKey();
+         var lookup = key.GetDictionaryLookupKey();
+         _translations[ lookup ] = value;
+         _reverseTranslations[ value ] = lookup;
       }
 
       private void QueueNewUntranslatedForClipboard( TranslationKey key )
@@ -700,7 +701,7 @@ namespace XUnity.AutoTranslator.Plugin.Core
          }
       }
 
-      public void Hook_HandleFont( object ui )
+      public void Hook_HandleComponent( object ui )
       {
          if( _hasOverrideFont )
          {
@@ -714,6 +715,20 @@ namespace XUnity.AutoTranslator.Plugin.Core
                info?.UnchangeFont( ui );
             }
          }
+
+         if( Settings.ForceUIResizing )
+         {
+            var info = ui.GetTranslationInfo();
+            if( info?.IsCurrentlySettingText == false )
+            {
+               // force UI resizing is highly problematic for NGUI because text should somehow
+               // be set after changing "resize" properties... brilliant stuff
+               if( ui.GetType() != Constants.Types.UILabel )
+               {
+                  info?.ResizeUI( ui );
+               }
+            }
+         }
       }
 
       /// <summary>
@@ -732,9 +747,9 @@ namespace XUnity.AutoTranslator.Plugin.Core
                   info.IsCurrentlySettingText = true;
                }
 
-               if( Settings.EnableUIResizing )
+               if( Settings.EnableUIResizing || Settings.ForceUIResizing )
                {
-                  if( isTranslated )
+                  if( isTranslated || Settings.ForceUIResizing )
                   {
                      info?.ResizeUI( ui );
                   }
@@ -883,6 +898,7 @@ namespace XUnity.AutoTranslator.Plugin.Core
       private string TranslateOrQueueWebJobImmediate( object ui, string text, TranslationInfo info, bool supportsStabilization, bool ignoreComponentState, TranslationContext context = null )
       {
          // make sure text exists
+         var originalText = text;
          text = text ?? ui.GetText();
          if( context == null )
          {
@@ -895,7 +911,7 @@ namespace XUnity.AutoTranslator.Plugin.Core
          // Ensure that we actually want to translate this text and its owning UI element. 
          if( !string.IsNullOrEmpty( text ) && IsTranslatable( text ) && ShouldTranslate( ui, ignoreComponentState ) && !IsCurrentlySetting( info ) )
          {
-            info?.Reset( text );
+            info?.Reset( originalText );
             var isSpammer = ui.IsSpammingComponent();
             var textKey = new TranslationKey( ui, text, isSpammer, context != null );
 
@@ -972,11 +988,14 @@ namespace XUnity.AutoTranslator.Plugin.Core
 
                               if( !string.IsNullOrEmpty( stabilizedText ) && IsTranslatable( stabilizedText ) )
                               {
+                                 originalText = stabilizedText;
+                                 stabilizedText = stabilizedText.TrimIfConfigured();
+
                                  var stabilizedTextKey = new TranslationKey( ui, stabilizedText, false );
 
                                  QueueNewUntranslatedForClipboard( stabilizedTextKey );
 
-                                 info?.Reset( stabilizedText );
+                                 info?.Reset( originalText );
 
                                  // once the text has stabilized, attempt to look it up
                                  if( TryGetTranslation( stabilizedTextKey, out translation ) )
@@ -1141,7 +1160,7 @@ namespace XUnity.AutoTranslator.Plugin.Core
 
             if( beforeText == afterText )
             {
-               onTextStabilized( afterText.TrimIfConfigured() );
+               onTextStabilized( afterText );
                succeeded = true;
                break;
             }

+ 29 - 13
src/XUnity.AutoTranslator.Plugin.Core/Configuration/IniKeyExtensions.cs

@@ -4,6 +4,7 @@ using System.Globalization;
 using System.Linq;
 using System.Text;
 using ExIni;
+using XUnity.AutoTranslator.Plugin.Core.Extensions;
 
 namespace XUnity.AutoTranslator.Plugin.Core.Configuration
 {
@@ -11,57 +12,72 @@ namespace XUnity.AutoTranslator.Plugin.Core.Configuration
    {
       public static T GetOrDefault<T>( this IniKey that, T defaultValue, bool allowEmpty = false )
       {
+         var typeOfT = typeof( T ).UnwrapNullable();
          if( !allowEmpty )
          {
             var value = that.Value;
             if( string.IsNullOrEmpty( value ) )
             {
-               if( typeof( T ).IsEnum )
+               if( defaultValue != null )
                {
-                  that.Value = Enum.GetName( typeof( T ), defaultValue );
+                  if( typeOfT.IsEnum )
+                  {
+                     that.Value = Enum.GetName( typeOfT, defaultValue );
+                  }
+                  else
+                  {
+                     that.Value = Convert.ToString( defaultValue, CultureInfo.InvariantCulture );
+                  }
                }
                else
                {
-                  that.Value = Convert.ToString( defaultValue, CultureInfo.InvariantCulture );
+                  that.Value = string.Empty;
                }
                return defaultValue;
             }
             else
             {
-               if( typeof( T ).IsEnum )
+               if( typeOfT.IsEnum )
                {
-                  return (T)Enum.Parse( typeof( T ), that.Value, true );
+                  return (T)Enum.Parse( typeOfT, that.Value, true );
                }
                else
                {
-                  return (T)Convert.ChangeType( that.Value, typeof( T ), CultureInfo.InvariantCulture );
+                  return (T)Convert.ChangeType( that.Value, typeOfT, CultureInfo.InvariantCulture );
                }
             }
          }
          else
          {
             var value = that.Value;
-            if( value == null )
+            if( string.IsNullOrEmpty( value ) )
             {
-               if( typeof( T ).IsEnum )
+               if( defaultValue != null )
                {
-                  that.Value = Enum.GetName( typeof( T ), defaultValue );
+                  if( typeOfT.IsEnum )
+                  {
+                     that.Value = Enum.GetName( typeOfT, defaultValue );
+                  }
+                  else
+                  {
+                     that.Value = Convert.ToString( defaultValue, CultureInfo.InvariantCulture );
+                  }
                }
                else
                {
-                  that.Value = Convert.ToString( defaultValue, CultureInfo.InvariantCulture );
+                  that.Value = string.Empty;
                }
                return defaultValue;
             }
             else
             {
-               if( typeof( T ).IsEnum )
+               if( typeOfT.IsEnum )
                {
-                  return (T)Enum.Parse( typeof( T ), that.Value, true );
+                  return (T)Enum.Parse( typeOfT, that.Value, true );
                }
                else
                {
-                  return (T)Convert.ChangeType( that.Value, typeof( T ), CultureInfo.InvariantCulture );
+                  return (T)Convert.ChangeType( that.Value, typeOfT, CultureInfo.InvariantCulture );
                }
             }
          }

+ 4 - 0
src/XUnity.AutoTranslator.Plugin.Core/Configuration/Settings.cs

@@ -76,6 +76,8 @@ namespace XUnity.AutoTranslator.Plugin.Core.Configuration
       public static string OverrideFont;
       public static string UserAgent;
       public static WhitespaceHandlingStrategy WhitespaceRemovalStrategy;
+      public static float? ResizeUILineSpacingScale;
+      public static bool ForceUIResizing;
 
       public static bool CopyToClipboard;
       public static int MaxClipboardCopyCharacters;
@@ -126,6 +128,8 @@ namespace XUnity.AutoTranslator.Plugin.Core.Configuration
          TrimAllText = Config.Current.Preferences[ "Behaviour" ][ "TrimAllText" ].GetOrDefault( Types.AdvEngine == null );
          UseStaticTranslations = Config.Current.Preferences[ "Behaviour" ][ "UseStaticTranslations" ].GetOrDefault( true );
          OverrideFont = Config.Current.Preferences[ "Behaviour" ][ "OverrideFont" ].GetOrDefault( string.Empty );
+         ResizeUILineSpacingScale = Config.Current.Preferences[ "Behaviour" ][ "ResizeUILineSpacingScale" ].GetOrDefault<float?>( null, true );
+         ForceUIResizing = Config.Current.Preferences[ "Behaviour" ][ "ForceUIResizing" ].GetOrDefault( false );
 
          // special handling because of enum parsing
          try

+ 1 - 1
src/XUnity.AutoTranslator.Plugin.Core/Constants/PluginData.cs

@@ -11,6 +11,6 @@ namespace XUnity.AutoTranslator.Plugin.Core.Constants
 
       public const string Name = "XUnity Auto Translator";
 
-      public const string Version = "2.15.3";
+      public const string Version = "2.15.4";
    }
 }

+ 46 - 0
src/XUnity.AutoTranslator.Plugin.Core/Extensions/ComponentExtensions.cs

@@ -56,4 +56,50 @@ namespace XUnity.AutoTranslator.Plugin.Core.Extensions
          }
       }
    }
+
+   public static class UILabelExtensions
+   {
+      private static readonly string SpacingYPropertyName = "spacingY";
+      private static readonly string FloatSpacingYPropertyName = "floatSpacingY";
+      private static readonly string UseFloatSpacingPropertyName = "useFloatSpacing";
+
+      public static object GetSpacingY( this object uiLabel )
+      {
+         var type = uiLabel.GetType();
+         var useFloatSpacing = (bool)type.GetProperty( UseFloatSpacingPropertyName )?.GetGetMethod()?.Invoke( uiLabel, null );
+         if( useFloatSpacing )
+         {
+            return type.GetProperty( FloatSpacingYPropertyName )?.GetGetMethod()?.Invoke( uiLabel, null );
+         }
+         else
+         {
+            return type.GetProperty( SpacingYPropertyName )?.GetGetMethod()?.Invoke( uiLabel, null );
+         }
+      }
+
+      public static void SetSpacingY( this object uiLabel, object spacing )
+      {
+         var type = uiLabel.GetType();
+         if( spacing is float )
+         {
+            type.GetProperty( FloatSpacingYPropertyName )?.GetSetMethod()?.Invoke( uiLabel, new[] { spacing } );
+         }
+         else
+         {
+            type.GetProperty( SpacingYPropertyName )?.GetSetMethod()?.Invoke( uiLabel, new[] { spacing } );
+         }
+      }
+
+      public static object Multiply( this object numeric, float scale )
+      {
+         if( numeric is float )
+         {
+            return (float)numeric * scale;
+         }
+         else
+         {
+            return (int)( (int)numeric * scale );
+         }
+      }
+   }
 }

+ 15 - 0
src/XUnity.AutoTranslator.Plugin.Core/Extensions/TypeExtensions.cs

@@ -0,0 +1,15 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+
+namespace XUnity.AutoTranslator.Plugin.Core.Extensions
+{
+   public static class TypeExtensions
+   {
+      public static Type UnwrapNullable( this Type type )
+      {
+         return Nullable.GetUnderlyingType( type ) ?? type;
+      }
+   }
+}

+ 12 - 2
src/XUnity.AutoTranslator.Plugin.Core/Hooks/NGUIHooks.cs

@@ -12,6 +12,8 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.NGUI
 {
    public static class NGUIHooks
    {
+      public static bool HooksOverriden = false;
+
       public static readonly Type[] All = new[] {
          typeof( TextPropertyHook ),
          typeof( OnEnableHook )
@@ -33,7 +35,11 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.NGUI
 
       public static void Postfix( object __instance )
       {
-         AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         if( !NGUIHooks.HooksOverriden )
+         {
+            AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         }
+         AutoTranslationPlugin.Current.Hook_HandleComponent( __instance );
       }
    }
 
@@ -52,7 +58,11 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.NGUI
 
       public static void Postfix( object __instance )
       {
-         AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         if( !NGUIHooks.HooksOverriden )
+         {
+            AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         }
+         AutoTranslationPlugin.Current.Hook_HandleComponent( __instance );
       }
    }
 }

+ 47 - 9
src/XUnity.AutoTranslator.Plugin.Core/Hooks/TextMeshProHooks.cs

@@ -10,6 +10,8 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.TextMeshPro
 {
    public static class TextMeshProHooks
    {
+      public static bool HooksOverriden = false;
+
       public static readonly Type[] All = new[] {
          typeof( TeshMeshProUGUIOnEnableHook ),
          typeof( TeshMeshProOnEnableHook ),
@@ -38,7 +40,11 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.TextMeshPro
 
       static void Postfix( object __instance )
       {
-         AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         if( !TextMeshProHooks.HooksOverriden )
+         {
+            AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         }
+         AutoTranslationPlugin.Current.Hook_HandleComponent( __instance );
       }
    }
 
@@ -57,7 +63,11 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.TextMeshPro
 
       static void Postfix( object __instance )
       {
-         AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         if( !TextMeshProHooks.HooksOverriden )
+         {
+            AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         }
+         AutoTranslationPlugin.Current.Hook_HandleComponent( __instance );
       }
    }
 
@@ -76,7 +86,11 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.TextMeshPro
 
       static void Postfix( object __instance )
       {
-         AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         if( !TextMeshProHooks.HooksOverriden )
+         {
+            AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         }
+         AutoTranslationPlugin.Current.Hook_HandleComponent( __instance );
       }
    }
 
@@ -95,7 +109,11 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.TextMeshPro
 
       static void Postfix( object __instance )
       {
-         AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         if( !TextMeshProHooks.HooksOverriden )
+         {
+            AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         }
+         AutoTranslationPlugin.Current.Hook_HandleComponent( __instance );
       }
    }
 
@@ -114,7 +132,11 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.TextMeshPro
 
       static void Postfix( object __instance )
       {
-         AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         if( !TextMeshProHooks.HooksOverriden )
+         {
+            AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         }
+         AutoTranslationPlugin.Current.Hook_HandleComponent( __instance );
       }
    }
 
@@ -133,7 +155,11 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.TextMeshPro
 
       static void Postfix( object __instance )
       {
-         AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         if( !TextMeshProHooks.HooksOverriden )
+         {
+            AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         }
+         AutoTranslationPlugin.Current.Hook_HandleComponent( __instance );
       }
    }
 
@@ -152,7 +178,11 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.TextMeshPro
 
       static void Postfix( object __instance )
       {
-         AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         if( !TextMeshProHooks.HooksOverriden )
+         {
+            AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         }
+         AutoTranslationPlugin.Current.Hook_HandleComponent( __instance );
       }
    }
 
@@ -171,7 +201,11 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.TextMeshPro
 
       static void Postfix( object __instance )
       {
-         AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         if( !TextMeshProHooks.HooksOverriden )
+         {
+            AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         }
+         AutoTranslationPlugin.Current.Hook_HandleComponent( __instance );
       }
    }
 
@@ -190,7 +224,11 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.TextMeshPro
 
       static void Postfix( object __instance )
       {
-         AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         if( !TextMeshProHooks.HooksOverriden )
+         {
+            AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
+         }
+         AutoTranslationPlugin.Current.Hook_HandleComponent( __instance );
       }
    }
 }

+ 2 - 2
src/XUnity.AutoTranslator.Plugin.Core/Hooks/UGUIHooks.cs

@@ -38,7 +38,7 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.UGUI
          {
             AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
          }
-         AutoTranslationPlugin.Current.Hook_HandleFont( __instance );
+         AutoTranslationPlugin.Current.Hook_HandleComponent( __instance );
       }
    }
 
@@ -62,7 +62,7 @@ namespace XUnity.AutoTranslator.Plugin.Core.Hooks.UGUI
          {
             AutoTranslationPlugin.Current.Hook_TextChanged( __instance );
          }
-         AutoTranslationPlugin.Current.Hook_HandleFont( __instance );
+         AutoTranslationPlugin.Current.Hook_HandleComponent( __instance );
       }
    }
 }

+ 25 - 3
src/XUnity.AutoTranslator.Plugin.Core/TranslationInfo.cs

@@ -6,22 +6,22 @@ using Harmony;
 using UnityEngine;
 using UnityEngine.UI;
 using XUnity.AutoTranslator.Plugin.Core.Configuration;
+using XUnity.AutoTranslator.Plugin.Core.Extensions;
 using XUnity.AutoTranslator.Plugin.Core.Fonts;
 
 namespace XUnity.AutoTranslator.Plugin.Core
 {
    public class TranslationInfo
    {
-      private static readonly string OnEnableMethodName = "OnEnable";
       private static readonly string MultiLinePropertyName = "multiLine";
       private static readonly string OverflowMethodPropertyName = "overflowMethod";
-      private static readonly string UILabelClassName = "UILabel";
 
       private Action<object> _unresize;
       private Action<object> _unfont;
 
       private bool _hasCheckedTypeWriter;
       private MonoBehaviour _typewriter;
+      private object _alteredSpacing;
 
       public TranslationInfo()
       {
@@ -106,11 +106,18 @@ namespace XUnity.AutoTranslator.Plugin.Core
             // likelihood that it will go into multiple lines too.
             var originalHorizontalOverflow = ui.horizontalOverflow;
             var originalVerticalOverflow = ui.verticalOverflow;
+            var originalLineSpacing = ui.lineSpacing;
 
             if( isComponentWide && !ui.resizeTextForBestFit )
             {
                ui.horizontalOverflow = HorizontalWrapMode.Wrap;
                ui.verticalOverflow = VerticalWrapMode.Overflow;
+               if( Settings.ResizeUILineSpacingScale.HasValue && !Equals( _alteredSpacing, originalLineSpacing ) )
+               {
+                  var alteredSpacing = originalLineSpacing * Settings.ResizeUILineSpacingScale.Value;
+                  _alteredSpacing = alteredSpacing;
+                  ui.lineSpacing = alteredSpacing;
+               }
 
                if( _unresize == null )
                {
@@ -119,6 +126,10 @@ namespace XUnity.AutoTranslator.Plugin.Core
                      var gui = (Text)g;
                      gui.horizontalOverflow = originalHorizontalOverflow;
                      gui.verticalOverflow = originalVerticalOverflow;
+                     if( Settings.ResizeUILineSpacingScale.HasValue )
+                     {
+                        gui.lineSpacing = originalLineSpacing;
+                     }
                   };
                }
             }
@@ -128,13 +139,20 @@ namespace XUnity.AutoTranslator.Plugin.Core
             var type = graphic.GetType();
 
             // special handling for NGUI to better handle textbox sizing
-            if( type.Name == UILabelClassName )
+            if( type == Constants.Types.UILabel )
             {
                var originalMultiLine = type.GetProperty( MultiLinePropertyName )?.GetGetMethod()?.Invoke( graphic, null );
                var originalOverflowMethod = type.GetProperty( OverflowMethodPropertyName )?.GetGetMethod()?.Invoke( graphic, null );
+               //var originalSpacingY = graphic.GetSpacingY();
 
                type.GetProperty( MultiLinePropertyName )?.GetSetMethod()?.Invoke( graphic, new object[] { true } );
                type.GetProperty( OverflowMethodPropertyName )?.GetSetMethod()?.Invoke( graphic, new object[] { 0 } );
+               //if( Settings.ResizeUILineSpacingScale.HasValue && !Equals( _alteredSpacing, originalSpacingY ) )
+               //{
+               //   var alteredSpacing = originalSpacingY.Multiply( Settings.ResizeUILineSpacingScale.Value );
+               //   _alteredSpacing = alteredSpacing;
+               //   graphic.SetSpacingY( alteredSpacing );
+               //}
 
                if( _unresize == null )
                {
@@ -143,6 +161,10 @@ namespace XUnity.AutoTranslator.Plugin.Core
                      var gtype = g.GetType();
                      gtype.GetProperty( MultiLinePropertyName )?.GetSetMethod()?.Invoke( g, new object[] { originalMultiLine } );
                      gtype.GetProperty( OverflowMethodPropertyName )?.GetSetMethod()?.Invoke( g, new object[] { originalOverflowMethod } );
+                     //if( Settings.ResizeUILineSpacingScale.HasValue )
+                     //{
+                     //   g.SetSpacingY( originalSpacingY );
+                     //}
                   };
                }
             }

+ 1 - 1
src/XUnity.AutoTranslator.Plugin.Core/XUnity.AutoTranslator.Plugin.Core.csproj

@@ -2,7 +2,7 @@
 
    <PropertyGroup>
       <TargetFramework>net35</TargetFramework>
-      <Version>2.15.3</Version>
+      <Version>2.15.4</Version>
    </PropertyGroup>
 
    <ItemGroup>

+ 1 - 1
src/XUnity.AutoTranslator.Plugin.IPA/XUnity.AutoTranslator.Plugin.IPA.csproj

@@ -2,7 +2,7 @@
 
    <PropertyGroup>
       <TargetFramework>net35</TargetFramework>
-      <Version>2.15.3</Version>
+      <Version>2.15.4</Version>
    </PropertyGroup>
 
    <ItemGroup>

+ 1 - 1
src/XUnity.AutoTranslator.Plugin.UnityInjector/XUnity.AutoTranslator.Plugin.UnityInjector.csproj

@@ -2,7 +2,7 @@
 
    <PropertyGroup>
       <TargetFramework>net35</TargetFramework>
-      <Version>2.15.3</Version>
+      <Version>2.15.4</Version>
    </PropertyGroup>
 
    <ItemGroup>

+ 1 - 1
src/XUnity.AutoTranslator.Setup/XUnity.AutoTranslator.Setup.csproj

@@ -4,7 +4,7 @@
       <OutputType>Exe</OutputType>
       <TargetFramework>net40</TargetFramework>
       <AssemblyName>SetupReiPatcherAndAutoTranslator</AssemblyName>
-      <Version>2.15.3</Version>
+      <Version>2.15.4</Version>
    </PropertyGroup>
 
    <ItemGroup>