You really shouldn't be zooming in or out on text, instead you should adjust the text size accordingly and render the text on a separate unscaled view to the screen.
That then also allows you to ensure you're always rendering on integer positions.
Otherwise, there isn't too much you can do, as the rasterizer has to cut some information when zooming out and there's a good chance that sharp edges will visually suffer.