Barevné složky – Delphi – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Barevné složky – Delphi – Fórum – Programujte.comBarevné složky – Delphi – Fórum – Programujte.com

 

14. 3. 2010   #1
-
0
-

Zdravím, mám problém se svou dlouhodobou maturitní prací. Mám nějaky bmp obrázek a chci z něj vytáhnout jednotlivé barevné složky (RGB). Podařilo se mi obrázek převést na červenou,ale stejným postupem mi ze záhadných důvodů nejde na zelenou a modrou. Poradíte mi? Díky, F.M.
Přídávám zdrojový kód převodu na červenou:

procedure TForm2.RadioButton1Click(Sender: TObject);

var x,y: integer;
c: TColor;
r,g,b: byte;
begin
for x := 0 to Image2.Width do
begin
Image2.Repaint;

for y := 0 to Image2.Height do
begin
c := Image1.Canvas.Pixels[x,y];
r := (c and $0000FF);
g := (c and $00FF00);
b := (c and $FF0000);
Image2.Canvas.Pixels[x,y] := r
end
end;
end;

Nahlásit jako SPAM
IP: 89.176.54.–
liborb
~ Redaktor
+18
Guru
23. 3. 2010   #2
-
0
-

Problém je v tom, že máš r,g,b jako byte. U červené to ještě projde, ale ty ostatní musí být vždy 0 (v masce je dolní bajt nulový). Udělej z r,g,b třeba taky TColor (pro zobrazení) nebo (pokud to chceš v jednotlivých bajtech) to po vymaskování musíš posunout do dolního bajtu.

Nahlásit jako SPAM
IP: 85.207.166.–
23. 3. 2010   #3
-
0
-

Tak to bylo jednodušší než jsem myslel, díky moc:-)

Nahlásit jako SPAM
IP: 80.250.14.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 14 hostů

 

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