Img_img se focalise juste sur l'ouverture d'un fichier, aucun redimensionnement et autre "feature" d'image magic. Ce qui pourrait permettre une moindre dépendance et un fonctionnement plus simple.
Le code :
// initialization:
ImgImg img_img;
ImgPluginData plugin_data;
memset(&plugin_data,0,sizeof(plugin_data));// Important to zero first!
// specify file to read and plug-in to use:
plugin_data.filename = "test8.ppm";
plugin_data.libname = "img_ppm";
// read the file into an RGB buffer:
bool ok = img_img.Read(plugin_data);
// expose the raw RGB buffer:
ImgData& img_data=img_img.GetImgData();
... do whatever you want to the flat RGB raster in memory ...
// write this 8-bit raster as a 16-bit ppm:
plugin_data.filename = "test16.ppm";
plugin_data.write_options = "bits=16";
ok = img_img.Write(plugin_data);
Ne devrait pas radicalement changer, vu que la librairie est focalisé sur le chargement des images (simplicité)
De plus si on regarde bien : http://www.imagemagick.org/www/download.html?(...)
On ne retrouve les sources que pour Linux et Windows. Quid de MacOS (X) ou autre plateforme?
La licence quand à elle est une Apache-Style. Je ne sais pas bien quelles sont les limitations et les plus par rapportà la GPL.
Enfin, un des premiers ajouts à cinepaint par rapport à gimp a été le support des "image formats up to 32-bit per channel deep", ce que imagemagic ne supporte pas il me semble.
[^] # Re: img_img contre ImageMagick
Posté par Geo Vah . En réponse à la dépêche Cinepaint, Glasgow et Verse. Évalué à 2.
Le code :
// initialization:
ImgImg img_img;
ImgPluginData plugin_data;
memset(&plugin_data,0,sizeof(plugin_data));// Important to zero first!
// specify file to read and plug-in to use:
plugin_data.filename = "test8.ppm";
plugin_data.libname = "img_ppm";
// read the file into an RGB buffer:
bool ok = img_img.Read(plugin_data);
// expose the raw RGB buffer:
ImgData& img_data=img_img.GetImgData();
... do whatever you want to the flat RGB raster in memory ...
// write this 8-bit raster as a 16-bit ppm:
plugin_data.filename = "test16.ppm";
plugin_data.write_options = "bits=16";
ok = img_img.Write(plugin_data);
Ne devrait pas radicalement changer, vu que la librairie est focalisé sur le chargement des images (simplicité)
De plus si on regarde bien :
http://www.imagemagick.org/www/download.html?(...)
On ne retrouve les sources que pour Linux et Windows. Quid de MacOS (X) ou autre plateforme?
La licence quand à elle est une Apache-Style. Je ne sais pas bien quelles sont les limitations et les plus par rapportà la GPL.
Enfin, un des premiers ajouts à cinepaint par rapport à gimp a été le support des "image formats up to 32-bit per channel deep", ce que imagemagic ne supporte pas il me semble.