Ci sono differenze tra queste due librerie?Qual è la differenza tra GDI e GDI +?
risposta
Secondo the wikipedia article on GDI:
Con l'introduzione di Windows XP, GDI è stata sconsigliata a favore del suo successore, il C++ GDI + basato sottosistema. GDI + aggiunge grafica 2D anti-alias, coordinate in virgola mobile, ombreggiatura sfumata, gestione dei percorsi più complessa, supporto intrinseco per i moderni formati di file grafici come JPEG e PNG e supporto per la composizione delle trasformazioni affini nella pipeline vista 2D.
Da Wikipedia:
GDI + aggiunge Grafica anti-alias 2D, coordinate a virgola mobile, ombreggiatura gradiente, la gestione dei percorsi più complessi, il supporto intrinseco per i moderni formati di grafica di file come JPEG e PNG, e il supporto per la composizione delle trasformazioni affini nella pipeline della vista 2D. GDI + utilizza i valori ARGB per rappresentare il colore.
GDI + è un miglioramento di GDI. Contiene funzionalità non facilmente disponibili in GDI come pennelli sfumati, fusione alfa e più supporto per il formato immagine.
Si può vedere ciò che altre differenze sono qui: http://msdn.microsoft.com/en-us/library/ms536338%28v=vs.85%29.aspx
GDI non è orientato agli oggetti e di fornire l'astrazione hardware per win32 plateform. È scritto in C
GDI + è orientato agli oggetti, ed è lo scopo principale è quello di fornire classi C++ per semplificare ed estendere in qualche modo l'utilizzo di GDI.
GDI + anche bersaglio .NET, come System.Drawing sta integrando lo
- 1. Qual è la relazione tra WIC e GDI +?
- 2. C# GDI Algoritmo di rilevamento degli spazi bianchi GDI
- 3. Interlinea GDI in Delphi?
- 4. Grafica GDI +/Direct2D e dimensione mondiale
- 5. GDI + doppio buffering in C++
- 6. GDI + è solo un livello sopra GDI o qualcosa di nuovo?
- 7. GDI + Come modificare Line SmoothingMode?
- 8. GDI + Graphics :: DrawImage non funziona
- 9. Qual è la differenza tra = e: =
- 10. Qual è la differenza tra Verilog! e ~?
- 11. Qual è la differenza tra? : e ||
- 12. qual è la differenza tra [[], []] e [[]] * 2
- 13. Qual è la differenza tra $ e $$?
- 14. Qual è la differenza tra ("") e (null)
- 15. Qual è la differenza tra dict() e {}?
- 16. Qual è la differenza tra " " e ""?
- 17. Qual è la differenza tra {0} e ""?
- 18. Qual è la differenza tra `##` e `hashCode`?
- 19. Qual è la differenza tra {0} e +?
- 20. Qual è la differenza tra .ToString() e + ""
- 21. qual è la differenza tra:.! e: r !?
- 22. In che modo GDI + funziona così velocemente?
- 23. Come si può scorrere legittimamente con GDI +?
- 24. come riempire il gradiente per roundrect in puro gdi (non gdi +)
- 25. Prestazioni di disegno 2D (GDI + vs SlimDX)
- 26. Disegno di molti rettangoli in GDI +
- 27. Quando si smaltiscono le risorse GDI +?
- 28. un errore generico verificato in GDI +
- 29. Come ruotare il testo in GDI +?
- 30. Come ottenere l'elenco delle maniglie GDI
realtà [MSDN non menziona GDI da deprecato] (https://msdn.microsoft.com/en-us/library/dd145203% 28v = vs.85% 29.aspx), quindi suggerirei che GDI possa essere (al momento) usato con sicurezza per l'uso procedurale di C, mentre GDI + sta per l'uso di O ++ in C++. – snuk182