Pregunta

Nuestro programa necesita generar gráficos vectoriales, y elegimos EMF para eso. Sin embargo, parece que otros programas muestran estas imágenes sin antialias. Descubrí que el formato SVG tiene una bandera para indicar que algunos / todos los objetos deben tener antialias.

¿Hay algún tipo de indicador o comando dentro del formato EMF para indicar que queremos tener antialiasing? Si es así, cómo generar ese comando usando System.Drawing .Imaging.Metafile class?

Gracias.

¿Fue útil?

Solución

El archivo EMF es una lista de comandos GDI. Por lo tanto, no será anti-aliaised, incluso si bajo GDI +, pones una llamada SmoothingMode () antes del dibujo. Tendrá que enumerar los comandos GDI, luego traducirlos a comandos GDI +.

En Vista / Seven, puede usar la función GDI + 1.1 denominada GdipConvertToEmfPlus / ConvertToEmfPlus. Si desea que su programa funcione con XP, debe escribir su propia enumeración y luego la conversión a comandos GDI +. hemos hecho esto en Delphi , quizás el código fuente pueda ayudarlo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top