Heim  >  Artikel  >  Backend-Entwicklung  >  Ausführliches Tutorial zum Generieren von Barcode-Bildern mit PHP

Ausführliches Tutorial zum Generieren von Barcode-Bildern mit PHP

巴扎黑
巴扎黑Original
2017-09-15 09:43:201400Durchsuche

Dieser Artikel enthält hauptsächlich relevante Informationen zu den detaillierten Beispielen für die PHP-Generierung von Barcode-Bildern. Ich hoffe, dass dieser Artikel allen helfen kann, die Hilfe benötigen.

PHP generiert Barcode-Bilder Beispiel

Aufgrund der Bedürfnisse des Benutzers habe ich PHP verwendet, um ein Barcode-Bild zu erstellen. Erstellen Sie eine Testdatei im Stammverzeichnis Ihres Projekt (Fügen Sie den folgenden Code direkt ein und führen Sie ihn aus, um einen Blick darauf zu werfen. Ich habe ihn auch von anderen kopiert. In einem tatsächlichen Projekt können Sie den folgenden Code in eine Funktion unter einer öffentlichen Klassendatei kapseln und ihn dann aufrufen.)


class testinfo{
  function UPCAbarcode($code) {
    $trans_code = $code;
    $lw = 2.2; $hi = 40;
    $Lencode = array('0001101','0011001','0010011','0111101','0100011',
        '0110001','0101111','0111011','0110111','0001011');
    $Rencode = array('1110010','1100110','1101100','1000010','1011100',
        '1001110','1010000','1000100','1001000','1110100');
    $ends = '101'; $center = '01010';
    /* Compute the EAN-13 Checksum digit */
    $ncode = '0'.$code;
    $even = 0; $odd = 0;
    for ($x=0;$x<12;$x++) {
      if ($x % 2) {
        $odd += $ncode[$x];
      } else { $even += $ncode[$x];
      }
    }
    $code.=(10 - (($odd * 3 + $even) % 10)) % 10;
    /* Create the bar encoding using a binary string */
    $bars=$ends;
    $bars.=$Lencode[$code[0]];
    
    for($x=1;$x<6;$x++) {
      $bars.=$Lencode[$code[$x]];
    }
    $bars.=$center;
    for($x=6;$x<12;$x++) {
      $bars.=$Rencode[$code[$x]];
    }
    $bars.=$ends;
    /* Generate the Barcode Image */
    $img = ImageCreate($lw*75+30,$hi-3);  // 95
    $fg = ImageColorAllocate($img, 0, 0, 0);
    $bg = ImageColorAllocate($img, 255, 255, 255);
    ImageFilledRectangle($img, 0, 0, $lw*75+30, $hi+30, $bg);
    $shift=10;
    for ($x=0;$x<strlen($bars);$x++) {
      if (($x<0) || ($x>=45 && $x<46) || ($x >=85)) {
        $sh=10;
      } else { $sh=0;
      }
      if ($bars[$x] == &#39;1&#39;) {
        $color = $fg;
      } else { $color = $bg;
      }
      ImageFilledRectangle($img, ($x*$lw)+15,5,($x+1)*$lw+14,$hi+5+$sh,$color);
    }
    /* Add the Human Readable Label */
    ImageString($img,4,5,$hi-5,$code[0],$fg);
    for ($x=0;$x<5;$x++) {
      ImageString($img,5,$lw*(13+$x*6)+15,$hi+5,$code[$x+1],$fg);
      ImageString($img,5,$lw*(53+$x*6)+15,$hi+5,$code[$x+6],$fg);
    }
    ImageString($img,4,$lw*95-7,$hi,$code[11],$fg);
    /* Output the Header and Content. */
    header("Content-Type: image/png");
    ImagePNG($img);
  }
//}
echo UPCAbarcode(&#39;201212070099&#39;);

Das obige ist der detaillierte Inhalt vonAusführliches Tutorial zum Generieren von Barcode-Bildern mit PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn