My new application will have a rich interface that needs to be changed on the fly, uses transparent icons / images, etc. For this application, I am trying to decide whether to use the new Direct2D API against the old old GDI. One of the disadvantages, of course, does not work on XP, although I found several more unpleasant problems to solve:
I noticed that text output in Direct2D seems a bit blurry (although it is sold as a function). Just view the text in Firefox 4 with hardware acceleration enabled (or IE9). This seems to be due to the fact that in the text Direct2D does not adhere to the grid (pixel), as GDI does. Is there a way to get Direct2D to make it stick to the pixel grid and thereby fix this problem?
Is there such a speed improvement? I tried to understand this article , and I assume that in Windows 7 and XP (and not in Vista?) GDI is already hardware accelerated where it can. For instance. In my application, I use a large number of DC memory, which are simply BitBltplaced in place, and the drawings are transparent images / smooth lines, etc. are drawn using AlphaBlend. And this last, of course, hardware acceleration, as I measured the speed when testing my routines.
BitBlt
AlphaBlend
So where would you put your money? Is Direct2D worth the hassle, or are you just sticking to the old old GDI? Or do you suggest anything else?
Note. I am programming in C ++ btw, not using MFC.
. Direct2D . , GDI (.. ):
bash Direct2D, Direct2D. , . Mac, , , Direct2D Y-. , , , 96 , . ClearType , GDI. GDI Direct2D. GDI Direct2D Firefox IE .
, , , "".
, , , GDI + Direct2D, , , ( ) . , , , .
GDI , . , (, ClearType) - , 75-100 , .
, , . . . , VS 2010 , , VS 2008 .
: , ? ? Does Direct2D GDI? Windows XP? ? Direct2D Microsoft , .
: . , - , . . , , , . , , , Direct2D - , .