forked from Wavyzz/dolibarr
163 lines
6.0 KiB
Plaintext
163 lines
6.0 KiB
Plaintext
PHP-Barcode 0.3pl1
|
|
|
|
PHP-Barcode generates
|
|
- Barcode-Images using libgd (png, jpg,gif),
|
|
- HTML-Images (using 1x1 pixel and html-table)
|
|
- silly Text-Barcodes
|
|
|
|
PHP-Barcode encodes using
|
|
- a built-in EAN-13/ISBN Encoder
|
|
- genbarcode (by Folke Ashberg), a command line
|
|
barcode-encoder which uses GNU-Barcode
|
|
genbarcode can encode EAN-13, EAN-8, UPC, ISBN, 39, 128(a,b,c),
|
|
I25, 128RAW, CBR, MSI, PLS
|
|
genbarcode is available at www.ashberg.de/bar
|
|
|
|
(C) 2001,2002,2003,2004 by Folke Ashberg <folke@ashberg.de>
|
|
|
|
The newest version can be found at http://www.ashberg.de/bar
|
|
|
|
|
|
INSTALLATION:
|
|
|
|
WHAT YOU NEED TO BE ABLE TO USE PHP-BARCODE
|
|
You need php>4 on your system.
|
|
You need the gd2-extension to be able to render images.
|
|
You need a TrueTypeFont if you want to see the CODE below the bars.
|
|
You need genbarcode (from www.ashberg.de/bar) in you want to use
|
|
another encoding than EAN-12/EAN-12/ISBN
|
|
|
|
Copy the following files into your html/php-directory
|
|
- php-barcode.php - main library
|
|
- encode_bars.php - built-in encoders
|
|
optional:
|
|
- barcode.php - Sample-File
|
|
- white.png - for HTML-Images
|
|
- black.png - for HTML-Images
|
|
|
|
FONT-Installation
|
|
UNIX:
|
|
A TrueTypeFont isn't included in this distribution!
|
|
Copy one into the html/php-directory and change in php-barcode.php
|
|
$font_loc (change the arialbd.tff to your font name).
|
|
arialbd.ttf from Windows looks great.
|
|
|
|
WINDOWS:
|
|
If you use Windows the font should be located automatically.
|
|
|
|
OPTIONAL - genbarcode:
|
|
If you want to generate not only EAN-12/EAN-13/ISBN-Codes you have to install
|
|
genbarcode, a small unix-commandline tool which uses GNU-Barcode.
|
|
genbarcode is available http://www.ashberg.de/bar , read genbarcodes
|
|
README for installation.
|
|
If you have installed genbarcode not to /usr/bin set the $genbarcode_loc
|
|
in php-barcode.php .
|
|
|
|
TESTING
|
|
If everything works fine you should see an image if you call
|
|
http://localhost/path/barcode.php
|
|
|
|
Or call http://localhost/path/barcode.php?code=<CODE>&encoding=<ENCODING>&mode=<png|jpg|gif|html|text>&size=<1,2,3,...>
|
|
|
|
|
|
|
|
If you need more then the sample barcode.php can do, you need to build your own.
|
|
|
|
FUNCTIONS - API-Reference
|
|
|
|
--------------------------------------------------------------------------
|
|
function barcode_encode(code, encoding)
|
|
encodes $code with $encoding using genbarcode OR built-in encoder
|
|
if you don't have genbarcode only EAN-13/ISBN is possible
|
|
|
|
You can use the following encodings (when you have genbarcode):
|
|
ANY choose best-fit (default)
|
|
EAN 8 or 13 EAN-Code
|
|
UPC 12-digit EAN
|
|
ISBN isbn numbers (still EAN-13)
|
|
39 code 39
|
|
128 code 128 (a,b,c: autoselection)
|
|
128C code 128 (compact form for digits)
|
|
128B code 128, full printable ascii
|
|
I25 interleaved 2 of 5 (only digits)
|
|
128RAW Raw code 128 (by Leonid A. Broukhis)
|
|
CBR Codabar (by Leonid A. Broukhis)
|
|
MSI MSI (by Leonid A. Broukhis)
|
|
PLS Plessey (by Leonid A. Broukhis)
|
|
|
|
return:
|
|
array[encoding] : the encoding which has been used
|
|
array[bars] : the bars
|
|
array[text] : text-positioning info
|
|
|
|
--------------------------------------------------------------------------
|
|
function barcode_outimage(text, bars [, scale [, mode [, total_y [, space ]]]] )
|
|
|
|
Outputs an image using libgd
|
|
|
|
text : the text-line (<position>:<font-size>:<character> ...)
|
|
bars : where to place the bars (<space-width><bar-width><space-width><bar-width>...)
|
|
scale : scale factor ( 1 < scale < unlimited (scale 50 will produce
|
|
5400x300 pixels when
|
|
using EAN-13!!!))
|
|
mode : png,gif,jpg, depending on libgd ! (default='png')
|
|
total_y: the total height of the image ( default: scale * 60 )
|
|
space : space
|
|
default:
|
|
$space[top] = 2 * $scale;
|
|
$space[bottom]= 2 * $scale;
|
|
$space[left] = 2 * $scale;
|
|
$space[right] = 2 * $scale;
|
|
|
|
--------------------------------------------------------------------------
|
|
function barcode_outhtml(text, bars [, scale [, total_y [, space ]]] )
|
|
|
|
returns(!) HTML-Code for barcode-image using html-code (using a table and with black.png and white.png)
|
|
|
|
text : the text-line (<position>:<font-size>:<character> ...)
|
|
bars : where to place the bars (<space-width><bar-width><space-width><bar-width>...)
|
|
scale : scale factor ( 1 < scale < unlimited (scale 50 will produce
|
|
5400x300 pixels when
|
|
using EAN-13!!!))
|
|
total_y: the total height of the image ( default: scale * 60 )
|
|
space : space
|
|
default:
|
|
$space[top] = 2 * $scale;
|
|
$space[bottom]= 2 * $scale;
|
|
$space[left] = 2 * $scale;
|
|
$space[right] = 2 * $scale;
|
|
|
|
--------------------------------------------------------------------------
|
|
function barcode_outtext(code, bars)
|
|
|
|
Returns (!) a barcode as plain-text
|
|
ATTENTION: this is very silly!
|
|
|
|
text : the text-line (<position>:<font-size>:<character> ...)
|
|
bars : where to place the bars (<space-width><bar-width><space-width><bar-width>...)
|
|
|
|
--------------------------------------------------------------------------
|
|
For more function see php-barcode.php
|
|
Also see barcode.php or just use them :)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
This program is free software; you can redistribute it and/or modify
|
|
it under the terms of the GNU General Public License as published by
|
|
the Free Software Foundation; either version 2 of the License, or
|
|
(at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to the Free Software
|
|
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
|
|
|
|
|