Autor | Zpráva | ||
---|---|---|---|
panterek Profil |
#1 · Zasláno: 3. 3. 2011, 22:18:22 · Upravil/a: panterek
Zdravím, hledal jsem nějaké generování čárového kódu..našel jsem vynikající generátor, ale bohužel nerozumím zdrojovému kódu a proto nevím, jak s tímto vygenerovaným obrázkem dál pracovat :(
// Including all required classes require('../class/BCGFont.php'); require('../class/BCGColor.php'); require('../class/BCGDrawing.php'); // Including the barcode technology include('../class/BCGcode39.barcode.php'); // Loading Font $font = new BCGFont('../class/font/Arial.ttf', 10); // The arguments are R, G, B for color. $color_black = new BCGColor(0, 0, 0); $color_white = new BCGColor(255, 255, 255); $code = new BCGcode39(); $code->setScale(2); // Resolution $code->setThickness(15); // Thickness $code->setForegroundColor($color_black); // Color of bars $code->setBackgroundColor($color_white); // Color of spaces $code->setFont($font); // Font (or 0) $code->parse("$barcode"); // Text /* Here is the list of the arguments 1 - Filename (empty : display on screen) 2 - Background color */ $drawing = new BCGDrawing('', $color_white); $drawing->setBarcode($code); $drawing->draw(); // Header that says it is an image (remove it if you save the barcode to a file) header('Content-Type: image/png'); // Draw (or save) the image into PNG format. $drawing->finish(BCGDrawing::IMG_FORMAT_PNG); Tohle je obsah souboru test.php, kde řádek "$code->parse("$barcode"); // Text", říká, že co tam napíšu, to mi zobrazí v čárovém kódu ..Jak ale udělám, abych s tímto vygenerovaným obrázkem mohl dál pracovat? :( Pokud do toho souboru test.php cokoliv napíšu, třeba "bla bla bla", tak mi to vypíše chybu: "Obrázek “http://localhost/barcode_orig/test.php” nelze zobrazit, protože obsahuje chyby." ..když bych chtěl vytvořit tabulku, bere v potaz jen tohle (tento kód jsem někde našel, ale nedá se použít, pač to potřebuji vkládat do jiného souboru..soubor test.php pouze vygeneruje ten čárový kód): $table->insertRows(10, 1); $table->addCellAttribute(10, 0, 'align', 'center'); $table->addCellAttribute(10, 0, 'colspan', '2'); $table->addRowAttribute(10, 'style','background-color: #ffffff'); $table->setText(10, 0, '<img src="image.php?code=' . $filename . '&o=' . $output . '&dpi=' . $dpi . '&t=' . $thickness . '&r=' . $res . '&rot=' . $rotation . '&text=' . urlencode($text2display) . '&f1=' . $font_family . '&f2=' . $font_size . '&a1=' . $a1 . '&a2=' . $a2 . '&a3=' . $a3 . '" alt="Barcode Image" />'); Tomuhle jazyku moc nerozumím :( A potřeboval bych to dostat právě do tagu <img ...... >, abych s tím mohl dál pracovat v jiném souboru.. Mám totiž řekněme zakázky: ID zakázka ČÁROVÝ KÓD 1 bla bla .............. 2 bla bla .............. 3 bla bla .............. 4 bla bla .............. a potřeboval bych ty čárové kódy vypisovat takhle na řádek...čili dostat to do nějakého takového stavu: ID zakázka ČÁROVÝ KÓD 1 bla bla <img ....> 2 bla bla <img ....> 3 bla bla <img ....> 4 bla bla <img ....> Ale za boha nevím, jak ze souboru test.php dostanu obrázek a vložím ho do cyklu jiného souboru :( |
||
panterek Profil |
#2 · Zasláno: 3. 3. 2011, 23:24:09 · Upravil/a: panterek
Možná by stačilo, kdyby někdo poradil, jak udělat výpis bez použití header hlavičky ..podařilo se mi to napozicovat, ale v dané kolonce mám "rozsypaný čaj" ..předpokládám, že to je ten čárový kód jako obrázek PNG, ale napsaný v textu ...čili jako by se otevřela fotka nějakým textovým editorem ...čili jak udělat výpis (nejlépe asi pomocí toho <img>), místo hlavičky header..? Už se blížííím :-)
|
||
panterek Profil |
#3 · Zasláno: 4. 3. 2011, 09:00:30 · Upravil/a: panterek
Takže vyřešeno - celé řešení:
skript se vloží jednoduše do funkce a tuto funkci pak umístit někam do cyklu... Samotné zobrazení čárového kódu je nutno ukládat ne na obrazovku, ale do souboru. Pak jednoduše přes tagy <img...> vybírám, kam chci čárový kód umístit...upravený skript je tady, jen je potřeba poupravit cesty v deklaracích require_once: Do proměnné $barcode se vkládá text, který se bude měnit v čárový kód.. <?php function barcode($barcode) { // Including all required classes require_once('../class/BCGFont.php'); require_once('../class/BCGColor.php'); require_once('../class/BCGDrawing.php'); // Including the barcode technology require_once('../class/BCGcode11.barcode.php'); // Loading Font $font = new BCGFont('../class/font/Arial.ttf', 10); // The arguments are R, G, B for color. $color_black = new BCGColor(0, 0, 0); $color_white = new BCGColor(255, 255, 255); $code = new BCGcode11(); $code->setScale(2); // Resolution $code->setThickness(15); // Thickness $code->setForegroundColor($color_black); // Color of bars $code->setBackgroundColor($color_white); // Color of spaces $code->setFont($font); // Font (or 0) $code->parse("$barcode"); // Text /* Here is the list of the arguments 1 - Filename (empty : display on screen) 2 - Background color */ //$drawing = new BCGDrawing('', $color_white); $drawing = new BCGDrawing("../barcode/img/$barcode.png", $color_white); $drawing->setBarcode($code); $drawing->draw(); // Header that says it is an image (remove it if you save the barcode to a file) //header('Content-Type: image/png'); // Draw (or save) the image into PNG format. $drawing->finish(BCGDrawing::IMG_FORMAT_PNG); } ?> |
||
Joker Profil |
#4 · Zasláno: 4. 3. 2011, 09:21:00
panterek:
„Samotné zobrazení čárového kódu je nutno ukládat ne na obrazovku, ale do souboru.“ Případně jde mít i skript na generování kódu, třeba barcode.php, který vrátí obrázek s hlavičkou image/png (případně co to bude za typ obrázku) No a pak stačí například <img src="barcode.php?code=123456789">
|
||
Časová prodleva: 13 let
|
0