¿Cómo puedo incrustar un archivo .png en un "archivo.html" en blanco para que cuando abra ese archivo en cualquier navegador vea esa imagen? En este escenario, el archivo de imagen no está vinculado desde el HTML, sino que los datos de imagen están incrustados en el propio HTML.¿Puedo incrustar una imagen .png en una página html?
Respuesta
Hay algunos codificadores base64 en línea para ayudarle con esto, este es probablemente el mejor que he visto:
http://www.greywyvern.com/code/php/binary2base64
Como esa página muestra sus principales opciones para esto son CSS:
div.image {
width:100px;
height:100px;
background-image:url(data:image/png;base64,iVBORwA<MoreBase64SringHere>);
}
O la etiqueta <img>
en sí, así:
<img alt="My Image" src="data:image/png;base64,iVBORwA<MoreBase64SringHere>" />
rápida búsqueda en Google dice que se puede integrar de esta manera:
<img src="data:image/gif;base64,R0lGODlhEAAOALMAAOazToeHh0tLS/7LZv/0jvb29t/f3//Ub/
/ge8WSLf/rhf/3kdbW1mxsbP//mf///yH5BAAAAAAALAAAAAAQAA4AAARe8L1Ekyky67QZ1hLnjM5UUde0ECwLJoExKcpp
V0aCcGCmTIHEIUEqjgaORCMxIC6e0CcguWw6aFjsVMkkIr7g77ZKPJjPZqIyd7sJAgVGoEGv2xsBxqNgYPj/gAwXEQA7"
width="16" height="14" alt="embedded folder icon">
pero se necesita una implementación diferente en Internet Explorer.
http://www.websiteoptimization.com/speed/tweak/inline-images/
Tenga en cuenta que esto solo funcionará con imágenes pequeñas. Cuanto más grande sea la imagen, más grande será la cadena codificada, y hay un límite de cuánto tiempo 'src' puede ser. Y aparte de eso, es uggly imho :) – Alec
uso mod_rewrite para redirigir la llamada a file.html a image.png sin cambiar para el usuario
¿Ha intentado simplemente cambiando el nombre del archivo image.png a file.html url? Creo que la mayoría de los navegadores llevan el encabezado mime sobre la extensión de archivo :)
Sé que Firefox hace eso, mientras que IE verá el archivo en sí. – Rangoric
¿Qué pasa si no estás usando Apache? ¿Qué pasa si no estás usando ningún Apache? servidor web en absoluto (por ejemplo, correo electrónico HTML)? –
El método 64base también funciona para imágenes grandes. Utilizo ese método para incrustar todas las imágenes en mi sitio web y funciona siempre. He terminado con archivos de hasta 2Mb tamaño, jpg y png.
No se cuanto tiempo lleva esta publicación aqui. Pero me encontré con un problema similar ahora. De ahí publicando la solución para que pueda ayudar a otros.
#!/usr/bin/env perl
use strict;
use warnings;
use utf8;
use GD::Graph::pie;
use MIME::Base64;
my @data = (['A','O','S','I'],[3,16,12,47]);
my $mygraph = GD::Graph::pie->new(200, 200);
my $myimage = $mygraph->plot(\@data)->png;
print <<end_html;
<html><head><title>Current Stats</title></head>
<body>
<p align="center">
<img src="data:image/png;base64,
end_html
print encode_base64($myimage);
print <<end_html;
" style="width: 888px; height: 598px; border-width: 2px; border-style: solid;" /></p>
</body>
</html>
end_html
- 1. Incrustar una imagen en una respuesta AJAX
- 2. Cómo convertir una página web html a una imagen
- 3. Cómo incrustar una imagen en el cuerpo HTML de un correo electrónico en iOS
- 4. Compilar/Guardar/Exportar HTML como una imagen PNG usando Jquery
- 5. Crear una imagen PNG dinámica
- 6. Pegar una imagen en una página web
- 7. Lectura de una imagen PNG en Node.js
- 8. Guardar como una imagen png en Android
- 9. Incrustar XML en HTML
- 10. ¿Cómo filtrar/superponer imagen en una página html?
- 11. Incrustar una página web en una ventana de C#
- 12. Blitting una imagen .PNG transparente en una pantalla
- 13. Copiando una imagen a transcodificaciones de cartón jpeg a png
- 14. Cómo convertir una imagen JPG a PNG
- 15. cómo comprimir una imagen PNG usando Java
- 16. ¿Puedo incrustar otros archivos en una DLL?
- 17. ¿Cómo incrustar un documento en la página HTML?
- 18. Insertar página externa html en una página html
- 19. Imprimir LaTeX Table directamente en una imagen (PNG u otra)
- 20. Cómo incrustar jar en HTML
- 21. Incrustar imágenes adjuntas en correos electrónicos HTML
- 22. ¿Cómo puedo mezclar SVG y HTML en una página?
- 23. Acerca de incrustar archivos Midi en una página web
- 24. Python PIL: cómo escribir una imagen PNG en la cadena
- 25. ¿Cómo puedo recortar una imagen en Qt?
- 26. ¿Cómo puedo encontrar una imagen en una página con Cucumber/Capybara en Rails 3
- 27. ¿Puedo incrustar una fuente personalizada en una aplicación de Android?
- 28. Cómo incrustar archivos mjpeg en una página web
- 29. Cómo incrustar una imagen en un PDF usando cfpdfform
- 30. Cómo incrustar ayuda HTML en una ventana de formulario
Sin embargo, depende del navegador web utilizado, ya sea que funcione sin problemas. – BalusC
@BalusC - Es cierto, pero eso es lo que hizo la pregunta ... no hay más opciones que la ruta de archivo externo normal. –
Esto no parece funcionar en Chrome ... :(Preguntándome si los datos de base64 son incorrectos .. :( – WORMSS