IMHO the problem here is that you are trying to convert basically text file with xsl:fo :)
In this case the correct alignment requires proper font (i.e. non proportional font like Courier) and a proper number of space that must insert by the user... Probably the best choice is to try to transformate such text in a table (as others suggested). The cell separator can be a tab character (if possible) or a group of consecutive spache characters. The row separator can be a line feed or carriage return. With a propers XSLT you can obtain a table, that is better for alignements :-) -- Giuseppe Briotti g.brio...@gmail.com "Alme Sol, curru nitido diem qui promis et celas aliusque et idem nasceris, possis nihil urbe Roma visere maius." (Orazio)