Me gustaría saber lo siguiente: agregué la carpeta "Gráficos" en mi proyecto y metí un BMP en él. Ahora me gustaría cargar la imagen desde mi código, pero no puedo entender cómo. Sé que es simple con los recursos, pero ¿hay alguna manera de no agregar la imagen a los recursos? GraciasC#: Accediendo a la imagen agregada a la carpeta del proyecto
Respuesta
Una vez me pregunté sobre esto también, así que lo descubrí y lo puse en un blog post. Por su ejemplo, debería ser algo como esto:
var a = Assembly.GetExecutingAssembly(); // Or another Get method if you need to get it from some other assembly
var image = Image
.FromStream(a.GetManifestResourceStream("DefaultNameSpace.Graphics.image.bmp"));
Recuerde marcar la imagen como un recurso incrustado y disponer de la imagen cuando se hace así no obtiene ninguna fuga :)
Gracias. ¿Qué sucede si dejo "Contenido" como una acción de compilación? Y, por favor, ¿a qué nombre pertenece la Asamblea? No puedo llamarlo. – Petr
DefaultNamespace es el espacio de nombres que ha proporcionado en la configuración de su proyecto. Por defecto es el nombre de tu proyecto. Si usa Content Build Action, creo que el archivo se copiará en su directorio de salida. Si haces eso, deberías usar 'Image.FromFile (" pathtoimage.bmp ")' o algo así. – Svish
Hmm .. He intentado escribir Assembly. pero nada apareció. – Petr
Para obtener un recurso:
myNamespace.Properties.Resources.images.<imagename>
Usted puede emitir ese el tipo que necesita (o utilizar una función, por ejemplo, FromFile)
Se debe especificar en las propiedades del archivo que se debe desplegado en la construcción de la aplicación:
Copiar al Directorio de salida: Copia siempre
A continuación, puede acceder al archivo utilizando el método Image.FromFile, la ruta será exactamente la misma que en su proyecto.
Si haces esto, entonces no es un recurso incrustado. Puede tener algunos problemas graves si no maneja los archivos que faltan cuando los usuarios simplemente copian el archivo exe en lugar de toda la carpeta. – RvdK
Usted puede cargar una imagen directamente desde el sistema de archivos
Imagen img = Image.FromFile ("\ Graphics \ ImageName.bmp");
La documentación de MSDN está aquí
http://msdn.microsoft.com/en-us/library/system.drawing.image.fromfile.aspx
Obviamente lo que se necesita saber el directorio y el nombre que va a cargar desde.
- 1. agregar elementos al proyecto de Visual C# (Express 2010) sin copiarlos a la carpeta del proyecto
- 2. Como recuperar la imagen de la carpeta de recursos del proyecto en C#
- 3. C# Convenciones de nomenclatura de la carpeta del proyecto
- 4. c, opencv - accediendo a la imagen JPG de la cámara sobre ip
- 5. carga de la imagen del iphone a la carpeta del servidor
- 6. No se puede cargar la imagen desde la carpeta del proyecto en el módulo Orchard
- 7. salida a la carpeta específica mientras que la construcción del proyecto
- 8. Accediendo a la vista en awakeFromNib?
- 9. Django: ¿accediendo a la instancia del modelo desde ModelAdmin?
- 10. Accediendo a la posición actual de UIView durante la animación
- 11. Accediendo a C# Objetos de tipo anónimo
- 12. Especificando la carpeta c: \ ProgramData en el proyecto de instalación?
- 13. Accediendo a typedef desde la instancia
- 14. Accediendo a la fuente personalizada desde Jar
- 15. Accediendo a la cámara en IOS Simulator
- 16. Accediendo a la clase principal en Backbone
- 17. Accediendo a los métodos del módulo con ::
- 18. accediendo a las propiedades de UIImage sin cargar en la memoria la imagen
- 19. Agregando paquete a la estructura del proyecto Java
- 20. Agregue un enlace personalizado a la página del proyecto hudson
- 21. Accediendo a un elemento fuera del iframe
- 22. C++ Accediendo a los elementos vectoriales
- 23. Accediendo a la información del programa que gdb ve en C++
- 24. ¿Copia el archivo de imagen de la url web a la carpeta local?
- 25. Accediendo a valores de píxel OpenCV 2.3 - C++
- 26. Accediendo a fotos de un álbum específico de la fotolibrary
- 27. Accediendo a una biblioteca .lib de C++ desde C#
- 28. Maven copie la salida del proyecto a otros recursos del proyecto
- 29. Copie la imagen del servidor remoto a través de HTTP
- 30. Ignorar archivos en la carpeta del proyecto para Doxygen
mira esta pregunta http://stackoverflow.com/questions/154262/example-code-required-for-how-to-access-embedded-net-image-resources-in-c – IordanTanev