Good suggestion. This has now been implemented and will be included in the next release:
https://feedback.objo.dev/feature/1379
The five-argument DrawText() overload now treats a wrapWidth of zero or any negative value as “do not wrap”, while still honouring boundingHeight and VerticalTextAlignment.
g.TextAlignment = TextAlignment.Right
g.VerticalTextAlignment = TextAlignment.Middle
g.DrawText("Right-aligned without wrapping", 300, 50, 0, 100)
One clarification regarding horizontal alignment: for unwrapped text, x already acts as the left, centre, or right anchor according to TextAlignment. Therefore, TextWidth() is not required to position unwrapped text by its right edge.