גענעראַטינג באַרקאָדע מיט PHP

פּראָגראַממינג PHP: ווי וועגן דזשענערייטינג דיין באַרקאָדע בילד צו ראַטעווען (אָדער נישט) דיסק? סימפּלי אַרייַן אַ סיקוואַנס פון דידזשאַץ פון דיין ברירה. זען די לייזונג אין PHP און איינער אין דזשאַוואַסקריפּט.

באַשייד 1 – PHP

דער קלאַס איז גאָר גרינג צו נוצן., קענען גלויבן! מיט בלויז צוויי שורות קאָד און איר וועט שוין האָבן דיין באַרקאָדע בילד אין GIF פֿאָרמאַט, דזשענערייטאַד פֿון אַ שטריקל פון סאַקווענטשאַל דידזשאַץ פון דיין ברירה. איר נאָך האָבן די אָפּציע צו ראַטעווען דעם בילד (באַרקאָדע) אין אַ טעקע אָדער אַרויסווייַזן גלייַך אין שריפט פּראָדוקציע.

barcode.php

1
2
3
4
<?PHP
    require_once('barcode.inc.php'); 
    נייַ barCodeGenrator("125689365472365458",1,"hello.gif"); 
?>

עקספּלאַינינג
אין דער ערשטער שורה מיר ימפּאָרטינג די טעקע. “barcode.inc.php”, וואָס איז דער סאָרט BarCodeGenrator קלאַס. אין די רגע שורה, מיר ינסטאַנטירן דעם קלאַס און געבן די נויטיק פּאַראַמעטערס צו די קאָנסטרוקטאָר אופֿן..

די פּאַראַמעטערס, ווי איר קען האָבן שוין באמערקט, אָנווייַזן ריספּעקטיוולי:
(1°) די דידזשאַץ איר ווילן צו נוצן די באַרקאָדע
(2°) די פאָרעם פון אַרויסווייַזן: 0 = רעזולטאַט גלייַך צו די סקריפּט פאַרשטעלן | 1 = היט די טעקע צו דיסק
(3°) דער טעקע נאָמען. איר קענען נוצן די אַבסאָלוט דרך נאכגעגאנגען דורך די נאָמען צו אָנווייַזן ווו די טעקע איז געראטעוועט.

די בילד ריזאַלטינג פון די קאָד אויבן איז דאָס:
hello.gif
hello

דערהייַנטיקן

ווייַטערדיק, דורך בעטן, איך האָב געמאכט אַ קליין ינקראַמאַנט אין דער אָריגינעל קאָד, אַדינג דריי נייַע פּאַראַמעטערס (אַפּשאַנאַל). איצט איר קענען שטעלן די באַרקאָדע WIDTH און HEIGHT און אויך זאָגן אויב איר ווילט אַרויסווייַזן (אָדער נישט) די באַרקאָדע נאַמבערינג (טעקסט).

נאָך פּאַראַמעטערס אָנווייַזן ריספּעקטיוולי:
(4°) די ברייט פון די באַר. בייַשפּיל: 190 בילדצעלן (נאָר אַרייַן די נומער).
(5°) די הייך פון די באַר. בייַשפּיל: 130 בילדצעלן (נאָר אַרייַן די נומער).
(6°) צי איר ווילן צו אַרויסווייַזן די קאָד נומער אויף די פירמע / בילד. אמת = עקסיב, און פאַלש = ניט.

אָבס: זיין אָפּגעהיט ניט צו שטעלן די ברייט און הייך צו קליין און ענדיקן די טייל פון די באַרקאָדע.

barcode2.php
1
2
3
4
<?PHP
    require_once('barcode.inc.php'); 
    נייַ barCodeGenrator('125689365472365458',0,'hello.gif', 190, 130, אמת);
?>

געטינג ווי דאָס:

ספקות

ווי עס אַרבעט אָדער באַרקאָדע?
ווי באַמערקונגען פֿאַר עטלעכע באַמערקונגען אויף דעם פּאָסטן, וואָס די שריפט טוט איז גער נומערן צו סלאַשעס. דעריבער, איר דאַרפֿן צו זאַמלען די געבעטן נומעריק סיקוואַנס און פאָרן עס צו די שריפט אַזוי אַז עס דזשענערייץ די באַרקאָדע קאַמפּאַטאַבאַל מיט די סטאַנדאַרט איר דאַרפֿן., אַזאַ ווי די EAT-13.

איידער סטייטינג אַז די לייענער קען נישט לייענען די באַרקאָדע, באַטראַכטן צוויי פּאַסאַבילאַטיז: (1) איר נוצן אַ ספּעציפיש לייענער פֿאַר אַ זיכער מוסטער, ווי האָמעבאַנק. אין דעם פאַל, סיידן איר האָבן פארזאמלט די נומער סיקוואַנס לויט די פארלאנגט מוסטער, עס וועט אפילו נישט אַרבעטן; (2) איר דזשענערייטינג אַ קראַפּט בילד (העלפט) פון די באַרקאָדע, מאכן דעם קאָד אַנרידאַבאַל. זען ווי צו סאָלווע דעם אין דעם צוגאַנג איך גענומען אונטן. דער פאַקט איז אַז די באַרקאָדע איז בישליימעס ליינעוודיק, ווי דער קאָלעגע דערמאנט: “איך האָבן די Honeywell לייענער און עס לייענט אָן פראבלעמען, זעלביקער קאָודז מיט בלויז 2 נומערן, דאָס איז, איר קענען נוצן ווי פילע נומערן ווי איר ווילט אין דעם קאָד“.

