Как сделать картинка чтобы не выходила из префаба? (Unity)

С сервера получаю сообщения (либо текст, либо картинка) и вставляю их в соответствующие префабы. Но некоторые картинки выходят за пределы, как пофиксить так чтобы еще и разрешение сохранялось при этом?

Пример

Вот код обработки картинки:

private IEnumerator LoadContentImage(string url, Image image) {
    UnityWebRequest www = UnityWebRequestTexture.GetTexture(url);
    yield return www.SendWebRequest();

    if (www.result == UnityWebRequest.Result.Success) {
        Texture2D texture = ((DownloadHandlerTexture)www.downloadHandler).texture;
        Sprite sprite = Sprite.Create(texture, new Rect(0, 0, texture.width, texture.height), new Vector2());
        image.sprite = sprite;

        float imageWidth = texture.width;
        float imageHeight = texture.height;

        RectTransform rectTransform = image.GetComponent<RectTransform>();
        float rectTransformWidth = rectTransform.rect.width;
        float rectTransformHeight = rectTransform.rect.height;

        float aspectRatio = imageWidth / imageHeight;

        if (aspectRatio >= 1) 
            rectTransform.sizeDelta = new Vector2(rectTransformWidth, rectTransformWidth / aspectRatio);
        else 
            rectTransform.sizeDelta = new Vector2(rectTransformHeight * aspectRatio, rectTransformHeight);
    }
    else {
        Debug.LogError("Failed to load image: " + www.error);
    }
}

Ответы (0 шт):