I have used the
sharpPDF C# library, which is quite simple and the source code is available too (but other libraries might be better), for an example see:
sharpPDF SITE[
^]
Drawing text in a rectangle object directly is not possible, but it should be possible to do what you want using a table object with only one row and column and then fill it with a paragraph object.
Note that placement in the x,y axis is confusing, the y position starts counting from the bottom.