# Label

> Make a text or texture label on screen.

## Definition

* **Type:** Method
* **Namespace:** [UnityEngine](/engine/6000.5/script-reference/unityengine.md)
* **Assembly:** UnityEngine.IMGUIModule

## Label(Rect, string)

Make a text or texture label on screen.

```csharp
public static void Label(Rect position, string text)
```

### Parameters

**** (\[Rect]\(/engine/6000.5/script-reference/unityengine/rect)): Rectangle on the screen to use for the label.**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Text to display on the label.

### Remarks

Labels have no user interaction, do not catch mouse clicks and are always rendered in normal style. If you want to make a control that responds visually to user input, use a [GUI.Box](/engine/6000.5/script-reference/unityengine/gui/box.md) control.

Example: Draw the classic Hello World! string:

![GUILabel (Label)](/api/media?file=/engine/6000.5/media/images/GUILabel.png)

*Text label on the Game View.*

```csharp
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    void OnGUI()
    {
        GUI.Label(new Rect(10, 10, 100, 20), "Hello World!");
    }
}
```

Example: Draw a texture on-screen. Labels are also used to display textures, instead of a string, simply pass in a texture:

![GUILabelTexture (Label)](/api/media?file=/engine/6000.5/media/images/GUILabelTexture.png)

*Texture Label.*

```csharp
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    public Texture2D textureToDisplay;

    void OnGUI()
    {
        GUI.Label(new Rect(10, 40, textureToDisplay.width, textureToDisplay.height), textureToDisplay);
    }
}
```

## Label(Rect, Texture)

Make a text or texture label on screen.

```csharp
public static void Label(Rect position, Texture image)
```

### Parameters

**** (\[Rect]\(/engine/6000.5/script-reference/unityengine/rect)): Rectangle on the screen to use for the label.**** (\[Texture]\(/engine/6000.5/script-reference/unityengine/texture)): [Texture](/engine/6000.5/script-reference/unityengine/texture.md) to display on the label.

### Remarks

Labels have no user interaction, do not catch mouse clicks and are always rendered in normal style. If you want to make a control that responds visually to user input, use a [GUI.Box](/engine/6000.5/script-reference/unityengine/gui/box.md) control.

Example: Draw the classic Hello World! string:

![GUILabel (Label)](/api/media?file=/engine/6000.5/media/images/GUILabel.png)

*Text label on the Game View.*

```csharp
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    void OnGUI()
    {
        GUI.Label(new Rect(10, 10, 100, 20), "Hello World!");
    }
}
```

Example: Draw a texture on-screen. Labels are also used to display textures, instead of a string, simply pass in a texture:

![GUILabelTexture (Label)](/api/media?file=/engine/6000.5/media/images/GUILabelTexture.png)

*Texture Label.*

```csharp
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    public Texture2D textureToDisplay;

    void OnGUI()
    {
        GUI.Label(new Rect(10, 40, textureToDisplay.width, textureToDisplay.height), textureToDisplay);
    }
}
```

## Label(Rect, GUIContent)

Make a text or texture label on screen.

```csharp
public static void Label(Rect position, GUIContent content)
```

### Parameters

**** (\[Rect]\(/engine/6000.5/script-reference/unityengine/rect)): Rectangle on the screen to use for the label.**** (\[GUIContent]\(/engine/6000.5/script-reference/unityengine/guicontent)): Text, image and tooltip for this label.

### Remarks

Labels have no user interaction, do not catch mouse clicks and are always rendered in normal style. If you want to make a control that responds visually to user input, use a [GUI.Box](/engine/6000.5/script-reference/unityengine/gui/box.md) control.

Example: Draw the classic Hello World! string:

![GUILabel (Label)](/api/media?file=/engine/6000.5/media/images/GUILabel.png)

*Text label on the Game View.*

```csharp
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    void OnGUI()
    {
        GUI.Label(new Rect(10, 10, 100, 20), "Hello World!");
    }
}
```

Example: Draw a texture on-screen. Labels are also used to display textures, instead of a string, simply pass in a texture:

![GUILabelTexture (Label)](/api/media?file=/engine/6000.5/media/images/GUILabelTexture.png)

*Texture Label.*

```csharp
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    public Texture2D textureToDisplay;

    void OnGUI()
    {
        GUI.Label(new Rect(10, 40, textureToDisplay.width, textureToDisplay.height), textureToDisplay);
    }
}
```

## Label(Rect, string, GUIStyle)

Make a text or texture label on screen.

```csharp
public static void Label(Rect position, string text, GUIStyle style)
```

### Parameters

