Open In App

Wand posterize() function – Python

Last Updated : 08 Jul, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

The posterize() function is an inbuilt function in the Python Wand ImageMagick library which is used to reduce color levels per channel.
 

Syntax: 
 

posterize(level, dither)

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

  • level: This parameter stores the number of levels per channel.
  • dither: This parameter stores the dither method to apply. Some of the available methods are ‘undefined’, ‘no’, ‘riemersma’, ‘floyd_steinberg’.

Return Value: This function returns the Wand ImageMagick object.

Original Image: 
 

Example 1: 
 

Python3




# 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 posterize:
        # Invoke posterize function
        posterize.posterize(2, 'no')
        # Save the image
        posterize.save(filename ='posterize1.jpg')


Output: 
 

Example 2: 
 

Python3




# 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
    draw.circle((200, 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
        draw(pic)
        # Invoke posterize function method
        pic.posterize(3, 'floyd_steinberg')
        # Save the image
        pic.save(filename ='posterize2.jpg')


Output: 
 

 



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads