Schrift
Wiki:Tipp zum Debugging: use Data::Dumper; local $Data::Dumper::Useqq = 1; print Dumper \@var;
[thread]8609[/thread]

Farbewerte der Pixel auslesen



<< >> 6 Einträge, 1 Seite
rommmi
 2006-12-28 20:56
#72787 #72787
User since
2006-06-11
15 Artikel
BenutzerIn
[default_avatar]
Hallo,

wie kann ich den mit
Perl die Farbwerte
der Bildschirm-Pixels
auslesen?

Danke im vorraus
und liebe Grüsse
rommi
GwenDragon
 2006-12-28 21:08
#72788 #72788
User since
2005-01-17
14757 Artikel
Admin1
[Homepage]
user image
topeg
 2006-12-28 21:19
#72789 #72789
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
Wichtig wäre auch zu wissen, ob die Pixel immer innerhalb des von deinem Programm belegten Desktopbreiches sein soll, oder auch außerhalb.
PerlProfi
 2006-12-28 21:22
#72790 #72790
User since
2006-11-29
340 Artikel
BenutzerIn
[default_avatar]
Wenn du Windows benutzt sollte es mit Win32::GUI::DC funktionieren.
Das Modul wird mit Win32::GUI mit geliefert.

Hier mal ein Beispiel:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/usr/bin/perl
use strict;
use warnings 'all';
use Win32::GUI;

# create screen object
my $screen = Win32::GUI::DC -> new ("DISPLAY");

# get color of pixel at x, y
my($x, $y) = (100, 50);
my $color = $screen -> GetPixel ($x, $y);

# print out the color
printf("Color at %i, %i: 0x%X\n", $x, $y, $color);


MfG PerlProfi
topeg
 2006-12-28 22:51
#72791 #72791
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
Und mal ein Beispiel mit GTK Für rein X11-basierte Oberflächen könnte man sicher auch auch X11::Protocol gehen. Wie es mit TK oder WX ginge weiß ich so nicht.
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/usr/bin/perl
use Gtk2 '-init';

my $posx=100;
my $posy=100;

my $pixbuf= Gtk2::Gdk::Pixbuf->new('rgb',0,8,1,1);

$pixbuf->get_from_drawable(Gtk2::Gdk::Screen->get_default()->get_root_window(),
               
            undef, $posx, $posy, 0, 0, 1, 1);

my ($r,$g,$b)=unpack('C*', $pixbuf->get_pixels());

print "($r,$g,$b)\n";
\n\n

<!--EDIT|topeg|1167339184-->
Gast Gast
 2006-12-29 11:41
#72792 #72792
Hallo topeg und PerlProfi,

danke für die schnellen Antworten. Betriebssystem ist
Windows 2000 Professional. Mit dem Modul Win32::GUI::DC
funzt es dann auch gleich, Danke!!

Wünsch euch viel Glück fürs neue Jahr

Ciao
rommmi
<< >> 6 Einträge, 1 Seite



View all threads created 2006-12-28 20:56.