我有以下代码:
use Imager::Screenshot 'screenshot';
my $img = screenshot(hwnd => 'active',
left => 450,
right => 200,
top => 50,
bottom => 50
);
$img->write(file => 'screenshot.png', type => 'png' ) ||
print "Failed: ", $img->{ERRSTR} , "\n";
它打印:
“无法在第 3 行的未定义值上调用方法“写入””
但是当我这样做时:
use Imager::Screenshot 'screenshot';
my $img = screenshot(hwnd => 'active',
left => 100,
right => 300,
top => 100,
bottom => 300
);
$img->write(file => 'screenshot.png', type => 'png' ) ||
print "Failed: ", $img->{ERRSTR} , "\n";
它确实需要一个屏幕截图。为什么左边、右边、顶部和底部的值在这里很重要?
编辑:经过一些研究,我发现左参数必须小于右参数,并且顶部必须小于底部。