Foros del Web » Programación para mayores de 30 ;) » .NET »

obtener las dimensiones( alto y ancho) de una imagen en C#

Estas en el tema de obtener las dimensiones( alto y ancho) de una imagen en C# en el foro de .NET en Foros del Web. Hola amigos, estoy haciendo un sistema de subida de imagenes y me interesaria limitar los archivos subidos, aparte de por tamaño, por alto y ancho. ...
  #1 (permalink)  
Antiguo 19/10/2006, 02:20
 
Fecha de Ingreso: octubre-2006
Mensajes: 1
Antigüedad: 17 años, 6 meses
Puntos: 0
Mensaje obtener las dimensiones( alto y ancho) de una imagen en C#

Hola amigos, estoy haciendo un sistema de subida de imagenes y me interesaria limitar los archivos subidos, aparte de por tamaño, por alto y ancho.

Tengo hecho el siguiente codigo:

Código PHP:
    //Se ha subido un ficherop al servidor distinto de NULL
        
if ( uplTheFile.PostedFile != null )
        {
            
            
//Variable para comprobar si hay algun error y para comprobar la extension subida
            
int control=1,extension_valida=0;
            
            
// Se crea un objeto tipo HttpPostedFile
            
HttpPostedFile archivo_subido uplTheFile.PostedFile;
            
            
//Se obtiene el nombre del fichero subido
            
string nombre_fichero archivo_subido.FileName;
            
            
//se extrae la extension
            
int posicion=nombre_fichero.IndexOf("."); 
            
//se guarda la extension del fichero subido
            
string extension_subidanombre_fichero.Substring(posicion);
            
             
            
/* Si la extensión del archivo subido no es una permitida da error*/ 
            
foreach( string ext_aux in ext_permitidas )
            {                    
                if( 
extension_subida == ext_aux )
                {
                    
extension_valida=1;    
                }
            }
            
            
//Se comprueban los datos del archivo subido
            
if( extension_valida == )
            {
                    
txtOutput.InnerHtml "<br><br><br>La extensi&oacute;n seleccionada no coincide con la del fichero";
                    
control=0;
            }
            else
            if( 
archivo_subido.ContentLength/1024 80  )
            {
                
txtOutput.InnerHtml "<br><br><br>Tama&ntilde;o excesivo";
                
control=0;
            }
        
            
//si ha superado la validacion de tamaño y extension se guarda en la ruta
            
if( control == )
            {
                
                
/*Se comprueba si existe un archivo en el servidor para ese id con la extension
                que sea y si existe se borra*/
                
foreach( string ext_aux in ext_permitidas )
                {
                
                    if( 
System.IO.File.Existsfile2upload id ext_aux) == true )
                         
System.IO.File.Deletefile2upload id ext_aux);
                
                }
                
                try
                {
                    
uplTheFile.PostedFile.SaveAs(file2upload id extension_subida);
                    
Response.Redirect("GestionContenidos.aspx?ruta=" "<Gestion>\\_boletin\\prueba\\"id extension_subida "&subida=1");
                    
txtOutput.InnerHtml "<br><br><br>... Archivo guardado correctamente";
                }
                catch ( 
Exception e )
                {
                    
txtOutput.InnerHtml "<br><br><br>... Error guardando!";
                }
            }
        } 
Mi pregunta es ¿Se puede acceder al ancho y al alto de la imagen una vez en el servidor? y en caso afirmativo
¿como hacerlo?

Saludos y gracias
  #2 (permalink)  
Antiguo 26/10/2006, 15:42
 
Fecha de Ingreso: octubre-2006
Mensajes: 53
Antigüedad: 17 años, 7 meses
Puntos: 1
Como Cienciano De Peru : Si Se Puede

uan vez en el servidor se puede hacer todo y no hay problema para hacerlo.


System.Drawing.Bitmap bmp1 = new System.Drawing.Bitmap("C:\\sap.jpg"); // ó @"C:\sap.jpg"
System.IO.FileInfo imgInfo1 = new System.IO.FileInfo("C:\\sap.jpg"); // ó @"C:\sap.jpg"

int alto = bmp1.Height;
int ancho = bmp1.Width;
double tamanio = Convert.ToInt32(imgInfo1.Length);
double tamanioKB = Math.Round((tamanio / 1024), 2);

Response.Write("Alto " + alto.ToString() + "<br>");
Response.Write("Ancho " + ancho.ToString() + "<br>");
Response.Write("Peso " + tamanio.ToString() + "<br>");
Response.Write("Peso KB " + tamanioKB.ToString() + "<br>");

imgInfo1 = null;
bmp1 = null;


cualquier duda o ayuda ( jejejeje )
[email protected]
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:45.