photomosaics

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs

commit c20397d72c30435716a434d07ba41fb0757504d4
Author: Wilson Gheen <wilson@wilsonrgheen.com>
Date:   Sat, 24 Dec 2022 15:53:11 -0600

Initial commit. Add modified version of MagickCore sample program

Diffstat:
Aphotomosaics.c | 43+++++++++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+), 0 deletions(-)

diff --git a/photomosaics.c b/photomosaics.c @@ -0,0 +1,43 @@ +#include <stdio.h> +#include <stdlib.h> +#include <string.h> +#include <time.h> +#include <MagickCore/MagickCore.h> + +int main(int argc, char **argv) { + ExceptionInfo *exception; + Image *image, *images, *resize_image, *thumbnails; + ImageInfo *image_info; + if(argc != 3) { + fprintf(stdout, "Usage: %s old_image new_image\n", argv[0]); + exit(2); + } + + MagickCoreGenesis(*argv, MagickTrue); + exception = AcquireExceptionInfo(); + image_info = CloneImageInfo((ImageInfo *)NULL); + strcpy(image_info->filename, argv[1]); + images = ReadImage(image_info, exception); + if(exception->severity != UndefinedException) + CatchException(exception); + if(!images) + exit(1); + + thumbnails = NewImageList(); + while((image=RemoveFirstImageFromList(&images)) != (Image *)NULL) { + resize_image = ResizeImage(image, 237, 282, LanczosFilter, exception); + if(!resize_image) + MagickError(exception->severity, exception->reason, exception->description); + AppendImageToList(&thumbnails, resize_image); + DestroyImage(image); + } + + strcpy(thumbnails->filename, argv[2]); + WriteImage(image_info, thumbnails, exception); + + thumbnails = DestroyImageList(thumbnails); + image_info = DestroyImageInfo(image_info); + exception = DestroyExceptionInfo(exception); + MagickCoreTerminus(); + return 0; +}