TCanvas.TextStyle is the default TextStyle for TextRect not for TextOut
But maybe some one can hack TextOut to change
MoveTo(X + TextWidth(Text), Y);
to
MoveTo(X - TextWidth(Text), Y);
depending on Alignment, but before that my ask why we need it?, is your work is right to left, why not using TextRect.