ffmpeg - horizontal align of multiple drawtext
Make ASS (Advanced SubStation Alpha) subtitles and use the subtitles filter:



ffmpeg -i video.mp4 -filter_complex "subtitles=your_subtitles.ass" -c:a copy output.mp4



You can make the subtitles manually or with Aegisub.
SRT (Subrip) subtitles are much simpler than ASS and would be easier to make manually, but they will lack features that ASS can support. SRT will suffice for simple styling however (underline, bold, italics, etc), but not individual per-word color changing as far as I know.