Práce s grafikou VII. – Embosing
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Práce s grafikou VII. – EmbosingPráce s grafikou VII. – Embosing

 

Práce s grafikou VII. – Embosing

Google       Google       2. 12. 2005       9 020×

Embosing je jednoduše fungující efekt pracující na rozdílech hodnot vedle sebe ležících pixelů...

Jak si můžete všimnout v následujícím kódu:


Private Declare Function SetPixel Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long, ByVal crColor As Long) As Long
Private Declare Function GetPixel Lib "gdi32" (ByVal hdc As Long, ByVal x As Long, ByVal y As Long) As Long

Public Sub Embosing(Img As PictureBox, Img2 As PictureBox)
    Img.DrawWidth = 1
    Img.ScaleMode = 3
    Img.AutoRedraw = True
    RGBMax = 256
    On Error Resume Next
        For x = 0 To Img.ScaleWidth
            For y = 0 To Img.ScaleHeight
                DoEvents
                Imgp = GetPixel(Img.hdc, x, y)
                b = Imgp  RGBMax  RGBMax
                g = (Imgp  RGBMax) Mod RGBMax
                r = Imgp Mod RGBMax
                Imgp1 = GetPixel(Img.hdc, x - 1, y - 1)
                b1 = Imgp1  RGBMax  RGBMax
                g1 = (Imgp1  RGBMax) Mod RGBMax
                r1 = Imgp1 Mod RGBMax
                DoEvents
                
                a = (((b - b1) + (g - g1) + (b - b1)) / 3) + 128
                
                If a >= 255 Then a = 255
                If a <= 0 Then a = 0

                SetPixel Img2.hdc, x, y, RGB(a, a, a)
            Next y
            DoEvents
        Next x
   Img.Refresh
End Sub

Funkčnost a princip celého algoritmu závisí na vzorci,


a = (((b - b1) + (g - g1) + (b - b1)) / 3) + 128

který udělá rozdíl jednotlivých barevných složek a z těchto rozdílů vypočítá průměr, ke kterému je přičteno 128. Hodnota 128 může být předávána jako argument a může být proměnná, ale to vyžaduje drobnou změnu kódu, kterou snad již zvládnete. V některém z dalších dílů si povíme o dalších možnostech Embosingu, a tím je nastavení střední barvy a míra rozdílů.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
(fotka) Jiří ChytilAutor programuje ve VB, zajímá se o elektrotechniku, studuje na SOŠ Elektrotechnické - obor číslicová technika.
Web    

Nové články

Obrázek ke článku Hybridní inteligentní systémy 2

Hybridní inteligentní systémy 2

V technické praxi využíváme často kombinaci různých disciplín umělé inteligence a klasických výpočtů. Takovým systémům říkáme hybridní systémy. V tomto článku se zmíním o určitém typu hybridního systému, který je užitečný ve velmi složitých výrobních procesech.

Obrázek ke článku Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Jak vést kvalitně tým v IT oboru: Naprogramujte si ty správné manažerské kvality

Vedení týmu v oboru informačních technologií se nijak zvlášť neliší od jiných oborů. Přesto však IT manažeři čelí výzvě v podobě velmi rychlého rozvoje a tím i rostoucími nároky na své lidi. Udržet pozornost, motivaci a efektivitu týmu vyžaduje opravdu pevné manažerské základy a zároveň otevřenost a flexibilitu pro stále nové výzvy.

Obrázek ke článku Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Síla týmů se na home office může vytrácet. Odborníci radí, jak z pracovních omezení vytěžit maximum

Za poslední rok se podoba práce zaměstnanců změnila k nepoznání. Především plošné zavedení home office, které mělo být zpočátku jen dočasným opatřením, je pro mnohé už více než rok každodenní realitou. Co ale dělat, když se při práci z domova ztrácí motivace, zaměstnanci přestávají komunikovat a dříve fungující tým se rozpadá na skupinu solitérů? Odborníci na personalistiku dali dohromady několik rad, jak udržet tým v chodu, i když pracovní podmínky nejsou ideální.

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý