ホームページ PHPフレームワーク ThinkPHP thinkphp5+barcode バーコード生成の詳細な図解説明

thinkphp5+barcode バーコード生成の詳細な図解説明

Mar 03, 2021 pm 03:47 PM
thinkphp5

次のチュートリアル コラムでは、バーコードを生成するための thinkphp5 バーコードについて紹介します。困っている友人の役に立てば幸いです。 #thinkphp5 バーコードはバーコードを生成します

##1 、公式 Web サイトにアクセスしてクラス ライブラリ "[https://www.barcodebakery.com...]" をダウンロードし、独自のバージョンを選択してダウンロードします。thinkphp5+barcode バーコード生成の詳細な図解説明

2、解凍して「E :\phpstudy\PHPTutorial\WWW\guahao\vendor\」に置きます。クラスファイルはすべてのクラスファイルです。バーコードの生成はフォルダー内のクラスを呼び出し、フォントファイルはフォントです。 Index.php はバーコードを生成するためのオプションの条件です Function はメイン プログラムへの入り口です test_1D.php はバーコード生成の例であり、test_1D.html はバーコードをレンダリングするための対応するページです

thinkphp5+barcode バーコード生成の詳細な図解説明

#3. 直接使用できます 公式サンプル (test_1D.php) を使用する必要がある場所にコピーし、必要に応じて少し変更します。サードパーティライブラリのロードを変更する必要があります。

thinkphp5+barcode バーコード生成の詳細な図解説明バーコード用の php コードを生成

<?php namespace app\index\controller;
use think\Controller;

