How to create a letter spacing attribute with pycairo? How to create a letter spacing attribute with pycairo? python python

How to create a letter spacing attribute with pycairo?


Looks like this issue was already solved, using pycairo 1.20.0 and PyGObject 3.40.1:

import cairoimport gigi.require_version('Pango', '1.0')gi.require_version('PangoCairo', '1.0')from gi.repository import Pango, PangoCairowidth, height = 328, 48surface = cairo.ImageSurface(cairo.FORMAT_ARGB32, width, height)context = cairo.Context(surface)layout = PangoCairo.create_layout(context)font_desc = Pango.font_description_from_string('Sans, 40px')layout.set_font_description(font_desc)letter_spacing_attr = Pango.attr_letter_spacing_new(1024 * 10)attr_list = Pango.AttrList()attr_list.insert(letter_spacing_attr)layout.set_attributes(attr_list)layout.set_text('Hello World')PangoCairo.show_layout(context, layout)with open('help-me.png', 'wb') as image_file:    surface.write_to_png(image_file)