GUIStyle.contentOffset
サンプルが見当たらなくてお試し。(Unity Win 4.3.4f1)
using UnityEngine; using UnityEditor; public class TestEditorWindow : UnityEditor.EditorWindow { [MenuItem("Assets/TestEditorOpen")] static void Open() { EditorWindow.GetWindow<TestEditorWindow>(); } void OnGUI() { GUIContent okContent = new GUIContent("OK"); GUIStyle style = EditorStyles.miniButton; Vector2 size = style.CalcSize(okContent); Debug.Log(style.contentOffset); GUILayout.Button(okContent, style); // 普通に描画 style = new GUIStyle(EditorStyles.miniButton); style.contentOffset = size * 0.5f; GUILayout.Button(okContent, style); // オフセットして描画 } }
(0.0, 0.0) UnityEngine.Debug:Log(Object) TestEditorWindow:OnGUI() (at Assets/Editor/TestEditorWindow.cs:17) UnityEditor.DockArea:OnGUI()
だいたい想像通りだけど…クリッピングされないのね。
4/2 09:41追記
ちなみに、GUIStyle.clippingというメンバを見かけたので
style.contentOffset = size * 0.5f;
style.clipping = TextClipping.Clip;
という具合で試してみたものの、とくに変化ナシ