/**
* 条形码操作类
*/
class Barcode extends Controller
{
    public function createBarcode()
    {
        $class_dir = VENDOR_PATH.&#39;barcode/class/&#39;;
        // Including all required classes
        require_once($class_dir.&#39;BCGFontFile.php&#39;);
        require_once($class_dir.&#39;BCGColor.php&#39;);
        require_once($class_dir.&#39;BCGDrawing.php&#39;);
        require_once($class_dir.&#39;BCGcode39.barcode.php&#39;);

        // Loading Font
        // 注意font和class是同一级文件夹
        $font = new \BCGFontFile(VENDOR_PATH.&#39;barcode/font/Arial.ttf&#39;, 18);// The arguments are R, G, B for color.
        $color_black = new \BCGColor(0, 0, 0);
        $color_white = new \BCGColor(255, 255, 255);

        $drawException = null;
        try {
            $code = new \BCGcode39();
            $code->setScale(2); // Resolution
            $code->setThickness(30); // Thickness
            $code->setForegroundColor($color_black); // Color of bars
            $code->setBackgroundColor($color_white); // Color of spaces
            $code->setFont($font); // Font (or 0)  0不显示文字
         $text = isset($_GET['text']) ? $_GET['text'] : 'HELLO';
            $code->parse($text); // Text
        } catch(Exception $exception) {
            $drawException = $exception;
        }

        /* Here is the list of the arguments
- Filename (empty : display on screen)
- Background color */
        $drawing = new \BCGDrawing('', $color_white);
        if($drawException) {
            $drawing->drawException($drawException);
        } else {
            $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');
        header('Content-Disposition: inline; filename="barcode.png"');

        // Draw (or save) the image into PNG format.
        $drawing->finish(\BCGDrawing::IMG_FORMAT_PNG);

    }

    public function barcodedes()
    {
        return $this->fetch();
    }
}
?>
ログイン後にコピー
バーコードをレンダリングするための HTML コードを受け入れます

<img  src="/static/imghw/default1.png" data-src="{:url('createBarcode')}" class="lazy" alt="thinkphp5+barcode バーコード生成の詳細な図解説明" >
ログイン後にコピー

もちろん、srcパラメータを運ぶこともできます。次のコード

thinkphp5+barcode バーコード生成の詳細な図解説明html code

<img  src="/static/imghw/default1.png" data-src="{:url('createBarcode',array('text'=>'123'))}" class="lazy" alt="thinkphp5+barcode バーコード生成の詳細な図解説明" >
ログイン後にコピー

php コードを変更して、

$text = isset($_GET['text']) ? $_GET['text'] : 'HELLO';
ログイン後にコピー
を変更するだけです。

$text = input('text');      //接收的参数
ログイン後にコピー
4. バーコードをローカルに保存する場合は、「BCGDrawing」をインスタンス化するときに保存パスを入力するだけです
// 文件路径
        $file_dir = 'uploads/barcode/'.date('Y-m-d');
        if (!file_exists($file_dir)) {
            mkdir($file_dir,0755,true);
        }
        $imgUrl = $file_dir.'/'.time().'.png';
        $class_dir = VENDOR_PATH.'barcode/class/';
        // Including all required classes
        require_once($class_dir.'BCGFontFile.php');
        require_once($class_dir.'BCGColor.php');
        require_once($class_dir.'BCGDrawing.php');
        require_once($class_dir.'BCGcode39.barcode.php');
        // Loading Font
        // 注意font和class是同一级文件夹
        $font = new \BCGFontFile(VENDOR_PATH.'barcode/font/Arial.ttf', 18);

        // Don't forget to sanitize user inputs
        // $text = isset($_GET['text']) ? $_GET['text'] : 'HELLO';
        // The arguments are R, G, B for color.
        $color_black = new \BCGColor(0, 0, 0);
        $color_white = new \BCGColor(255, 255, 255);

        $drawException = null;
        try {
            $code = new \BCGcode39();
            $code->setScale(2); // Resolution
            $code->setThickness(30); // Thickness
            $code->setForegroundColor($color_black); // Color of bars
            $code->setBackgroundColor($color_white); // Color of spaces
            $code->setFont($font); // Font (or 0)
            $text = input('text');      //接收的参数
            $text = isset($text) ? $text :'无参数';      
            $code->parse($text); // Text
        } catch(Exception $exception) {
            $drawException = $exception;
        }

        /* Here is the list of the arguments
- Filename (empty : display on screen)
- Background color */
        // 保存到本地 (路径,颜色)路径为空则表示显示到页面上
        $drawing = new \BCGDrawing($imgUrl, $color_white);
        if($drawException) {
            $drawing->drawException($drawException);
        } else {
            $drawing->setBarcode($code);
            $drawing->draw();
        }
        $drawing->finish(\BCGDrawing::IMG_FORMAT_PNG);
ログイン後にコピー
5. バーコードを生成した後、バーコードがローカルに保存されているかどうかを確認する方法に使える? ?

バーコードを画像としてローカルに保存し、公式 Web サイト「[https://www.barcodebakery.com/en/download]」を開いて、生成したばかりのバーコードをアップロードできます。入力したものと一致します。 「同じ」。バーコードが使用できることを示します。

thinkphp5+barcode バーコード生成の詳細な図解説明関連する推奨事項:

最新の 10 件の thinkphp ビデオ チュートリアル

以上がthinkphp5+barcode バーコード生成の詳細な図解説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Pagoda に thinkphp5 をデプロイするときにエラーが発生した場合はどうすればよいですか? Pagoda に thinkphp5 をデプロイするときにエラーが発生した場合はどうすればよいですか? Dec 19, 2022 am 11:04 AM

Pagoda に thinkphp5 をデプロイするときに報告されたエラーの解決策: 1. Pagoda サーバーを開き、php pathinfo 拡張機能をインストールして有効にします; 2. 「.access」ファイルをコンテンツ「RewriteRule ^(.*)$index.php」で構成します。 ?s=/$1 [QSA ,PT,L]”; 3. Web サイト管理で、thinkphp の疑似静的機能を有効にするだけです。

thinkphp5 の URL 書き換えが失敗した場合はどうすればよいですか? thinkphp5 の URL 書き換えが失敗した場合はどうすればよいですか? Dec 12, 2022 am 09:31 AM

thinkphp5 の URL 書き換えが機能しない場合の解決策: 1. mod_rewrite.so モジュールが httpd.conf 設定ファイルにロードされているかどうかを確認します; 2.AllowOverride None の None を All に変更します; 3. Apache 設定ファイル .htaccess を「RewriteRule ^」に変更します(.*)$index.php [L,E=PATH_INFO:$1]」を選択して保存します。

thinkphp5でリクエストされたURLを取得する方法 thinkphp5でリクエストされたURLを取得する方法 Dec 20, 2022 am 09:48 AM

thinkphp5 が要求された URL を取得するためのメソッド: 1. "\think\Request" クラスの "$request = Request::instance();" メソッドを使用して、現在の URL 情報を取得します。 2. 組み込みヘルパーを使用します。関数「$request-> url()」を使用して、ドメイン名を含む完全な URL アドレスを取得します。

thinkphp5 post が値を取得できない場合はどうすればよいですか? thinkphp5 post が値を取得できない場合はどうすればよいですか? Dec 06, 2022 am 09:29 AM

TP5 が strpos 関数を使用してヘッダーの content-type 値で app/json 文字列を検索するため、thinkphp5 post は値を取得できません。解決策は、ヘッダーの content-type 値を app/json に設定することです。

thinkphp5のタイトルバーアイコンを削除する方法 thinkphp5のタイトルバーアイコンを削除する方法 Dec 20, 2022 am 09:24 AM

thinkphp5 タイトル バー アイコンを削除する方法: 1. thinkphp5 フレームワーク public で favicon.ico ファイルを見つけます; 2. ファイルを削除するか、別の画像を選択して名前を favicon.ico に変更し、元の favicon.ico ファイルを置き換えます。

thinkphp5 がコントローラーが存在しないというメッセージを表示した場合はどうすればよいですか? thinkphp5 がコントローラーが存在しないというメッセージを表示した場合はどうすればよいですか? Dec 06, 2022 am 10:43 AM

thinkphp5 でコントローラーが存在しないというプロンプトが表示される場合の解決策: 1. 対応するコントローラーの名前空間が正しく記述されているかどうかを確認し、正しい名前空間に変更します; 2. 対応する tp ファイルを開いてクラス名を変更します。

ThinkPHP5 で昨日のデータをクエリする方法 ThinkPHP5 で昨日のデータをクエリする方法 Dec 05, 2022 am 09:20 AM

ThinkPHP5 で昨日のデータをクエリする方法: 1. ThinkPHP5 関連ファイルを開きます; 2. 式「db('table')->whereTime('c_time', 'yesterday')->select();」を使用して昨日のデータをクエリします。 。

thinkphp5 でエラー プロンプトを設定する方法 thinkphp5 でエラー プロンプトを設定する方法 Dec 07, 2022 am 10:31 AM

thinkphp5 でエラー プロンプトを設定する方法: 1. プロジェクト ルート ディレクトリのパブリック フォルダーに入り、index.php エントリ ファイルを開きます; 2. デバッグ モード スイッチに関するコメントを表示します; 3. 「APP_DEBUG」定数の値を調整しますtrue に設定すると、エラー メッセージ プロンプトが表示されます。

See all articles