זען באַמערקונגען:
– ניקאָלאַס אַלוועס 26 יאַנואַר 2012 ביי 10:53 #
– קאַרלאָס 4 דעצעמבער 2012 ביי 11:20 #

קענען אַרויסווייַזן מער ווי איין באַרקאָדע, אין אנדערע ווערטער, באַרקאָדע שלייף?
Sim. אין דעם פאַל, היט דעם בילד (באַרקאָדע) דיסק, באַשטעטיקן די 2 פּאַראַמעטער צו 1.

1
2
3
4
5
6
7
8
<?PHP
require_once('barcode.inc.php'); 
פֿאַר ($איך = 0; $איך < 10; $איך++) {
  $קאָדע_נומער = ראַנד(1000000000, 9999999999);
  נייַ barCodeGenrator($קאָדע_נומער,1,'באַרקאָדע_'.$קאָדע_נומער.'.גיף', 190, 130, אמת);
  ווידערקאָל '<img src="barcode_'.$קאָדע_נומער.'.גיף" />'; 
}
?>

פארוואס די באַרקאָדע איז שנייַדן און אַנרידאַבאַל?
ווי געזאָגט, דעם אַקערז, ווייַל איר מיסטאָמע זענען ניצן אַ זייער קליין ברייט אָדער הייך אין באַציונג צו די ידעאַל פּלאַץ און איר דאַרפֿן פֿאַר די סאָרט צו דזשענערייט די באַרקאָדע. וואָס איר קענען פּרובירן צו טאָן אַזוי אַז דאָס קען נישט פּאַסירן איז צו נוצן אַ גימיק: האַלטן טעסטינג די ברייט ביז איר פאַרשטיין אַז איר טאָן ניט שנייַדן די באַרקאָדע. טאָן די זעלבע פֿאַר הייך, צו נישט שנייַדן אַוועק די נאַמבערינג אַרויסווייַזן, אויב די לעצטע פּאַראַמעטער איז אמת. געטאן דעם, פאַרמינערן די גרייס פון דעם בילד דזשענערייטאַד דורך די WIDTH אַטריביוט פון די IMG קוויטל, אפילו סטרויערן צו די גרייס איר ווילט. אַזוי די באַרקאָדע וועט זיין קליין און ונקוט!

1
2
3
4
5
<?PHP
  require_once('barcode.inc.php'); 
  נייַ barCodeGenrator('125689365472365458',1,'barcode.gif', 180, 42, אמת);
  ווידערקאָל '<img src="barcode.gif" width="150" />'; 
?>

באַרקאָדע דזשענערייץ אותיות (אותיות)?
Sim. געראַ, ווי טעסטעד און געזען אין די פיגורע אונטן. כאָטש, איך קען נישט גאַראַנטירן אַז די לייענער רעקאַגנייזיז אותיות.

באַשייד 2 – דזשאַוואַסקריפּט

איר קענען אויך דזשענערייט באַרקאָדע מיט דזשאַוואַסקריפּט. אָ bytescoutbarcode128.js איז אַ שריפט טויגעוודיק פון דזשענערייטינג די באַרקאָדע און קאַנווערטינג עס אין אַ בילד ניצן קאָדירונג “base64”; לויפט גאָר אויף דער קליענט זייַט (קיין בלעטערער), קיין סערווער-זייַט קאָד. די פול שריפט קענען זיין דאַונלאָודיד פֿון די וועבזייטל פון די דעוועלאָפּער. הטטפּ://www.bytescout.com/.

פֿאַר אַ בייַשפּיל, זען ווייטער. איך באשאפן אַ פֿונקציע “סאַוועבאַרקאָדע()” אין פאַל איר ווילן צו אָפּלאָדירן די בילד און שפּאָרן עס אויף דיסק. דאָ איך וועט האָבן צו ראַטעווען דעם בילד מאַניואַלי צו דיסק, אין אנדערע ווערטער, דורך געבן אַ קליק דעם קנעפּל “צו ראַטעווען”, די באַזע 64 קאָד פון די בילד (באַרקאָדע) איז געשיקט דורך פּאָסטן צו אַ פּשוט שריפט איך גערופן “barcode.php”, וואָס פּערפאָרמז די באַהאַנדלונג און סאַוועס די בילד צו דיסק. אָבער איר קען וועלן צו טאָן דאָס, אויטאָמאַטיש און טראַנספּעראַנטלי (שטיל), אַזוי אַז ווען דזשענערייטינג די באַרקאָדע בילד, די געשעעניש אויך שפּאָרן צו דיסק, ניט דאַרפֿן צו גיט קיין קנעפּל. פֿאַר דעם, איר מוזן נוצן Ajax, אָבער דעם ימפּלאַמענטיישאַן איך וועט נישט באַווייַזן פֿאַר איצט., אקעי?

