Rendering di testo con antialiasing utilizzando TextRenderer C #

Sep 21 2020

Ho scritto un programma per disegnare una stringa su un'immagine. Io lo uso graphics.DrawString()ma come puoi vedere in questo post ha dei problemi.
TextRenderer.DrawText()ha risolto il problema ma il testo renderizzato è frastagliato. Ho cambiato sia la graphics.TextRenderingHintrisoluzione della grafica; TextRenderernon gli importa affatto.
Dovrebbe esserci una soluzione come viene fatto qui ; ma non so come farlo.

Risposte

IanBoyd Sep 23 2020 at 18:53
        private void panel1_Paint(object sender, PaintEventArgs e)
        {
            //GDI (i.e. TextRenderer)
            String s = "The quick brown fox jumped over the lazy dog";
            Point origin = new Point(11, 11);
            Font font = SystemFonts.IconTitleFont;

            e.Graphics.TextRenderingHint = TextRenderingHint.SingleBitPerPixel;

            TextRenderer.DrawText(e.Graphics, s, font, origin, SystemColors.InfoText);
        }

Demo mostra completa che fa il lavoro:https://mega.nz/file/E3xREYIR#kuDxyac_0jxlX7wuTVmZmJgClEicdaCj0YpnE83Wq9k