Method: Magick::Image#contrast
- Defined in:
- ext/RMagick/rmimage.cpp
#contrast(sharpen = false) ⇒ Magick::Image
Enhance the intensity differences between the lighter and darker elements of the image.
4512 4513 4514 4515 4516 4517 4518 4519 4520 4521 4522 4523 4524 4525 4526 4527 4528 4529 4530 4531 4532 4533 4534 4535 4536 4537 4538 4539 4540 4541 4542 4543 4544 4545 4546 |
# File 'ext/RMagick/rmimage.cpp', line 4512
VALUE
Image_contrast(int argc, VALUE *argv, VALUE self)
{
Image *image, *new_image;
MagickBooleanType sharpen = MagickFalse;
#if defined(IMAGEMAGICK_7)
ExceptionInfo *exception;
#endif
image = rm_check_destroyed(self);
if (argc > 1)
{
rb_raise(rb_eArgError, "wrong number of arguments (%d for 0 or 1)", argc);
}
else if (argc == 1)
{
sharpen = (MagickBooleanType)RTEST(argv[0]);
}
new_image = rm_clone_image(image);
#if defined(IMAGEMAGICK_7)
exception = AcquireExceptionInfo();
GVL_STRUCT_TYPE(ContrastImage) args = { new_image, sharpen, exception };
CALL_FUNC_WITHOUT_GVL(GVL_FUNC(ContrastImage), &args);
rm_check_exception(exception, new_image, DestroyOnError);
DestroyExceptionInfo(exception);
#else
GVL_STRUCT_TYPE(ContrastImage) args = { new_image, sharpen };
CALL_FUNC_WITHOUT_GVL(GVL_FUNC(ContrastImage), &args);
rm_check_image_exception(new_image, DestroyOnError);
#endif
return rm_image_new(new_image);
}
|