I have 2+ GUI textures that have different dimension.
I wanted them to display as full image,
but image2 got clipped like this,
Here’s the code
private Texture2D[] pages;
private int currentPage;
private Rect guiScreenRect;
protected void OnGUI()
{
if(isActivate)
{
float divider = 0.5f;
// left top width height confine to 0-1 pages[currentPage].height*divider
guiScreenRect = new Rect(0.0f,0.0f,1.0f*divider,0.9f*divider);
guiScreenRect.x *= Screen.width;
guiScreenRect.width *= Screen.width;
guiScreenRect.y *= Screen.height;
guiScreenRect.height *= Screen.height;
GUILayout.BeginArea(guiScreenRect);
GUILayout.Label(pages[currentPage]);
GUILayout.EndArea();
}
}
public void LoadResourcesBaseonID(string refID)
{
currentPage = 0;
int ID = int.Parse(refID);
string bookTitle = BookData.m_BookData[ID].GetTitle();
pages = Resources.LoadAll("BookPages/" + bookTitle, typeof(Texture2D)).Cast<Texture2D>().ToArray();
}