barcode.html

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
<!דאָקטיפּע HTML>
<HTML>
  <קאָפּ>
    <טיטל>128</טיטל>
    <meta http-עקוויוו="Content-Type" אינהאַלט="text/html; טשאַרסעט = UTF-8" />
    <שריפט טיפּ="text/javascript" src="bytescoutbarcode128_1.00.07.js"></שריפט>  
  </קאָפּ>
  <גוף אָנלאָאַד="updateBarcode()">
    <פאָרעם קאַמף="">
      C&אָאַקוטע;איך זאָגן באַרס:
      <אַרייַנשרייַב שייַן="barcodeValue" טיפּ="text" נאָמען="value" ווערט="abcd123456" />
      <ינפּוט טיפּ="button" ווערט="Gerar" אָנקליק="updateBarcode()" />
    </פאָרעם>
    <פּ>
      C&אָאַקוטע;איך זאָגן פון באַרס קאָנווערטעד צו בילד:<br />
      <ימג שייַן="barcodeImage" סטיל="border: האַרט 1 פּקס שוואַרץ;"/>
    </פּ>
    <שריפט טיפּ="text/javascript">
      פונקציאָנירן updateBarcode() {
	איז געווען באַרקאָדע = נייַ bytescoutbarcode128();
        איז געווען ווערט = דאָקומענט.getElementById("barcodeValue").ווערט;
        באַרקאָדע.וואַלועסעט(ווערט);
        באַרקאָדע.סעטמאַרגינס(5, 5, 5, 5);
        באַרקאָדע.סעטבאַרווידטה(2);
        איז געווען ברייט = באַרקאָדע.געטמינווידטה();
        באַרקאָדע.סעטסיזע(ברייט, 100);
        איז געווען barcodeImage = דאָקומענט.getElementById('barcodeImage');
   	barcodeImage.src = באַרקאָדע.exportToBase64(ברייט, 100, 0);
      }
 
      פונקציאָנירן סאַוועבאַרקאָדע() {
        דאָקומענט.frmSaveBarcode.באַרקאָדעבאַסע 64.ווערט=דאָקומענט.getElementById('barcodeImage').src;
        דאָקומענט.frmSaveBarcode.פאָרלייגן();
      }
    </שריפט>
    <פאָרעם נאָמען="frmSaveBarcode" קאַמף="barcode.php" מעטאָד="post">
      <אַרייַנשרייַב שייַן="barcodeBase64" נאָמען="barcodeBase64" טיפּ="hidden" ווערט="1231" />
      <ינפּוט טיפּ="button" ווערט="Salvar" אָנקליק="saveBarcode()" />
    </פאָרעם>    
  </גוף>
</HTML>

Note que apenas fiz uso do scriptbytescoutbarcode128_1.00.07.js“, que você pode pegar em הטטפּ://www.bytescout.com/. Não tem mistério!

איצט, vamos ver o arquivo barcode.php que receberá a códificação base64 da imagem (באַרקאָדע) para salvá-la em disco:

barcode.php

1
2
3
4
5
6
<?PHP
  $באַרקאָדעבאַסע 64 =  סטריפּ_טאַגס($_פּאָסט['barcodeBase64']);
  list($טיפּ, $image) = explode(',', $באַרקאָדעבאַסע 64);
  file_put_contents('barcode.png', base64_decode($image));
  ווידערקאָל 'Imagem salva em disco!';
?>
גאַנץ אַקסעססעס: 349664

