CYFROWY BARON • PROGRAMOWANIE • Zobacz wÄ…tek - TImage i dodawanie tekstu
Strona 1 z 1

TImage i dodawanie tekstu

Nowy postNapisane: wtorek, 15 stycznia 2013, 16:27
przez Steblu
Witam,
mam problem. Mianowicie mam sobie TImage i chcę na niego dać text robiąc to poprzez kod :
KOD cpp:   •  UKRYJ  •
Obrazek->Canvas->TextOutW(1,1,"OMG")

oczywiście to nie działa, próbowałem cos pokombinować z TRect i TCanvas i TStaticText, lecz z marnym skutkiem.

Jaki jest poprawny sposób umieszczenia tekstu nad, lub na TImage o ile wogóle się da?

Re: TImage i dodawanie tekstu

Nowy postNapisane: wtorek, 15 stycznia 2013, 20:54
przez Cyfrowy Baron
A nie otrzymujesz przypadkiem komunikatu: Can only modify an image if it contains a bitmap ?

Możesz pisać po Image o ile jest puste lub zawiera bitmapę, jeżeli wczytałeś do Image np. plik JPEG, PNG itp. to nie da się pisać po Canvas za pomocą standardowego GDI. Musiałbyś skorzystać z GDI+. Prościej jednak będzie wczytać bitmapę.
Jeżeli chcesz by tekst miał przeźroczyste tło to musisz Brush->Style ustawić bsClear:

KOD cpp:   •  UKRYJ  •
 Image1->Canvas->Brush->Style = bsClear;
 Image1->Canvas->TextOut( 1, 1, "OMG");


Wystarczy TextOut, gdyż w C++Builder 2009 i nowszych domyślnym typem jest UnicodeString, więc TextOut jest równoznaczny z TextOutW. Gdybyś chciał zamiast typu UnicodeString przekazać AnsiString, wtedy powinieneś użyć TextOutA.