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 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-2009 (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.