potreboval by som od niekoho kto sa trochu rozumie do GDI+, a pozriet ci nerobim nejaku blbost.
Mam nejaku podkladovu bitmapu ktora zabera cele okno (nie je vykreslena cez GDI+). Velkost okna sa da menit, bitmapa sa tomu prisposobuje.
Na tuto bitmapu potrebujem na presne urcene miesto vykreslit string. Problem je v tom, ze string sa ma prisposobit bitmape tak, aby sa deformoval rovnakym sposobom, ale ak pouzijem DrawText, tak to proste vypise text podla zadanych parametrov na konkretne miesto, bez toho aby sa potrebnym sposobom deformoval.
Potreboval by som radu ako na to, pripadne ci na to idem dobre.
Napadlo ma vyrenderovat tento text do noveho objektu typu bitmap, a tento potom nakreslit prislusne deformovany pomocou DrawImage.
Je to dobry sposob, pripadne mate niekto lepsi?
Zacal som tym smerom cosi pisat. Tuto je cyklus ktory prebehne pri kazdom vykresleni.
Kód: Vybrať všetko
Bitmap b(480,440);
Graphics *g = Graphics::FromImage(&b);
gdi_idu::writeLine(g, 1, L"1234567890123456789A1234");
gdi_idu::writeLine(g, 2, L"1234567890123456789A1234");
mLayoutRect = RectF( 0, 96, 480, 32);
g->DrawString(L"1234567890123456789A1234", 24, mIndicatorFont, mLayoutRect, &mStringFormat, mGreenBrush);
mGraphics->DrawImage(&b, relW(110), relH(50), relW(480), relH(440));
Ale hlavne netusim ci tymto nerobim nejaku blbost, lebo neviem ako sa spravaju GDI+ objekty. Predpokladam ze podobne ako premenne, teda pri kazdom cykle sa mi nevytvori nova bitmapa b a nova graphics g, ale pri kazdom cykle sa prepise kus pamate ktory je pre ne alokovany... ale nie som si isty tak sa radej pytam...
//autoeditácia príspevku (27 Mar 2013, 16:19)
Nikto tu nevie GDI+?