Herramientas de usuario

Herramientas del sitio


fw:imgmagick

¡Esta es una revisión vieja del documento!


ImageMagick

Magick Library (C++)

Ejemplos básicos

Crop de imágen y visualización

#include <Magick++.h> 
#include <iostream> 
using namespace std; 
using namespace Magick; 
int main(int argc,char **argv) { 
  Image image;
  image.read( "girl.gif" );
  image.crop( Geometry(100,100, 100, 100) );
  image.write( "x.gif" ); 
  image.display();
  return 0; 
}

Edición de imágen creada dinámicamente

Image image(Geometry(f->s.width, f->s.height), "black");
...
for (x, y) if (f->blobs[y][x] == nBlob) image.pixelColor(x, y, "white");
...
image.write("test.png");

Dibujar sobre la imagen

Se utilizan los objetos Drawable.

Image image( Geometry(300,200), Color("white") );
 
image.strokeColor("red"); // Outline color
image.fillColor("green"); // Fill color
image.strokeWidth(5);
 
image.draw( DrawableCircle(100,100, 50,100) );
image.draw( DrawableRectangle(200,200, 270,170) );
image.display( );

Notas

Crear una textura para OpenGL

Image img;
img.read("mario.jpg");
img.write(&blob, "RGBA", 8);
glGenTextures (1, &texture);
glBindTexture (GL_TEXTURE_2D, texture);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
gluBuild2DMipmaps(GL_TEXTURE_2D, 4, img.columns(), img.rows(), GL_RGBA, GL_UNSIGNED_BYTE, blob.data());
fw/imgmagick.1336745600.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)