gracias a todos...he mezclado un poquito de cada uno. pero tengo el siguiente inconveniente: la primera vez que doy click sobre la imagen se abre un popup vacio (en blanco), después de la segunda vez todo está ok.
el código mezclado es:
Código:
function afoto(cual,titulo)
{
x=new Image()
x.src=cual;
//alert(x.width+' '+x.height)
if(x.width>900){mywidth = 900;}
else{mywidth=x.width}
if(cont==1){ventana.close();ventana=null}
ventana=window.open('','ventana','resizable=yes,scrollbars=no')
ventana.document.write('<html><head><title>' + titulo + '</title></head><body style="overflow:hidden" marginwidth="0" marginheight="0" topmargin="0" bottommargin="0" leftmargin="0" rightmargin="0" scroll="no" onUnload="opener.cont=0"><img width="'+mywidth+'" src="' + cual + '" onLoad="opener.redimensionar(this.width, this.height)">')
ventana.document.close()
cont++
}
function redimensionar(ancho,alto)
{
ventana.resizeTo(ancho+12,alto+28)
ventana.moveTo((screen.width-ancho)/2,(screen.height-alto)/2) //centra la ventana. Eliminar si no se quiere centrar el popup
}