Hola a tod@s:
Pues eso... la pregunta es esa... existe alguna manera de crear thumbnail en asp sin necesidad de componentes?.
Muchas gracias a tod@s.
| |||
si tenes 2 imagenes de cada si. hacete una imagen chica que se llame igual que la grande. al llamarla pones <img src=<%=left(nombreImagen,len(nombreImagen)-4)&"_chica.jgp"%>> Fijate que el left esta para que no te complique la extension del archivo Saludos. |
| |||
Muchas gracias por responder, Con respecto a lo de Javopereira, lo que intento realizar es que el proceso se realice en el servidor, osea, que cuando yo suba la imagen, que se cree automáticamente en el servidor otra mas pequeña, para así poder hacer la galería de imágenes correspondientes. Un Saludo!! PD:estube vicheando en hotscript pero los que encontré interesantes eran componentes o de un pago excesivo.Pero si conoces alguna otra web donde pueda encontrar esta información... por que yo no encontré nada... siempre con componentes... |
| ||||
mira, con este codigo en ASP lo que haces es que muestras el contenido de una carpeta completa, solo debes cuidar 2 cosas, que sean puras imagenes y que no tengan espacios en el nombre.... ---------------------------------------------- Set ObjetoFSO = Server.CreateObject("Scripting.FileSystemObject") carpeta=request.QueryString("carpeta") if carpeta<>"" then carpeta=carpeta&"/" folder="galeria/"&carpeta else folder="galeria/" end if 'nos selecciona la carpeta en la que esta el archivo Set ObjetoCarpeta = ObjetoFSO.GetFolder(Server.MapPath(folder)) 'Nos muestra el nombre de nuestra carpeta en la web devuelta Response.Write "<B>" & UCASE(ObjetoCarpeta.Name) & "</B>:<BR>" 'busca en todos los archivos que encuentra en dicha carpeta For Each Fichero in ObjetoCarpeta.Files Response.Write "<td><a href="&folder&Fichero.Name&"><img src="&folder&Fichero.Name & " width=60px height=50px></a></td>" Response.Write "<tr><td><a href="&folder&Fichero.Name&"><img src="&folder&Fichero.Name & " width=60px height=50px></a></td>" Next Set Fichero = Nothing Set ObjetoCarpeta = Nothing Set ObjetoFSO = Nothing ----------------------------------------------------- aqui lo que hago es que cada imagen se muestra a 60 x 50px y al darle click te abre la imagen original, quizas con algunos cambios te pueda servir ![]()
__________________ CreandoWebs.com www.creandowebs.com PLANTILLAS TEMPLATEMONSTER CON 10% DE DESCUENTO |
| |||
Gracias por Responder Sjam7, He estado probando tu ejemplo, y funciona bien. El problema es que cuando muestra las imágenes pequeñas, osea en la galería, estas tienen el mismo peso en Kb que las originales. Lo que ando buscando, es un proceso en el que analice la imagen y le cambie el tamaño no sólo en dimensiones sino en Kb. Sé que en .NET lo hacen y por supuesto en PHP, pero ando buscando una manera de hacerlo en ASP puro y duro, sin componentes ni nada. Reitero mis agradecimientos por responder. Un Saludo muy cordial a tod@s. ![]() |
| |||
Lo que f_murciano quiere, es un código asp, que tome una imagen y la redimensione a un tamaño más pequeño, pero que cambie las dimensiones reales de la imagen de manera que se ágil de descargar por un usuario. De nada sirve mostrar la imagen más pequeña cuando en realidad estás bajandote toda la imagen.
__________________ Alvaro García |
| ||||
mira este es un componente pero es excelente y es gratuito.. te permite crear otras miniaturas partiendo de una grande y en cualquier formato de imagen.. todo te lo hace en el servidor con una sola linea de codigo. me ha funcionado perfect.. depronto te sirve no se pierde nada con probarlo suerte http://www.silberfish.com/. aqui lo puedes descargar. me avisas suerte.
__________________ Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia http://www.controldevisitantes.com |
| |||
GRACIAS lexus Muchas gracias...pero... He mirado el componente y tiene buena pinta, el problema que tengo y por eso lancé la cuestión en el foro, es que mi hosting, no me permite instalar componentes, necesito un plan superior y no tengo muchas pelas (vamos que ando mas abollao que el escudo de ATILA). Es por eso que sigo a la búsqueda... por que otra opción que tengo es rehacer toda la web en php pero ... creo que es un duro trabajo, y prefiero antes agotar todas las opciones. Os doy nuevamente mis agradecimientos a todos por responder! ![]() Un saludo a tod@s. |
| |||
f_murciano, y el servidor no soporta .NET?? Porque por ahi vi todo un código hecho en ASP, pero a la hora de hacer thumbnails se apoyaban en ASP.NET lo cual me hace pensar que no es fácil o no hay algo en ASP puro.
__________________ Alvaro García |
| |||
Tengo un código pero aun no lo implementé Jajajaja que arte Renton, jajaja... "triunfada máxima" ![]() Tengo un código como ya dije en una respuesta anterior, en .NET . Pero aun no lo implementé (mas bien por que estoy bastante "pegao" en .NET, no sé que requisitos se necesitan en el servidor, etc...) pero no desespero... y os prometo que lo intentaré ![]() Pero antes quiero ver que efectivamente no existen opciones en asp para poder hacerlo, si despues de esta árdua tarea no encuentro nada... pues me lío con el ejemplo que tengo en .NET . Gracias a tod@s. (¡¡¡Esto se anima!!!) ![]() |
| ||||
lo que falta es la reduccion de la imagen verdad?
__________________ CreandoWebs.com www.creandowebs.com PLANTILLAS TEMPLATEMONSTER CON 10% DE DESCUENTO |
| ||||
lo que falta es la reduccion de la imagen y la creada de una nueva partiendo de la grande. que queden dos imagenes por ejemplo una fotogrande.jpg y la fotopequeñath.gif... lo veo dificil pero no imposible, si alguien fue capaz de hacer el xelupload a punta de asp puro con clases y todo me imagino que alguien en el mundo debe haber hecho algo en asp puro para hacer thumbnails, el problema es encontrarlo o encontrar quien se arriesgue a hacerlo y gratis...
__________________ Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia http://www.controldevisitantes.com |
| |||
tienes razon lexux Creo que me doy porvencido, no tengo ni mucho menos el nivel para crearme por mi mismo unas clases que me hagan thumbnail... y con el trabajo que supongo que costaría hacerlo, dudo que lo publicasen así como asi y encima gratuito... pero bueno... Voy a ver si implementarlo en asp.net no es muy complicado y si mi hosting tiene los requisitos (que ahora mismo no sé cuales son... ![]() Un saludo a tod@s!!! ![]() |
| |||
No lo he probado pero he encontrado esto: http://www.vbaccelerator.com/home/VB...actor_Code.asp Mira a ver que tal y comentas Ciao ![]() |
| ||||
Hola sqa212! Esto es un componente? Porque si lo es creo que no va a servir!
__________________ "No et limites a contemplar aquestes hores que ara venen, baixa al carrer i participa. No podran res davant un poble unit, alegre i combatiu!!" |
| |||
Bueno, si existe una forma, simplemente se precisa que el servidor tenga instalado ASP.NET (Todos los windows lo tienen), funciona perfectamente, yo lo tengo en todas mis webs, puede verlo funcionar en: http://www.portalmotos.com la gente pone un anuncio y la foto se autoredimensiona y se genera el thumbnail te pongo el fichero: <%@ Page Language="C#"%> <%@ Import Namespace="System.Drawing" %> <%@ Import Namespace="System.Drawing.Imaging" %> <script runat="server"> // Smart Image Processor 1.1 // Version: 1.1.2 void Page_Load(Object s, EventArgs e) { int intNewWidth,intNewHeight, maxWidth = 10000, maxHeight = 10000, qQuality = 80; if ( Request["w"] != null) maxWidth = int.Parse(Request["w"]); if ( Request["h"] != null) maxHeight = int.Parse(Request["h"]); if ( Request["q"] != null) qQuality = int.Parse(Request["q"]); //get image from parameter string pictureFileName = Request["f"]; string newFileName = Request["nf"]; if (pictureFileName == null || pictureFileName == "" || !System.IO.File.Exists(pictureFileName)) { Response.Write("Error: File (" + pictureFileName + ") not found or empty"); return; } System.Drawing.Image inputImage = System.Drawing.Image.FromFile(pictureFileName); //define size for new image string aspect = Request["a"]; if (aspect == "true") { if (maxWidth < inputImage.Width || maxHeight < inputImage.Height) { if (maxWidth >= maxHeight) { intNewWidth = (int)((double)maxHeight*((double)inputImage.Width/(double)inputImage.Height)); intNewHeight = maxHeight; } else { intNewWidth = maxWidth; intNewHeight = (int)((double)maxWidth*((double)inputImage.Height/(double)inputImage.Width)); } if (intNewWidth > maxWidth) { intNewWidth = maxWidth; intNewHeight = (int)((double)maxWidth*((double)inputImage.Height/(double)inputImage.Width)); } if (intNewHeight > maxHeight) { intNewWidth = (int)((double)maxHeight*((double)inputImage.Width/(double)inputImage.Height)); intNewHeight = maxHeight; } } else { intNewWidth = inputImage.Width; intNewHeight = inputImage.Height; } } else { intNewWidth = maxWidth; intNewHeight = maxHeight; } try { //output new image with different size Bitmap outputBitMap = new Bitmap(inputImage,intNewWidth,intNewHeight); inputImage.Dispose(); EncoderParameters eps = new System.Drawing.Imaging.EncoderParameters(1); eps.Param[0] = new System.Drawing.Imaging.EncoderParameter( System.Drawing.Imaging.Encoder.Quality, qQuality ); ImageCodecInfo ici = GetEncoderInfo("image/jpeg"); if (pictureFileName.ToLower() == newFileName.ToLower()) System.IO.File.Delete(pictureFileName); outputBitMap.Save( newFileName, ici, eps ); outputBitMap.Dispose(); } catch (Exception ex) { Response.Write("Error: " + ex); return; } Response.Write(intNewWidth + ";" + intNewHeight + ";" + "DONE"); } private static ImageCodecInfo GetEncoderInfo(String mimeType) { int j; ImageCodecInfo[] encoders; encoders = ImageCodecInfo.GetImageEncoders(); for(j = 0; j < encoders.Length; ++j) { if(encoders[j].MimeType == mimeType) return encoders[j]; } return null; } </script> Este código lo pegas en una hoja y la llamas como quieras con la extensión .aspx Suerte!!
__________________ Lo menos frecuente en este mundo es vivir. La mayoría de la gente existe, eso es todo... |
| ||||
hola, este codigo que colocaste te genera dos imagenes osea la grande qeu tienes y la pequeña thumbnails? o simplemente le cambia el tamaño a una grande pero sigue pesando lo mismo? otra cosa.. ojo que no todos los windows soportan asp.net, hay que instalarles el framwework.. solo a partir de la version 2003 ya viene instalado pero antes no, antes de esa version hay qeu bajar ese framework para wque corran las paginas .net. bueno de todos modos gracias.
__________________ Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia http://www.controldevisitantes.com |
| |||
Lo que hace es generar thumbnails reales, es decir, reduce sus medidas y su peso, tu puedes definir la calidad de la compresión (Lo usual es un 80%), redimensiona las imágenes a la medida que definas, las convierte en JPG y por supuesto que reduce su peso, las nuevas imágenes pesaran de acuerdo a las medidas que tu hayas definido, si no, no hace falta tanto rollo, con que simplemente definieras las medidas de cualquier foto al hacer un llamado de estas en su ancho y largo ya estaría (<IMG SRC="foto.gif" name="foto" width="medida_thumbnail_que_tu_quieras">)... Esto es obvio, para esa simpleza nadie es tan gilipoll... de complicarse tanto la vida ¿O sí?... Respecto a ASP.NET no conozco una sola empresa de hosting que no tenga desde hace años instalado y funcionando perfectamente el framwework, ni siquiera en las empresas de Hosting del Africa más remota, esto no supondrá un problema... Y desde luego si encontrarás una empresa que ofrezca servicio de hosting y en sus máquinas Windows no tenga ASP.NET CAMBIATE ECHANDO LECHES, HUYE DE ELLOS COMO DE LA PESTE, se debe de tratar de un chapuzas que ofrece el servicio desde su casa... Pruébalo donde hospedes tus páginas, te llevarás una grata sorpresa, es rápido y muy efectivo. Si tienes algún problema me lo dices, con gusto te ayudaré... Suerte!!
__________________ Lo menos frecuente en este mundo es vivir. La mayoría de la gente existe, eso es todo... |
| ||||
cierto lo qeu dices, yo digo lo de asp.net que no todas las versiones lo traen no por los servidores ni proveedores de hosting porque ovbiamente todos los traen ya, lo digo por los programadores que no lo tengan en sus casas u oficinas. otra cosa. siempre habra alguien en la faz de la tierra que se complique mas de la cuenta para hacer algo, asi que no sobraba mi pregunta, y por cierto si he visto gente aqui que solo para redimencinar una imagen como decis de cambiarle el img width=" hacen miles de lineas, por eso te pregunte si la redimencionaba totalmente y lgeneraba otra.. bueno ya cure mis dudas y me parece perfecto entonces gracias.. suerte.
__________________ Control de Visitantes, Control de Accesos, Minutas digitales, Manejo de Correspondencia http://www.controldevisitantes.com |
| ||||
coro el codigo de yesmo y me sale que en la linea: <script runat="server"> un error de se esperaba ')' que sera eso, lo tengo en mi servidor interno de la compu con windows xp profesional
__________________ Miguel Padrón :cool: |
| |||
Como comentaban en algun mensaje, no creo que xista una manera "eficiente" de hacer un redimencionamiento de imagenes con ASP puro, claro que es posible, pero tomaría muchos recursos del servidor y tardaría muchisimo. Pero tambien comentaban que cualquier servidor debe tener instalado el .NET Framework y con ASP.NET se puede hacer el redimencionamiento muy facilmente. Ahora....la otra opcion es revisar si tu servidor tiene instalado algun componente para poder trabajar con imagenes. ¿Como puedes saber que componentes están instalados? Muy facil.....revisa en la siguiente dirección un script de ASP que revisa para ver cuales de los componentes mas conocidos y utilizados estan instalados en tu servidor. Puedes accesarlo en: http://www.tutoriales.com.mx/archivo...components.asp Y ya que aparezca en pantalla púedes ver todos los componentes que estan instalados en el server. En la parte inferior de esa pagina viene una liga para poder accesar a la pagina de los que realizaron este script y es gratuito. Te recomiendo que lo instales en tu server y revises a ver si algun componente de imagenes esta instalado, despues, si necesitas ayuda avisanos y con mucho gusto te ayudamos a hacer los thumbnails. Saludos,
__________________ Zolw Entra a http://tutoriales.xlso.com puedes encontras tips, scripts y ayudas para ASP, ASP.NET, PHP, VB, HTML, DHTML, Flash, JavaScript y más... MÉXICO |
| ||||
Buenas yomesmo! He estado probando de ejecutar tu código en mi servidor. Creo que si que me acepta el .net, pero me salen errores del tipo: "Error: File (1.jpg) not found or empty" Se supone que antes de tu página hay otra donde se introduce el width, height, quality, picturefilename, newfilename y aspect, verdad? Bueno, pues ahora vienen las preguntillas! -¿quality tiene que darse en porcentajes ("50%") o sin ("50") ? -¿la picturefilename (que supongo q es la foto a redimensionar) tiene que estar ya en el server o la pillas desde el ordenador del user, y el código automaticamente sube la foto? (rollo xelupload) (en este punto es donde siempre me saca el error de "file not found or empty") -¿newfilename ha de ser solo un nombre, un nombre con extension .jpg o una rutacon nombre y extension? - que leches es aspect?? Graciasssss!!! (si este codigo xuta habrás triumfado!)
__________________ "No et limites a contemplar aquestes hores que ara venen, baixa al carrer i participa. No podran res davant un poble unit, alegre i combatiu!!" |
| |||
Es correcto, ese fichero lo que hace es redimensionar la imágen a unas medidas que son variables (Para que pongas las que te salgan del "bolo"), discúlpame que ahora no te responda con más tranquilidad, estoy de salida, cuando regrese te cuelgo un código de ejemplo y te respondo. Este código es cojo y nudo porque funciona en practicamente todas las máquinas y no precisa componentes (ASP.NET que lo tienen todas, es como decir que un windows no traiga el Explorer). Es rápido, apenas consume recursos y vale para cualquier aplicación... Luego te lo pongo...
__________________ Lo menos frecuente en este mundo es vivir. La mayoría de la gente existe, eso es todo... |
| ||||
Gracias yoyesmo!! Esperaré ansiosamente tu respuesta!! ;)
__________________ "No et limites a contemplar aquestes hores que ara venen, baixa al carrer i participa. No podran res davant un poble unit, alegre i combatiu!!" |