Ver Mensaje Individual
  #4 (permalink)  
Antiguo 24/04/2014, 13:06
Avatar de vangodp
vangodp
 
Fecha de Ingreso: octubre-2013
Mensajes: 934
Antigüedad: 10 años, 6 meses
Puntos: 38
Respuesta: se puede manejar imagenes en c

Como has comprobado en otro foro c++ estándar no tiene funciones para imágenes. Tienes que agregar librerías externas, pero eso no es una desventaja, si llevamos trabajando con librerías todo el rato desde el primer día. :D
Allá por los 70 cuando se invento cpp XDD las imágenes ni siquiera existían creo jejeje
Por eso no vas encontrar nada de gráficos en cpp, por que no existía ni las pantallas coloradas :D
Así que "todo" lo referente a gráficos vamos a tener que echar mano de una librería.
¿Que es una librería? Yo antes de hacer esa pregunta me preguntaría otra cosa.¿Que es un sistema operativo?
Según: http://es.wikipedia.org/wiki/Sistema_operativo ...un sistema operativo es"Es un programa o conjunto de programas que en un sistema informático gestiona los recursos de hardware y provee servicios a los programas de aplicación, ejecutándose en modo privilegiado respecto de los restantes.....blablabla", eso es lo que nos interesa solo XDD
O sea que el que gestiona realmente el hardware es el SO, no nosotros. Nosotros hacemos llamadas a las APIs de los sistemas operativos, en mi caso la api de windows o windows api, como quieras XD
Tu crees que realmente programas en cpp y que controlas el ordenador jeje.Nosotros controlamos todo lo que nos permite el SO.
Las librerías hacen llamadas al SO, puedes aprender directo los comandos de las APIs y no te va hacer falta ninguna librería, pero realmente la API es una librería =D
Así que nunca nunca nunca ponga mala cara a las librerías por que no te puedes librar de ellas XDD. Para eso deberías crear el SO desde 0 y escribiendo todo el programa, luego no te orvides de los controladores y tal y tal jejej
Así que te explicare de que vamos los programadores y no solo digo los de cpp sino todos.
Nosotros hacemos lo que el SO nos permite hacer, y esta es la cruda realidad.
O te lo haces directamente en la API o te busca una LIB que es algo mas portable ya que cada sistema operativo tiene su API, entonces no te sirve aprender la API de windows y después vas a tener que aprender la de linux también. La lib se encarga de que se muestre el contenido lo mas parecido posible en ambos sistemas operativos, la lib sabe como llamar a cada API debidamente.
http://es.wikipedia.org/wiki/API_de_Windows
Echa un ojo ahí y veras que todo lo que hacemos pasa por ella.
Me siento como en java XDD
Bueno espero que te aya abierto un poco mas la mente, no se puede manejar imágenes con librerías estándar por que mientras que se hizo cpp no había colores y que la api la llamamos si o si, pues mejor es hacer uso de una librería minimamente fiable que nos facilite el trabajo, ya que aprender 2 APIs(windows/linux) seria mucha caña(al menos para miXD).
Puedes buscar mas por tu cuenta, si todo lo que te he balbuceado ya no sabes claro XDD
Nosotros no tenemos acceso a las tripas de windows. Es su API que sirve de puente para que nuestras aplicaciones se comuniquen con SO que gestiona los recursos.
Nosotros->cpp->libs->API(+libs XD)->SO->hardware.
Espero no haberte destruido la ilusión :DD
Es que si la cosa no fuera así cualquier programador mal intencionado seria capaz de echar abajo los sistemas y aun así lo ponen la cosa difícil. XDD
Bueno -_-' Sobre tu pregunta.... http://cimg.sourceforge.net/referenc..._tutorial.html

Según ha dicho eferion en otro foro, QT dispone de librerías propias para manejo de imágenes(QImage).
luego esta: openCV que según el sirve para matar moscas con cañón XDD
La que te puse el link antes "cimg" y una mas que vi, y esta esta pero ni idea "jpeglib".

No me preguntes cual es la mejor por que no he usado ninguna de ellas.

Otra cosa que puedes hacer es usar una de las que son dedicadas a juegos como puede ser SFML que te permite manejar las imágenes en varios formatos incluido transparencia. SDL, SFML2 o allegro.
Te digo que no es mala sfml. Echa la un ojo a ver que te parece, incluso te permite usar el bufer de la gráfica y ver los cambios en tiempo real ya que se dedica a juegos, y te permite hacer un save de la imagen.
Echa un ojo en algunas de sus funciones http://www.sfml-dev.org/documentatio...f_1_1Image.php