<｜begin▁of▁sentence｜>### Instruction:
Given a Cairo context, how can you use the draw_at method from the CairoTextDrawer class in igraph's drawing tools to render text starting from a specific point (100, 100) within a 200-pixel wide box, allowing for text wrapping, and then save the resulting image as 'text_example.png'?
### Response:
from igraph.drawing.text import CairoTextDrawer
from cairo import ImageSurface, Context, FORMAT_ARGB32

# Create a Cairo surface and context
canvas = ImageSurface(FORMAT_ARGB32, 400, 200)
ctx = Context(canvas)

# Initialize the Cairo text drawer with the created context
text_drawer = CairoTextDrawer(ctx, halign=CairoTextDrawer.CENTER)

# Coordinates where the text should start
text_x, text_y = 100, 100

# The width of the box for text fitting and wrapping details
text_width = 200
text_wrap = True

# Draw the text at the specified location
# Draw 'Hello, World!' at coordinates (100,100) within a 200-pixel wide box and allow text wrapping
text_drawer.draw_at('Hello, World!', x=text_x, y=text_y, width=text_width, wrap=text_wrap)

# Save the image to a file
canvas.write_to_png('text_example.png')
<|EOT|>
