¿Hay alguna diferencia entre esas dos bibliotecas?¿Cuál es la diferencia entre GDI y GDI +?
Respuesta
Según the wikipedia article on GDI:
Con la introducción de Windows XP, GDI está desfasada y en favor de su sucesor, el C++ basado GDI + subsistema. GDI + agrega gráficos 2D antialias, coordenadas de punto flotante, sombreado degradado, administración de rutas más compleja, soporte intrínseco para formatos de archivos gráficos modernos como JPEG y PNG, y soporte para la composición de transformaciones afines en el canal de vista 2D.
De Wikipedia:
GDI + añade gráficos con antialias 2D, las coordenadas de punto flotante, el sombreado gradiente, administración de rutas más complejo, apoyo intrínseco a los formatos gráficos de archivos modernos como JPEG y PNG, y el apoyo para la composición de transformaciones afines en la canalización de vista 2D. GDI + usa valores ARGB para representar el color.
GDI + representa una mejora en GDI. Contiene funciones que no están disponibles en GDI, como pinceles de degradado, mezcla alfa y más compatibilidad con el formato de imagen.
Se puede ver lo que otras diferencias son aquí: http://msdn.microsoft.com/en-us/library/ms536338%28v=vs.85%29.aspx
GDI no está orientado a objetos y proporciona la abstracción de hardware para plateform de Win32. Está escrito en C
GDI + está orientado a objetos, y su objetivo principal es proporcionar clases de C++ para simplificar y extender de alguna manera el uso de GDI.
GDI + también se dirigen .NET, como System.Drawing se integrándolo
- 1. ¿Cuál es la relación entre WIC y GDI +?
- 2. .net2.0 vs .net 4.0 gdi + diferencia?
- 3. Cómo funciona GDI/GDI + sin OpenGL o DirectX
- 4. cómo rellenar degradado para roundrect en gdi puro (no gdi +)
- 5. ¿Cómo cargaría una imagen PNG usando Win32/GDI (sin GDI + si es posible)?
- 6. ¿GDI + es solo una capa encima de GDI, o algo nuevo?
- 7. Dibujando muchos rectángulos en GDI +
- 8. gdi + Gráficos :: DrawImage realmente lento ~~
- 9. GDI + doble búfer en C++
- 10. un error genérico en GDI +
- 11. Transparencia al texto en GDI
- 12. Windows GDI: horizontal/vertical DPI
- 13. ¿Cuál es la diferencia entre {0} y ""?
- 14. Cuál es la diferencia entre = y: =
- 15. ¿Cuál es la diferencia entre .ToString (+) y ""
- 16. Cuál es la diferencia entre $ (...) y `...`
- 17. ¿cuál es la diferencia entre:.! y: r !?
- 18. ¿Cuál es la diferencia entre ".equals" y "=="?
- 19. ¿Cuál es la diferencia entre dict() y {}?
- 20. ¿Cuál es la diferencia entre `##` y `hashCode`?
- 21. ¿Cuál es la diferencia entre "$^N" y "$ +"?
- 22. ¿Cuál es la diferencia entre [indefinido] y [,]?
- 23. ¿Cuál es la diferencia entre + = y = +?
- 24. ¿Cuál es la diferencia entre " " y ""?
- 25. Cuál es la diferencia entre $ y jQuery
- 26. Conversión de GDI + PixelFormat a WPF PixelFormat
- 27. ¿Cómo se puede desplazar legítimamente con GDI +?
- 28. Gestiones GDI en una aplicación DotNET
- 29. WinForms: ¿cuál es el mejor control para la superficie de dibujo GDI +?
- 30. ¿Cómo centro una imagen girada usando GDI +?
realidad [MSDN no menciona GDI a ser obsoleta] (https://msdn.microsoft.com/en-us/library/dd145203% 28v = vs.85% 29.aspx), entonces sugeriría que GDI puede (de momento) usarse con seguridad para el uso de procedimientos C, mientras que GDI + significa uso de C++ OO. – snuk182