Set screensize for screenshot

So i found this code that takes screenshots of my game view works nice just that it captures the entire screen but i would want for it to capture just the centre of the screen which is where the real action is going on.Can anybody take a look at this script and give me some pointers on what to do. thanks.
Here’s the script

import System.IO;

// increment our filename
private var count:int = 0;

/**
* Test key
*/
function Update()
{
	if(Input.GetKeyDown("e"))
		ScreenshotEncode();
}


/**
* Take the screen buffer and spit out a JPG
*/
function ScreenshotEncode()
{
	// wait for graphics to render
	yield WaitForEndOfFrame();
	
	// create a texture to pass to encoding
	var texture:Texture2D = new Texture2D (Screen.width, Screen.height, TextureFormat.RGB24, false);
	
	// put buffer into texture
	texture.ReadPixels(Rect(0.0, 0.0, Screen.width, Screen.height), 0.0, 0.0);
	texture.Apply();

	// split the process up--ReadPixels() and the GetPixels() call inside of the encoder are both pretty heavy
	yield;
	
	// create our encoder for this texture
	var encoder:JPGEncoder = new JPGEncoder(texture, 75.0);
	
	// encoder is threaded; wait for it to finish
	while(!encoder.isDone)
		yield;
	
	// save our test image (could also upload to WWW)
	File.WriteAllBytes(Application.dataPath + "/../testscreen-" + count + ".jpg", encoder.GetBytes());
	
	
}

function OnGUI(){
if(GUI.Button(new Rect(10,10,100,30), "print"))
  {
System.Diagnostics.Process.Start("mspaint.exe","testscreen-" + count + ".jpg");
count++;
        }

    }

ReadPixels use Rect as a first argument, and you can pass smaller rectangle instead of full view region. For example:

tex.ReadPixels(Rect(Screen.width * 0.25, Screen.height * 0.25, Screen.width * 0.5, Screen.height * 0.5), 0, 0);