**** (\[Rect]\(/engine/6000.5/script-reference/unityengine/rect)): Rectangle on the screen to use for the label.**** (\[string]\(https\://learn.microsoft.com/dotnet/api/system.string)): Text to display on the label.**** (\[GUIStyle]\(/engine/6000.5/script-reference/unityengine/guistyle)): The style to use. If left out, the `label` style from the current [GUISkin](/engine/6000.5/script-reference/unityengine/guiskin.md) is used.

### Remarks

Labels have no user interaction, do not catch mouse clicks and are always rendered in normal style. If you want to make a control that responds visually to user input, use a [GUI.Box](/engine/6000.5/script-reference/unityengine/gui/box.md) control.

Example: Draw the classic Hello World! string:

![GUILabel (Label)](/api/media?file=/engine/6000.5/media/images/GUILabel.png)

*Text label on the Game View.*

```csharp
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    void OnGUI()
    {
        GUI.Label(new Rect(10, 10, 100, 20), "Hello World!");
    }
}
```

Example: Draw a texture on-screen. Labels are also used to display textures, instead of a string, simply pass in a texture:

![GUILabelTexture (Label)](/api/media?file=/engine/6000.5/media/images/GUILabelTexture.png)

*Texture Label.*

```csharp
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    public Texture2D textureToDisplay;

    void OnGUI()
    {
        GUI.Label(new Rect(10, 40, textureToDisplay.width, textureToDisplay.height), textureToDisplay);
    }
}
```

## Label(Rect, Texture, GUIStyle)

Make a text or texture label on screen.

```csharp
public static void Label(Rect position, Texture image, GUIStyle style)
```

### Parameters

**** (\[Rect]\(/engine/6000.5/script-reference/unityengine/rect)): Rectangle on the screen to use for the label.**** (\[Texture]\(/engine/6000.5/script-reference/unityengine/texture)): [Texture](/engine/6000.5/script-reference/unityengine/texture.md) to display on the label.**** (\[GUIStyle]\(/engine/6000.5/script-reference/unityengine/guistyle)): The style to use. If left out, the `label` style from the current [GUISkin](/engine/6000.5/script-reference/unityengine/guiskin.md) is used.

### Remarks

Labels have no user interaction, do not catch mouse clicks and are always rendered in normal style. If you want to make a control that responds visually to user input, use a [GUI.Box](/engine/6000.5/script-reference/unityengine/gui/box.md) control.

Example: Draw the classic Hello World! string:

![GUILabel (Label)](/api/media?file=/engine/6000.5/media/images/GUILabel.png)

*Text label on the Game View.*

```csharp
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    void OnGUI()
    {
        GUI.Label(new Rect(10, 10, 100, 20), "Hello World!");
    }
}
```

Example: Draw a texture on-screen. Labels are also used to display textures, instead of a string, simply pass in a texture:

![GUILabelTexture (Label)](/api/media?file=/engine/6000.5/media/images/GUILabelTexture.png)

*Texture Label.*

```csharp
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    public Texture2D textureToDisplay;

    void OnGUI()
    {
        GUI.Label(new Rect(10, 40, textureToDisplay.width, textureToDisplay.height), textureToDisplay);
    }
}
```

## Label(Rect, GUIContent, GUIStyle)

Make a text or texture label on screen.

```csharp
public static void Label(Rect position, GUIContent content, GUIStyle style)
```

### Parameters

**** (\[Rect]\(/engine/6000.5/script-reference/unityengine/rect)): Rectangle on the screen to use for the label.**** (\[GUIContent]\(/engine/6000.5/script-reference/unityengine/guicontent)): Text, image and tooltip for this label.**** (\[GUIStyle]\(/engine/6000.5/script-reference/unityengine/guistyle)): The style to use. If left out, the `label` style from the current [GUISkin](/engine/6000.5/script-reference/unityengine/guiskin.md) is used.

### Remarks

Labels have no user interaction, do not catch mouse clicks and are always rendered in normal style. If you want to make a control that responds visually to user input, use a [GUI.Box](/engine/6000.5/script-reference/unityengine/gui/box.md) control.

Example: Draw the classic Hello World! string:

![GUILabel (Label)](/api/media?file=/engine/6000.5/media/images/GUILabel.png)

*Text label on the Game View.*

```csharp
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    void OnGUI()
    {
        GUI.Label(new Rect(10, 10, 100, 20), "Hello World!");
    }
}
```

Example: Draw a texture on-screen. Labels are also used to display textures, instead of a string, simply pass in a texture:

![GUILabelTexture (Label)](/api/media?file=/engine/6000.5/media/images/GUILabelTexture.png)

*Texture Label.*

```csharp
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour
{
    public Texture2D textureToDisplay;

    void OnGUI()
    {
        GUI.Label(new Rect(10, 40, textureToDisplay.width, textureToDisplay.height), textureToDisplay);
    }
}
```
