Alternatives to Rich Edit include system edit controls, combo boxes and list boxes, the Trident module (Mshtml.dll), and direct use of Graphics Device Interface (GDI) and User functions. Each alternative has advantages and disadvantages, and all are used both inside and outside of Microsoft. International text editing is very complicated in general, so writing appropriate editors is far from being a trivial task.