119 באריכטן “גענעראַטינג באַרקאָדע מיט PHP

  1. gilson האט געזאגט:

    אָפּאַ.
    Obrigado por responder.
    entao, eu programo em php e tenho tudo funcionando.
    so to precisando desta classe ae que nao encontrei p baixar.
    tem como vc me mandar a classe , barcode.inc.php

    אַ דאַנק.

  2. Welisson Dias האט געזאגט:

    זייער פייַן און פּשוט באָכער, אָבער ווען איך אראפקאפיע, נישט אריינגערעכנט
    אַ סאָרט באַרקאָדע.ינק.פפּ, איר קענט שיקן מיר דורך E- בריוו?

    אַ דאַנק.

  3. Welisson Dias האט געזאגט:

    איצט עס איז גוט, טעסטעד און באוויליקט.

    אַ קשיא, האָבן איר שוין טעסטעד עס מיט אַ באַרקאָדע לייענער?

    האַלדזן!

    • וואס טוט זיך… קוקט, איך קען נישט פּרובירן עס מיט אַ לייענער, אָבער איך גלויבן עס אַרבעט ווי לאַנג ווי עס זענען נישט די לייענער פון די Homebank טיפּ, ווייַל די שוין האָבן דיפיינד טריינינג סטאַנדאַרדס.… אויב איר אָדער עמעצער אַנדערש נוצן די לייענער, ביטע באַמערקן ווי עס איז געווען… גערעדט, ה +

      • קאַרלאָס האט געזאגט:

        איך טעסטעד מיט די האַנט בעט (ער האט אויך שטיצן) marca Honeywell, געארבעט בישליימעס.

  4. Quem estiver com problemas do tipo de não ter permissão para escrever arquivos nas pastas do servidor ou problemas com cabeçalho do arquivo uma solução é colocar o arquivo gerador de código de barras em uma tag como vou mostrar no exemplo abaixo, lembrando que será necessário fazer modificações na classe.

    no arquivo barcode.inc.php adicione as seguintes linhas.

    $code = $_GET[“code”];
    נייַ באַרקאָדעגענער($code, 0, “teste.gif”);

    איצט נאָר אַרייַן די קוויטל אונטן אין די צונעמען אָרט ווו איר ווילן צו אַרויסווייַזן די באַרקאָדע…

  5. העלא, דאַנקען דיר אַזוי פיל פֿאַר ייַנטיילונג און איך זאָגן עס וועט זיין אַ גרויס נוצן. איצט לאָזן ס צווייפל… רס עס איז מעגלעך צו דזשענערייט באַרקאָדע פון ​​דעם טיפּ 39 מיט דעם קלאַס ?

    • איך טאָן ניט וויסן ווי צו אינפֿאָרמאַציע, פעליפּע… דער ציל פון דער קלאַס איז צו בייַטן די נומער אין די קאָראַספּאַנדינג באַרקאָדע.. צו טרעפן זיכער סטאַנדאַרדס, דערנאָך איר דאַרפֿן צו זען די קרייטיריאַ מיט וואָס זיי זענען געשאפן. גערעדט…

  6. עווערטאָן האט געזאגט:

    העלא. עס געארבעט אויס, אָבער ווי טאָן איך אַרייַננעמען אין מיין שריפט? ווייַל ווען וועט איך טאָן, גיט די פאלגענדע טעות “בילד כּולל ערראָרס און קענען ניט זיין געוויזן”.

    וואָלט איר העלפֿן מיר?

  7. סעסיליאַ האט געזאגט:

    דעמאָלט, איך געפרוווט צו לייגן דעם קאָד צו מיין שריפט, אָבער עס ארויס עטלעכע מאָדנע אותיות.
    אויב איך שטעלן די 2 פּאַראַמעטער צו “1”, עס קען נישט אפילו ווייַזן די אותיות און פיל ווייניקער סאַוועס די בילד…

    האט ווער עס יז קיין פֿירלייגן פֿאַר וואָס צו טאָן??

  8. גוט, דעם גענעראַטאָר נאָר קאַנווערץ די נומערן צו באַרס, אַזוי פאָרמינג אַ באַרקאָדע.
    אבער צו נאָכפאָלגן די מוסטער, איך וואָלט נאָר האָבן צו דרוקן 13 דידזשאַץ (נומערן), ימערדזשינג די EAT-13 פאָרעם.

    רעגאַרדלעסס פון די נומער פון דידזשאַץ, אָדער צי עס איז נאָך די מוסטער אָדער נישט, acredito que qualquer leitora vai ler. דעמאָלט, sem problemas.

    Eu percebi que esse script gera uma imagem muito grande, com muito espaço em branco. דעמאָלט, editei o arquivo “barcode.inc.php”, na linha 20, trocando a largura da imagem gerada.

    Linha 20:
    $img = imagecreate(LARGURA, ALTURA);

    Ei coloquei a largura 145 aqui, se for usar padrão EAT-13.

    Mais informações sobre o padrão EAT-13: http://pt.wikipedia.org/wiki/C%C3%B3digo_de_barras

    Até+

    • דאַנק… aproveitei e fiz uma pequena adaptação no código original, de forma que possa informar a largura e altura já na chamada da classe (método construtor). Agora também é possível exibir a numeração, abaixo do código de barras: נייַ באַרקאָדעגענער(‘125689365472365458′,0,’hello.gif’, 190, 130, אמת); Qualquer coisa dá uma lida novamente no Post que está melhor explicado, פאַלאָווו.

    • Fiz uma atualização. Favor ler novamente o Post acima e baixar o novo código. Basicamente acrescentei dois parâmetros no final da chamada do método construtor, ficando assim: נייַ באַרקאָדעגענער($קאָדע_נומער,0,’hello.gif’, 190, 130, אמת); אָ “אמת” é justamente para exibir o número em baixo do código de barras. Caso não queira, deixefalseou omita o parâmetro.

  9. Afrânio האט געזאגט:

    Como faço para aumentar o código de tamanho, pois queria poder usar esse modelo aqui. A classe funciona perfeitamente, mas gera uma imagem muito pequena. Será que tem algum jeito de aumentar a saída desse código? tanto vertical como horizontal ?

    • oi, este script é para ser usado por desenvolvedores, pois é preciso conhecer um pouco da linguagem de programação PHP e seu ambiente de funcionamento (servidor Web). סייַ ווי סייַ, o número do código de barras deve ser colocado no primeiro parâmetro do método construtor. Supondo que o número seja 125689365472365458, então fica assim: נייַ באַרקאָדעגענער(‘125689365472365458′,1,’hello.gif’, 190, 130, אמת); Isto irá gerar uma imagem chamada “hello.gif”, com tamanho de 190 x 130 בילדצעלן, formada pelo código de barras que represente a numeração informada (125689365472365458), salvo no disco local (HD).

      • Rogerio Alan Dobler האט געזאגט:

        Entendo pouco de phppoderia explicar isso melhor? como insiro isso na terceira classe? onde é essa classe? אַ דאַנק

      • Olá Rogerio. Não é terceira classe, e sim terceiro parâmetro do construtor, אין דעם פאַל, dado pelo nome do arquivo (ou caminho) “hello.gif”. Para usar este código de barras é preciso saber programar em PHP. Para funcionar, você deve ter um servidor Web rodando (Apache + PHP). Aplicativos como Wampserver instalam isto para você. נאָך, basta colocar os arquivos/classes que você baixou neste Post (barcode.inc.php e index.php) no diretório “C:\wamp\www\barcode” (crie a pasta “באַרקאָדע”) e fazer a chamada pelo navegador http://localhost/barcode. Altere os dados de exemplo contido no index.php de forma que o código de barras possa ser gerado de acordo com o que você deseja. פאַלאָווו…

  10. Aléx האט געזאגט:

    העלא טיילער, ótimo código para gerar código de barras. Porem, encontrei um problema, alterei o tamanho do código de barras para 110 x 42 px, ele gera normal, אָבער, não é detectado no leitor de código de barras, no tamnho normal é lido sem problemas, uma coisa que ´percebi, foi que se eu deixar para exibir os números(TRUE), ele corta boa parte dos números. Tem alguma coisa a fazer para isso?
    Valew!

    • Oi Aléx, conforme dito, דעם אַקערז, ווייַל איר מיסטאָמע זענען ניצן אַ זייער קליין ברייט אָדער הייך אין באַציונג צו די ידעאַל פּלאַץ און איר דאַרפֿן פֿאַר די סאָרט צו דזשענערייט די באַרקאָדע. וואָס איר קענען פּרובירן צו טאָן אַזוי אַז דאָס קען נישט פּאַסירן איז צו נוצן אַ גימיק: האַלטן טעסטינג די ברייט ביז איר פאַרשטיין אַז איר טאָן ניט שנייַדן די באַרקאָדע. טאָן די זעלבע פֿאַר הייך, צו נישט שנייַדן אַוועק די נאַמבערינג אַרויסווייַזן, אויב די לעצטע פּאַראַמעטער איז אמת. געטאן דעם, פאַרמינערן די גרייס פון דעם בילד דזשענערייטאַד דורך די WIDTH אַטריביוט פון די IMG קוויטל, אפילו סטרויערן צו די גרייס איר ווילט. אַזוי די באַרקאָדע וועט זיין קליין און ונקוט!

      1
      2
      3
      4
      5
      
      <?PHP
        require_once('barcode.inc.php'); 
        נייַ barCodeGenrator('125689365472365458',1,'barcode.gif', 180, 42, אמת);
        ווידערקאָל '<img src="barcode.gif" width="150" />'; 
      ?>
  11. Fábio Aguiar האט געזאגט:

    אָפּאַ, טיילער, desculpa, achei que esse links estava com o arquivo desatualizado.
    Uma outra dúvida que surgiu agora que talvez você possa me ajudar é que utilizo CodeIgniter como fremwork, você sabe como conseguiria utilizar sua classe mesmo utilizando o codeigniter?

    • Oi Fábiopara usar com o codeigniter teria que fazer algumas pequenas modificações:
      (1) mude o nome do arquivo de barcode.inc.php para barCodeGenrator.php, de modo que fique com o mesmo nome da classe;
      (2) coloque barCodeGenrator.php dentro do diretório application\libraries;
      (3) altere o construtor de barCodeGenrator para que ao invés de receber aquele monte de parâmetros, receba apenas um array com os valores correspondentes e, internamente, faça um extract para que o parchave => valordo array se converta em variáveis, como se fossem os parâmetros originais, assim:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      
      // MUDE ISTO
      פונקציאָנירן __construct($ווערט,$into=1, $filename = 'barcode.gif', $width_bar=300, $height_bar=65, $show_codebar=false) {
       // código original
       }
       
      // PARA ISTO
      פונקציאָנירן __construct($params) {
          extract($params);
          // codigo original
      }

      גוט, feito isto, basta chamar a classe dentro de uma função qualquer do seu Controllers, assim:

      1
      2
      3
      4
      5
      6
      7
      8
      9
      
      עפנטלעך פונקציאָנירן index()  {  
          $params = array('value' => '125689365472365458',
                                         'into' => 0,
                                         'filename' => 'barcode.gif', 
                                         'width_bar' => 300,
                                         'height_bar' => 65,
                                         'show_codebar' => אמת);                    
          $this->מאַסע->library('barCodeGenrator', $params);
      }

      קלאָר, aí você passa os parâmetros conforme sua necessidadeNote que $params é uma array cujos valores equivalem aos parâmetros do construtor originalé isso, גערעדט!

  12. Nickolas Menezes האט געזאגט:

    העלא, estou querendo incluir código de barras em uma série de carteirinhas geradas em php, mas não consigo fazer com que gerem mais de um código de barras por vez. Mesmo usando um while no código de download não deu certo, gerar mais de uma. como faço para gerar vários codigos numa mesma tela? אַ דאַנק.

    • oi, segue um exemplo… גערעדט!

      Exibir mais de um código de barras | Loop de código de barras
      אין דעם פאַל, היט דעם בילד (באַרקאָדע) דיסק, באַשטעטיקן די 2 פּאַראַמעטער צו 1.

      1
      2
      3
      4
      5
      6
      
        require_once('barcode.inc.php'); 
        פֿאַר ($איך = 0; $איך < 10; $איך++) {
          $קאָדע_נומער = ראַנד(1000000000, 9999999999);
          נייַ barCodeGenrator($קאָדע_נומער,1,'באַרקאָדע_'.$קאָדע_נומער.'.גיף', 190, 130, אמת);
          ווידערקאָל '<img src="barcode_'.$קאָדע_נומער.'.גיף" />'; 
        }
  13. Andre Dias האט געזאגט:

    Bom dia Taylor , obrigado pela ajuda esta sendo de grande valia
    Tenho algumas perguntas , vou tentar resumir

    A Etiqueta gerada é padrão EAN-13, haveria a possibilidade de se criar uma etiqueta com menos numeros ou atraves de uma sequencia de zeros ?
    עקס:0000000456456(13 דידזשאַץ)

    Outra , gostaria de fazer uma select de concatenar o numero do registro + a data de produção e gerar o codigo de barras apartir dessa select , tem como fazer isso ?
    עקס: 123456121107(13 דידזשאַץ)
    Obrigado mais uma vez

    • קאַרלאָס, acabei de testar o código e funciona. O primeiro parâmetro ($קאָדע_נומער) representa o número do código de barras e deve ser trocado. בייַשפּיל:

      1
      2
      3
      4
      5
      
      <?PHP
          require_once('barcode.inc.php'); 
          $קאָדע_נומער = '112233445566778899';
          נייַ barCodeGenrator($קאָדע_נומער,0,'hello.gif', 190, 130, אמת);
      ?>

      גערעדט!

      • קאַרלאָס האט געזאגט:

        Descobri que gerando um novo código e abrindo uma nova páginaprintandoa etiqueta, sempre é impresso a etiqueta anterior, tendo que pressionar F5 para atualizar, aí sim aparece a última etiqueta gerada.
        Contornei o problema gerando a etiqueta no momento do cadastro do produtos e imprimindo depois.
        No meu caso pedi para imprimir o codigo com data e hora (YmdHis) e ficou perfeito.
        איך האָבן די Honeywell לייענער און עס לייענט אָן פראבלעמען, זעלביקער קאָודז מיט בלויז 2 נומערן, דאָס איז, איר קענען נוצן ווי פילע נומערן ווי איר ווילט אין דעם קאָד.
        Só não consegui jogar os códigos gerados diretamente numa pasta específica no servidor, se alguém souber dá a dica aí.

  14. Ricardo האט געזאגט:

    גוט נאָכמיטאָג טיילער, como faço para incluir essa imagem em um registro de banco de dados, e efetuar o mesm procedimento para diversos registros filtrados para impressão com FPDF.
    Grato pela ajuda.

  15. Paulo B האט געזאגט:

    Tem como imprimir automaticamente este código de barra com seu respectivo número?

    אין אנדערע ווערטער:
    1. Cadastra o número.
    2. Confirma (aperta botão)
    3. Imprime (automaticamente após a confirmação) o código de barras com número.

    • טיילער לאָפּעס האט געזאגט:

      Sim, mas é preciso escrever o script para issotem que saber um pouco de php e html, ou pedir algum programador para desenvolver pra você, do jeito que precisa.

  16. Fernando Goya האט געזאגט:

    Cara muito bom isso!!! Realmente simples de usar.

    Porem, para meu uso, estou com um problema:

    Eu tenho uma sequencia de 14 דידזשאַץ, לעמאָשל: ASO85S1G96RE3G7

    Ele gera isso e ate mostra na tela. Mas quando o leitor Le o codigo, ele converte tudo para numero. E eu preciso que apareca exatamente o codigo que foi gerado pois sera feito uma consulta no banco de dados.

    Valeu a ajuda!!!

    • Eu entendo,Fernando. Mas não sei informar se é um problema do script (באַרקאָדע) ou do seu leitor, que não reconhece caracteres. Tem um colega que comentou neste Post que usa o leitor Honeywell e ele lê sem problemas, mas não sei dizer se ele usou letras, como você quer. Eu sei que este script gera letras e números, conforme demonstrei e publiquei no comentário do dia 17 מייַ 201317 מייַ 2013. Eu não tenho um leitor para testar issomas caso você encontre a solução e possa compartilhar aqui, seria muito bom. גערעדט!

  17. Flavio האט געזאגט:

    אָלאַ טיילער, super dez o código.

    tenho uma duvida, estou fazendo um etiqueta com o código dos correios, gera normal mas o leitor não consegue ler as letra ele le 00 no lugar das letras

    SS123456789BR

    0012345678900

    você saberia o que pode ser ?

      • Flavio האט געזאגט:

        אקעי, valeuu Taylor,

        pesquisando na net entendi o que estou precisando é do formato code128-B e esse código não se enquadra nele.

        encontrei o script no post abaixo e gera certinho porem não sei salvar em disco para dar o loop na imagem . não manjo de javascript

        se alguém puder me ajuda.

        valeu Taylor pela atenção

  18. Flavio האט געזאגט:

    ola Taylor, já tinha enviado uma duvida para você mas não tive resposta .

    estou com esse problemas a dias e é na empresa que trabalho e precisamos do codigo de barras validado pelos correios.

    encontrei esse script na net vai certinho mas eu queria salvar em disco para replicar com o loop do PHP

    parecido com a sua adaptação do barcode

    Taylor preciso muito da sua ajuda.

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    
    <!-- bytescoutbarcode128.js script containing bytescoutbarcode128 קלאַס to generate barcode image -->
    <אַרייַנשרייַב שייַן="barcodeValue" טיפּ="hidden" נאָמען="value" ווערט="" />
    פונקציאָנירן updateBarcode() {
      איז געווען באַרקאָדע = נייַ bytescoutbarcode128();
      איז געווען ווערט = דאָקומענט.getElementById("barcodeValue").ווערט; 
      באַרקאָדע.וואַלועסעט(ווערט);
      באַרקאָדע.סעטמאַרגינס(5, 5, 5, 5);
      באַרקאָדע.סעטבאַרווידטה(2);
      איז געווען ברייט = באַרקאָדע.געטמינווידטה();
      באַרקאָדע.סעטסיזע(ברייט, 100);
      איז געווען barcodeImage = דאָקומענט.getElementById('barcodeImage');
      איז געווען tets;
      barcodeImage.src = באַרקאָדע.exportToBase64(ברייט, 100, 0);
     }
      • Flavio האט געזאגט:

        אקעי, vou fazer os teste e retorno para confirmar, por enquanto valeuu
        טיילער

      • Flavio האט געזאגט:

        Olá Pessoal .

        Taylor adicionei a adaptação que você fez no meu app de etiquetas e funcionou blz,

        usei o leitor de código de barras SYNBHAL acho que é assim que escreve esse nome simbol, enfim

        code128-B

        valeuuu pela ajuda Taylor,

  19. William האט געזאגט:

    Oi Taylor,
    Será que seu código gerar um código de barras(imagem) que contenha o NOME DE PESSOA + Número de Matricula?
    Caso Contrario você ou alguem saberia me indicar algo nesse sentido.

    אַ דאַנק

  20. Anderson האט געזאגט:

    אָלאַ , Taylor Lopes tudo bem?

    Seus Exemplos funciona muito bem, parabens!!

    Sabe me dizer se tem alguma função que mantem o tamanho do cod de barras independente da quantidade de caracteres que eu informe?

    אַ דאַנק

    • Oi Anderson. O quarto e quinto parâmetro da função barCodeGenrator() é justamente para definir o tamanho (largura e altura). Defina a largura para um tamanho mínimo que não corte o código de barras quando a imagem for gerada. נאָך, você pode controlar o tamanho (meno ou maior) utilizando o atributo “ברייט” da tagimg”. O post e os comentários explicam isso melhor; olhe com mais calma. גערעדט!

    • André, obrigado por compartilhar a sua experiência. O código foi testado e funciona, como se vê nos comentários dos colegas. דעריבער, sugiro certificar-se de que você não esteja cortando o código de barras ou se talvez não esteja gerando um código que seu leitor não seja capaz de ler. Muitos leitores só leem em um determinado padrão, que você deve construir/montar antes de repassar ao script.

  21. Jorge האט געזאגט:

    העלא טיילער,
    estou desenvolvendo a DANFE da NFe e seu exemplo foi muito útil, porém não sei como gravar no PDF. O comando echo mostra certo na tela.
    Uso este comando para gravar na Danfe $pdf->Cell(12.75,2.54,variavel,1,0,’C’);
    Como armazenar a representação grafica em variavel ou como embutir o conteúdo de “ווידערקאָל” neste comando ?
    Agradeço muito se puder dar esta dica, pois não encontro a lógica.

  22. פרייַנד,gostaria de saber como e possível criar uma classe automática de envio de código de barras para celular,pois estou trabalhando em uma empresa(ao qual quero cria-la) de venda de ingresso e gostaria de inserir uma classe automática via celular….
    עקס:Um cliente compra um ingresso,e escolhe a opção de receber um Voucher via e-mail ou via cel,e gera o codigo.

    Se puder me ajudar agradeço

  23. Reginaldo האט געזאגט:

    העלא, não sei se você conhece o Virtuemart, acredito que sim. Nele eu tenho oNumero do Pedidoquando o cliente faz a compra e o mesmo recebe os detalhes da compra por email, o que eu gostaria é de colocar esse numero do pedido também em código de barras, poderia me dizer se é possível com esse código e me ajudar a entender como trabalhar com ele dessa forma.

      • גוט נאָכמיטאָג!

        פרייַנד,

        Estou utilizando esta classe para gerar o código de barras de um boleto bancário.
        Estou exibindo os números juntamente com as barras.
        Gostaria de saber como personalizar o tamanho da fonte da exibição dos números. Estão exibindo muito grandes.

        Abs,
        Lásaro

  24. העלא טיילער. muito bom post. fiz o cobebar como a opção um com o php.

    mas to com o seguinte dilema.

    se o código de barra é grande tipo umas 25 caracteres . a tela come o final. se faço o código pequeno tipo uns 7 caracteres. sobra tela brando a direita.

    tentei assim.

    mas nao obtive êxito em colcoar a tela brando no tamanho do código de barra. isso. é chato pois na loja tenho produtos com diferentes tamanhos de code de barras.

  25. Chrystian האט געזאגט:

    העלא טיילער.
    Estive verificando sua implementação em PHp e parece-me que ela não funciona com letras.
    As mesmas ficam zeradas na leitura do código de barras.
    Já testei em vários leitores que estão habilitados para leitura de letras e em nenhum deles funciona.
    Sei que você já respondeu esta pergunta, mas acho que realmente há um problema na geração das barras quando enviado letras.

  26. Wanderley B. Silva האט געזאגט:

    אַ גוטנ מאָרגן , alguem poderia me ajudar fiz conforme o indicado mas da a seguinte tela de erro:

    Warning: Cannot modify header informationheaders already sent by (output started at /home/wdaluminios/www/encontro/conectardb.php:10) in /home/wdaluminios/www/encontro/barcode.inc.php on line 109 GIF87a¾‚¡ÿÿÿ,¾‚þŒ©Ëí£œ´Ú‹³

    כאַגז
    Wanderley

  27. טיילער, tudo bem?
    Estou usando sua biblioteca, mas esta aparecendo um erro, e já apanhei muito e não consigo resolver. Queria saber se pode me ajudar.?
    Estou usando a biblioteca: barcode.inc.php

    /**
      @author: Raj Trivedi (ינדיאַ), 2009-10-14 
      @modify: טיילער לאָפּעס (Brazil), 2012-04-06
    */

    E para Gerar o código estou usando o seguinte código:

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    
    $שייַן=$_פּאָסט['id'];
    include("conexao.php");
    $סקל="select*from medtronic where id='$שייַן'";
    $execbanco=mysqli_query($conexao,$סקל);
    $דאַטע=mysqli_fetch_array($execbanco);
     
    <pre lang="php" ליניע="1">
    ווידערקאָל $דאַטע[&#039;email&#039;].&quot;";
    require_once('barcode.inc.php'); 
    $קאָדע_נומער = '123456'.$שייַן;
    #נייַ באַרקאָדעגענער($קאָדע_נומער,0,'hello.gif');
    date_default_timezone_set('America/Sao_Paulo');
    $tempo = date('His');
    $n_arquivo="bar_$tempo.gif";
    נייַ barCodeGenrator($קאָדע_נומער,1,"cod_bar/$n_arquivo", 90, 30, false);
    ווידערקאָל"";
    1
    
    פענצטער.דרוקן();

    אין קורצן. Não sei se estou fazendo certo.
    Eu preciso gerar um código de barras, que fique vinculado ao cadastro, de preferencia com o id da pessoa no banco de dados. E preciso que o mesmo dê leitura no leitor de códigos de barras, aqueles tipo laser vermelho de hipermercado.

    Mas com este código esta aparecendo o seguinte erro:

    Fatal error: Call to undefined function imagecreate() in C:\Apache24\htdocs\medtronic\barcode.inc.php on line 30

    a linha 30, é a linha que fecho o código php (este código abaixo)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    
                            ווידערקאָל $דאַטע[&#039;email&#039;].&quot;";
                            require_once('barcode.inc.php'); 
                            $קאָדע_נומער = '123456'.$שייַן;
                            #נייַ באַרקאָדעגענער($קאָדע_נומער,0,'hello.gif');
                            date_default_timezone_set('America/Sao_Paulo');
                            $tempo = date('His');
                            $n_arquivo="bar_$tempo.gif";
                            נייַ barCodeGenrator($קאָדע_נומער,1,"cod_bar/$n_arquivo", 90, 30, false);
                            ווידערקאָל"";
    LINHA 30

    Consegue me ajudar?

    se puxar somente o “שייַן” do cadastro e gerar o código já esta ótimo. Ai eu mudo aqui e coloco para is id terem no mínimo 6 dígitos.

    Obrigado pela ajuda!

    • Oi Alexandre,

      Tente rodar um código simples, como este:

      1
      2
      3
      4
      5
      
      <?PHP
      require_once('barcode.inc.php'); 
      $קאָדע_נומער = '125689365472365458';
      נייַ barCodeGenrator($קאָדע_נומער,0,'hello.gif', 190, 130, אמת);
      ?>

      Caso não apareça o código de barras, veja se não faltou você habilitar a biblioteca GD no seu php.ini. Baste tirar o “;” פון “;extension=php_gd2.dll”.

      Acabei de testar o script do código de barras e está funcionando.

      כאַגז!

  28. José Vieira האט געזאגט:

    גוט נאָכמיטאָג:
    Script muito bom. אָבער (e no meu caso) o meu leitor teima em não ler o código de barras- penso que seja uma questão de configuração do leitor-, porque u consigo ler o código através do telemóvel. O pior é o “0” que aparece no inicio.
    כאַגז

  29. Higor Ferreira האט געזאגט:

    העלא, primeiramente, muito com o post. Estou usando o php7 e tentei rodar este script em um servidor local. Recebi a seguinte mensagem de erroCall to undefined function imagecreate()”. Já incluí a extensão php_gd2.dll e a mensagem persiste. Sabe me dizer se esta função caiu em desuso no php7?

  30. evandro aguiar האט געזאגט:

    boa tarde,

    fiz uma aplicação com esse gerador de código, para número de CPF, ele gera tudo certinho, porém quando coloco pra ler, o leitor coloca umzerona frente dos números do código.

    sabe me informar o que pode estar acontecendo?

    obrigado desde já.

    • Evandro, boa tarde. קוק, se o código está sendo gerado corretamente (com os números preestabelecidos), provavelmente seja alguma configuração ou o padrão do seu leitor. Tente ver no manual técnico do leitor se existe algum tipo de pré-formatação que ele faz no automático, ou algum dígito verificador que ele está aplicando. Certifique-se que a string que você está passando no código está correta. Se você olhar nos comentários, vai ver que teve gente falando que o leitor leu certinho. Qualquer coisa, posta aí sua solução. דאַנק!

  31. מאַרלאָ רויז האט געזאגט:

    אָלאַ, ווען וועג, דער טעות אַז $ img = ימאַגעקרעאַטע($ווידטה_באַר_מאַקס,$העיגהט_באַר_מאַקס); עס איז ניט אַ Defined פֿונקציע, מיטטיילן מיר אָדער וויסן פּק? אַ דאַנק.

  32. LUIS MIGUEL TONELLI MARTINS האט געזאגט:

    EM primeiro lugar muito obrigado.

    Para que funcione em bancos, como sicredi, bradesco, banco do brasil, caixa etc seque como se deve chamar o código

    נייַ באַרקאָדעגענער($codigo_barras,1,”nome_arquivo.gif”, 434.645669291, 56.692913386, false);

    depois é só criar um img com o nome do arquivo tipo

  33. Smith האט געזאגט:

    Sobre os relatos do número 0 no inicio do código realmente acontece e não é um problema do leitor de código de barra.

    Se o código for igual ou menor que 5 números sai uma zero no início do código, se não o código sai corretamente, como não sabia resolver esse problema eu reestruturei meus códigos para 6 dígitos.

לאָזן אַ ענטפֿערן

אייער בליצפּאָסט אַדרעס וועט ניט זיין ארויס. Required fields זענען אנגעצייכנט מיט *