NAME
Barcode::ZBar::Image - image object to scan for bar codes
SYNOPSIS
use Barcode::ZBar;
my $image = Barcode::ZBar::Image->new();
$image->set_format('422P');
$image->set_size(114, 80);
$image->set_data($raw_bits);
my @symbols = $image->get_symbols();
DESCRIPTION
Barcode::ZBar::Image is used to pass images to the bar code scanner. It wraps raw image data with the meta-data required to interpret it (size, pixel format, etc)
Image Formats
Image data formats are represented by (relatively) standard "Four Character Codes" (fourcc), represented by four character strings in Perl. A list of supported formats is available on the project wiki.
Examples:
'GREY' - single 8bpp intensity plane
'BGR3' - 24bpp packed RGB component format
'YUYV' - 12bpp packed luminance/chrominance (YCbCr) format
REFERENCE
Methods
- new()
-
Create a new Barcode::ZBar::Image object. The size, pixel format and data must be defined before the object may be used.
- get_format()
- set_format(format)
-
Return/specify the fourcc code corresponding to the image pixel format.
- get_sequence()
- set_sequence(seq_num)
-
Return/specify the video frame or page number associated with the image.
- get_size()
- set_size(width, height)
-
Return/specify the (width, height) image size tuple.
- get_data()
- set_data(raw)
-
Return/specify the raw image data as a binary string.
- get_symbols()
-
Return a list of scanned Barcode::ZBar::Symbol results attached to this image.
- convert(format)
-
Return a new Barcode::ZBar::Image object converted to the indicated fourcc format. Returns
undef
if the conversion is not supported. Conversion complexity ranges from CPU intensive to trivial depending on the formats involved. Note that only a few conversions retain color information.
SEE ALSO
Barcode::ZBar, Barcode::ZBar::Image, Barcode::ZBar::Symbol
zbarimg(1), zbarcam(1)
http://zbar.sf.net
AUTHOR
Jeff Brown, <spadix@users.sourceforge.net>
COPYRIGHT AND LICENSE
Copyright 2008-2010 (c) Jeff Brown <spadix@users.sourceforge.net>
The ZBar Bar Code Reader is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.