Skip to content
Related Articles

Related Articles

Wand vignette() method – Python

View Discussion
Improve Article
Save Article
  • Last Updated : 08 Jul, 2021
View Discussion
Improve Article
Save Article

The vignette(() function is an inbuilt function in the Python Wand ImageMagick library which is used to create a vignette-style effect on the image. It reduces image brightness or saturation toward the periphery compared to the image center.


vignette(radius, sigma, x, y)

Parameters: This function accepts four parameters as mentioned above and defined below: 

  • Radius: This parameter stores the radius of the Gaussian blur effect.
  • Sigma: This parameter stores the standard deviation of the Gaussian effect.
  • x: This parameter stores the number of pixels to offset inward from the top & bottom of the image.
  • y: This parameter stores Number of pixels to offset inward from the left & right of the image.

Return Value: This function returns the Wand ImageMagick object.

Original Image: 

Example 1: 


# Import library from Image
from wand.image import Image
# Import the image
with Image(filename ='../geeksforgeeks.png') as image:
    # Clone the image in order to process
    with image.clone() as vignette:
        # Invoke vignette function with radius as 12, sigma as 10,
        # x as 20, y as 20
        vignette.vignette(12, 10, 20, 20)
        # Save the image ='vignette1.jpg')


Example 2: 


# Import libraries from the wand 
from wand.image import Image
from wand.drawing import Drawing
from wand.color import Color
with Drawing() as draw:
    # Set Stroke color the circle to black
    draw.stroke_color = Color('black')
    # Set Width of the circle to 2
    draw.stroke_width = 1
    # Set the fill color to 'White (# FFFFFF)'
    draw.fill_color = Color('white')
    # Invoke Circle function with center at 50, 50 and radius 25, 200), # Center point
                (100, 100)) # Perimeter point
    # Set the font style
    draw.font = '../Helvetica.ttf'
    # Set the font size
    draw.font_size = 30
    with Image(width = 400, height = 400, background = Color('# 45ff33')) as pic:
        # Set the text and its location
        draw.text(int(pic.width / 3), int(pic.height / 2), 'GeeksForGeeks !')
        # Draw the picture
        # Invoke vignette function with radius as 12, sigma as 10, x as 10
        # y as 10
        pic.vignette(12, 10, 10, 10)
        # Save the image ='vignette2.jpg')



My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!