Can we use unity4.6 UI Image to instantiate in multilayer environment ?

hi…
i have tried a lot unity image for 2D game but getting problem in serialization

Can we use unity 4.6 UI Image to instantiate in multilayer environment ? If possible then give me some hint or code…

Or we can only use 2d Component - sprite , to successfully spawn in photon multi player?

Thank you

Thanks for answer. I did using RPC but not succeed.
Image as prefab is instantiating using PUN, But does not displaying in screen , means I cant set position and scale of UI Image in sprite.
Here is my code.

void StartSpawnProcess (float respawntime)
{
StartCoroutine (“SpawnPlayer”, respawntime);

}

IEnumerator SpawnPlayer (float respawntime)
{
	yield return new WaitForSeconds (respawntime);
	Debug.Log (Spanpoints);
	int index = Random.Range (0, Spanpoints.Length);

	player = PhotonNetwork.Instantiate ("toprightplayer", Spanpoints [index].position,Spanpoints[index].rotation,0);


	player.transform.SetParent(GameObject.Find("Panel").transform);

	player.transform.GetComponent<RectTransform> ().anchorMax = new Vector3 (Spanpoints [index].anchorMax.x,Spanpoints [index].anchorMax.y);
	player.transform.GetComponent<RectTransform> ().anchorMin = new Vector3 (Spanpoints [index].anchorMin.x,Spanpoints [index].anchorMin.y);
	player.transform.GetComponent<RectTransform> ().offsetMax = new Vector3 (Spanpoints [index].offsetMax.x, Spanpoints [index].offsetMax.y);
	player.transform.GetComponent<RectTransform> ().offsetMin = new Vector3 (Spanpoints [index].offsetMin.x, Spanpoints [index].offsetMin.y);//
	player.transform.GetComponent<RectTransform>().anchoredPosition = Spanpoints[index].anchoredPosition;
	player.transform.GetComponent<RectTransform>().anchoredPosition3D = Spanpoints[index].anchoredPosition3D;
	player.transform.GetComponent<RectTransform>().sizeDelta = Spanpoints[index].sizeDelta;
	player.transform.GetComponent<RectTransform>().pivot = Spanpoints[index].pivot;			
}

And also serialize like this :

void StartSpawnProcess (float respawntime)
{
StartCoroutine (“SpawnPlayer”, respawntime);

}

IEnumerator SpawnPlayer (float respawntime)
{
	yield return new WaitForSeconds (respawntime);
	Debug.Log (Spanpoints);
	int index = Random.Range (0, Spanpoints.Length);

	player = PhotonNetwork.Instantiate ("toprightplayer", Spanpoints [index].position,Spanpoints[index].rotation,0);


	player.transform.SetParent(GameObject.Find("Panel").transform);

	player.transform.GetComponent<RectTransform> ().anchorMax = new Vector3 (Spanpoints [index].anchorMax.x,Spanpoints [index].anchorMax.y);
	player.transform.GetComponent<RectTransform> ().anchorMin = new Vector3 (Spanpoints [index].anchorMin.x,Spanpoints [index].anchorMin.y);
	player.transform.GetComponent<RectTransform> ().offsetMax = new Vector3 (Spanpoints [index].offsetMax.x, Spanpoints [index].offsetMax.y);
	player.transform.GetComponent<RectTransform> ().offsetMin = new Vector3 (Spanpoints [index].offsetMin.x, Spanpoints [index].offsetMin.y);//
	player.transform.GetComponent<RectTransform>().anchoredPosition = Spanpoints[index].anchoredPosition;
	player.transform.GetComponent<RectTransform>().anchoredPosition3D = Spanpoints[index].anchoredPosition3D;
	player.transform.GetComponent<RectTransform>().sizeDelta = Spanpoints[index].sizeDelta;
	player.transform.GetComponent<RectTransform>().pivot = Spanpoints[index].pivot;			
}

Please tell me where i have put wrong code…