Voglio antialias manualmente l'output delle funzioni di disegno GDI su Windows. Ogni funzione di disegno viene sottoposta a rendering sulla propria immagine e quindi ripristinata (quindi l'alpha blending può funzionare, poiché GDI non lo fa in modo nativo), quindi l'immagine ha solo due colori: trasparente e il colore del disegno.
La mia domanda è semplice: esiste un modo per antialias di una linea, cerchio, testo, ecc. disegnati dopo il fatto a mano (in un ciclo)?
Ho trovato questo ma non ho idea di come funziona, o anche se funziona.
Preferirei non reimplementare i primitivi dei disegni da solo; se lo facessi, non avrei bisogno di usare GDI. Ho già un ciclo di premoltiplicazione alfa; posso fare l'antialiasing lì?
Aggiornamento 23 settembre 2014 / Domanda alternativa - c'è questo articolo CodeProject che suggerisce l'uso di HALFTONE
blit stretching, tuttavia l'API GDI AlphaBlend()
non lo supporta, e non sono sicuro che l'output dell'utilizzo di una terza immagine per eseguire il ridimensionamento dei mezzitoni sarà correttamente alpha-premoltiplied se il colore di input è; è?