Wielu z was denerwuje fakt iż początek układu współrzędnych na formie jest w lewym górnym rogu. Ostatnio podczas pisania programu bardzo mnie to irytowało i postanowiłem coś z tym zrobić. Zamiana na „tradycyjny” układ ze środkiem w środku formy, taki jak od podstawówki rysujemy w zeszycie 🙂 jest bardzo prosta:
W TForm.Create dodajemy następujący kod:

w funkcji setviewportorgex canvas.handle oznacza uchwyt do płótna na którym chcemy przestawić układ wsp.
clientwidth div 2, clientheight div 2 – współrzędne nowego układu

Kod sprawdzany pod d7 i win98 – działa 🙂

Mam nadzieje że się przyda
Pozdrawiam
DarkAndrew

Autor: darkandrew

Chciałbym przedstawić sposób na zabarwienie obrazka jednym kolorem. Procedura najpierw oblicza wartość nasycenia wybranego koloru, a następnie usuwa dwa pozostałe. Ze względu na powolne działanie, procedura sprawdza się bardzo dobrze jedynie przy obrazkach niewielkich rozmiarów.

W tej procedurze zabarwiamy rysunek na czerwony, aby wykonać to dla barwy zielonej lub niebieskiej wystarczy zmienić Pixels[x,Y]:=RGB(Nasycenie,0,0); na :

zielony : Pixels[x,Y]:=RGB(0,Nasycenie,0);
niebieski : Pixels[x,Y]:=RGB(0,0,Nasycenie);

Autor: NakielNakiel

Przedstawiona procedura wykonuje zrzut ekranu do obiektu TImage, a następnie zapisuje obraz na dysku jako plik capture.bmp w katalogu, z którego uruchomiliśmy program.

Autor: Nakiel

Tym razem wykonamy procedurę wyświetlającą tekst pod określonym kątem. Najpierw ustawiamy parametry początkowe, następnie tworzymy nowy obiekt czcionki i przypisujemy mu uchwyt (handle) naszego formularza.

Autor: Nakiel

Przedstawiony poniżej kod umożliwia stworzenie efektu rozmycia (blur) na dowolnym obrazie BMP. Format pikseli musi być 24 lub 32 bitowy.

Teraz wystarczy wywołać procedurę :

Autor: Nakiel

Na początku przypiszemy parametrowi BorderStyle utworzonego formularza wartość bsNone. Następnie wystarczy do źródła programu dodać poniższy kod:

Autor: Nakiel

Stwórzmy funkcję, która będzie porównywać dwa obrazki w formacie BMP, a następnie zwróci w ilu procentach są ze sobą identyczne. Oto jej kod:

Wywołanie funkcji:

Image1 i Image2 to obiekty klasy TImage zawierające obrazy w formacie BMP. Miłego testowania 😉

Autor: Nakiel

Aby mieć możliwość rysowania po powierzchni paska tytułowego, musimy utworzyć nowy obiekt TCanvas, a następnie przypisać mu uchwyt naszego formularza.

Autor: Nakiel

Na czym polega robienie gradientu? W zmiennych przechowamy sobie składowe wartość r, g i b koloru pierwszego oraz w r2, g2 i b2 koloru drugiego. Następnie obliczamy różnicę pomiędzmy tymi składowymi. Następnie dzielimy wynik przez długośc (lub wysokość), aby wiedzieć, o ile musimy zwiększać poszególne składowe w każdym obiegu pętli. Następnie, w pętli zmieniamy składowe, aż w końcu dochodzimy do koloru końcowego.

Autor: Iskar

Dla dwuwymiarowego układu:

Dla trójwymiarowego układu:

Musisz dodać do uses Math.

Autor: Toster

Skorzystaj z poniższej funkcji

Autor: Nakiel

Możesz posłużyć się tym kodem :

Autor: Nakiel

Użyj funkcji GetRValue, GetGValue oraz GetBValue, które zwracają kolejno natężenie barwy czerwonej, zielonej oraz niebieskiej:

Autor: Iskar

Użyj tego kodu:

Autor: Drazek

Autor: Kkkas

Utwórz TImage, ustaw wielkość i nazwę (width 300,height=300, rys) i TButton, na który kliknij dwa razy.
Wpisz poniższy kod:

Autor: Spider100

Rozwiązanie jest bardzo proste – wystarczy dodać do uses Jpeg. Gotowe.

Autor: Iskar

Nowy kursor myszy dla tworzonego przez nas programu możemy wczytać w bardzo prosty sposób posługując się funkcją LoadImage oraz zwróconym w wyniku jej wywołania uchwytem. Oto kod całej procedury: