print string to defined (at_x) position
        to_x can apply only if at_x is None and if used then forces align='R'

def txt(self, txt, h=None, at_x=None, to_x=None, change_style=None, change_size=None):
        """print string to defined (at_x) position
        to_x can apply only if at_x is None and if used then forces align='R'
        """
        h = h or self.height
        self._change_props(change_style, change_size)
        align = 'L'
        w = None
        if at_x is None:
            if to_x is not None:
                align = 'R'
                self.oPdf.set_x(0)
                w = to_x
        else:
            self.oPdf.set_x(at_x)
        if w is None:
            w = self.oPdf.get_string_width(txt)
        self.oPdf.cell(w, h=h, txt=txt, align=align)