.NET ヘルプ

BinaryKits.Zpl.Viewer(開発者向けの仕組み)

Zebraプログラミング言語(ZPL)は、Zebra Technologiesによって開発されたZebraラベルプリンターでラベルを印刷するために主に使用されるプリンター記述言語です。 ZPL II データコマンドのセットを提供し、印刷プレビュー機能とともに、テキスト、BarCode、ラベル幅、グラフィックなど、ラベルに印刷するファイルコンテンツのフォーマットと制御を可能にします。 ゼブラテクノロジーズによって開発されたこの技術は、製造業、物流、医療などの正確で標準化されたラベリングが重要な業界で広く使用されています。

さまざまなアプリケーションで、ZPLはラベルを動的に生成し、さまざまな目的に対して正確で一貫性のある印刷を保証します。 バッチ印刷、シリアル化、またはラベルのカスタマイズが必要なシナリオで特に人気があります。 ZPL の概要を理解したところで、ZPL プリンタードライバーコードの視覚化と分析を容易にするために設計されたツール、BinaryKits.Zpl.Viewer に進みましょう。 また、ZPL 表示用のLabelary APIは、BinaryKits.Zplの代替として使用できます。

この記事では、ZPLコードをPDFに変換します。ほとんどのプリンタはZPLコードをサポートしていませんが、PDFはZebra Technologiesのものであっても、すべてのプリンタでサポートされているからです。 ZPLをPDFに変換するために使用するPDFライブラリはIronPDF - the .NET PDF Libraryです。

BinaryKits.Zpl.Viewerの探索

ZPLの領域では、際立ったツールの一つにBinaryKits.Zpl Viewerがあります。 このビューアは、開発者にZPLコードを視覚化および分析するための包括的なソリューションを提供するように設計されています。 それは、Zebraラベルを使用するZebraプリンター上でZPLコマンドがどのように解釈され実行されるかを理解するための貴重なリソースとして機能します。

BinaryKits.Zpl Viewerは、開発者がZPLの生コマンドコードを送信し、単一のラベルまたはタグの視覚表現を即座に確認できる使いやすいインターフェースを提供します。 このZPL機能は特にZPLスクリプトのデバッグと微調整に役立ち、印刷された出力が意図したデザインに一致することを保証します。

1.1. 主要特徴

1.1.1. ZPLファイルの可視化

BinaryKits.Zpl.Viewerは、ユーザーがZPLファイルを開いて表示することを可能にし、ラベル内容を包括的かつ整理された形で表示します。 それはZPLコマンドを読みやすい形式でレンダリングし、ラベルデザインの解釈とトラブルシューティングを容易にします。

シンタックスハイライト

ビューアは、ZPLコードの異なる要素を区別するために構文のハイライトを取り入れており、コードの可読性を向上させ、ユーザーにとってよりアクセスしやすくしています。

1.1.3. インタラクティブプレビュー

ユーザーは、BinaryKits.Zpl.Viewerインターフェース内でラベルデザインをインタラクティブにプレビューできます。 この機能はラベルが印刷されたときにどのように表示されるかを理解するのに役立ち、設計およびデバッグプロセスを支援します。

エラー検出

BinaryKits.Zpl.Viewerにはエラー検出機能があり、ZPLコード内の潜在的な問題を特定します。 これにより、ユーザーはZebraプリンターにコードを送信する前に、迅速にエラーを特定して修正することができます。

使い方

BinaryKits.Zpl.Viewerを効果的に利用するには、次の手順に従ってください:

2.1. ZPLファイルを開く

BinaryKits.Zpl.Viewer アプリケーションを起動し、内蔵ファイルエクスプローラを使用して目的のファイルを開いてください。

2.2. ナビゲートと分析

ビューワーのユーザーフレンドリーなインターフェースを使用して、ZPLコードをナビゲートします。 構文ハイライトやインタラクティブプレビューなどの機能を活用して、ラベルデザインを理解してください。

2.3. コード例

以下は、C#でBinaryKits.Zpl.Viewerを使用する簡単な例です:

using BinaryKits.Zpl.Viewer;
class Program
{
    static void Main()
    {
        // Instantiate ZplViewer
        var zplViewer = new ZplViewer();
        // Load ZPL file
        zplViewer.LoadFile("path/to/your/label.zpl");
        // Display the ZPL content
        Console.WriteLine(zplViewer.GetContent());
        // Close the viewer
        zplViewer.Close();
    }
}
using BinaryKits.Zpl.Viewer;
class Program
{
    static void Main()
    {
        // Instantiate ZplViewer
        var zplViewer = new ZplViewer();
        // Load ZPL file
        zplViewer.LoadFile("path/to/your/label.zpl");
        // Display the ZPL content
        Console.WriteLine(zplViewer.GetContent());
        // Close the viewer
        zplViewer.Close();
    }
}
Imports BinaryKits.Zpl.Viewer
Friend Class Program
	Shared Sub Main()
		' Instantiate ZplViewer
		Dim zplViewer As New ZplViewer()
		' Load ZPL file
		zplViewer.LoadFile("path/to/your/label.zpl")
		' Display the ZPL content
		Console.WriteLine(zplViewer.GetContent())
		' Close the viewer
		zplViewer.Close()
	End Sub
End Class
$vbLabelText   $csharpLabel

この例では、BinaryKits.Zpl.Viewerライブラリを使用してZPLファイルをロードし、その内容を取得してからビューアを閉じる方法を示しています。

BinaryKits.Zpl.Viewer をワークフローに組み込むことで、Zebra ラベル印刷アプリケーションの開発とトラブルシューティングを効率化できます。

4. IronPDFとその機能

IronPDFは、.NETアプリケーションでPDFドキュメントを処理するための強力なライブラリです。 それは、PDFファイルの作成、変更、および操作を容易にし、開発者がプロジェクトにPDF機能をシームレスに統合するための強力なツールセットを提供します。

IronPDFの注目すべき機能のいくつかには、ゼロからPDFドキュメントを作成する機能、HTMLや画像をPDFに変換する機能、PDFからテキストや画像を抽出する機能、既存のPDFに注釈やフォームフィールドを追加する機能などがあります。 その多様性により、PDFの生成および操作が必要なアプリケーションを開発している開発者にとって優れた選択肢となります。

5. ZPLデータを画像に変換し、画像をIronPDFを使用してPDFに変換

では、BinaryKits.Zpl.ViewerをIronPDFとシームレスに統合し、ZPL生成ラベルをPDFに変換する方法を探ってみましょう。 提供されたコード例は、両方のライブラリを使用したステップバイステップのプロセスを示しています。 この例は、すべてのプリンタがZPLコードをサポートしているわけではないので、最大番号ラベルの簡単な作成とそのPDF表現です。 この例で使用される .NET ライブラリは、BinaryKits.Zpl.Viewer と IronPDF です。

using BinaryKits.Zpl.Viewer;
using System.IO;
using IronPdf;
using System.Linq;
// Initialize ZPL elements and printer storage
IPrinterStorage printerStorage = new PrinterStorage();
var drawer = new ZplElementDrawer(printerStorage);
// Initialize ZPL analyzer and analyze ZPL code
var analyzer = new ZplAnalyzer(printerStorage);
var analyzeInfo = analyzer.Analyze("^XA ^MMT ^PW812 ^LL0203 ^LS0^FO0,0^A0N,36,36^FB600,1,0,L,0^FD^FS ^FO53.592000000000006,23.142^PW0^LL0^A0N,36,36^FB620,10,0,C,0^FDTest will go here^FS^FO8.931999999999999,6.09^GB798.196,1205.82,3,B^FS^FO190.008,247.25400000000002^BQN,^PW0^LL02,10,Q,7^FDQA,False^FS^XZ");
// Iterate through label information and draw ZPL elements
foreach (var labelInfo in analyzeInfo.LabelInfos)
{
    var imageData = drawer.Draw(labelInfo.ZplElements);
    File.WriteAllBytes("label.png", imageData);
}
// Retrieve image files and convert to PDF
var response = Directory.EnumerateFiles("").Where(f => f.EndsWith("label.png"));
ImageToPdfConverter.ImageToPdf(response).SaveAs("zpl.pdf");
using BinaryKits.Zpl.Viewer;
using System.IO;
using IronPdf;
using System.Linq;
// Initialize ZPL elements and printer storage
IPrinterStorage printerStorage = new PrinterStorage();
var drawer = new ZplElementDrawer(printerStorage);
// Initialize ZPL analyzer and analyze ZPL code
var analyzer = new ZplAnalyzer(printerStorage);
var analyzeInfo = analyzer.Analyze("^XA ^MMT ^PW812 ^LL0203 ^LS0^FO0,0^A0N,36,36^FB600,1,0,L,0^FD^FS ^FO53.592000000000006,23.142^PW0^LL0^A0N,36,36^FB620,10,0,C,0^FDTest will go here^FS^FO8.931999999999999,6.09^GB798.196,1205.82,3,B^FS^FO190.008,247.25400000000002^BQN,^PW0^LL02,10,Q,7^FDQA,False^FS^XZ");
// Iterate through label information and draw ZPL elements
foreach (var labelInfo in analyzeInfo.LabelInfos)
{
    var imageData = drawer.Draw(labelInfo.ZplElements);
    File.WriteAllBytes("label.png", imageData);
}
// Retrieve image files and convert to PDF
var response = Directory.EnumerateFiles("").Where(f => f.EndsWith("label.png"));
ImageToPdfConverter.ImageToPdf(response).SaveAs("zpl.pdf");
Imports BinaryKits.Zpl.Viewer
Imports System.IO
Imports IronPdf
Imports System.Linq
' Initialize ZPL elements and printer storage
Private printerStorage As IPrinterStorage = New PrinterStorage()
Private drawer = New ZplElementDrawer(printerStorage)
' Initialize ZPL analyzer and analyze ZPL code
Private analyzer = New ZplAnalyzer(printerStorage)
Private analyzeInfo = analyzer.Analyze("^XA ^MMT ^PW812 ^LL0203 ^LS0^FO0,0^A0N,36,36^FB600,1,0,L,0^FD^FS ^FO53.592000000000006,23.142^PW0^LL0^A0N,36,36^FB620,10,0,C,0^FDTest will go here^FS^FO8.931999999999999,6.09^GB798.196,1205.82,3,B^FS^FO190.008,247.25400000000002^BQN,^PW0^LL02,10,Q,7^FDQA,False^FS^XZ")
' Iterate through label information and draw ZPL elements
For Each labelInfo In analyzeInfo.LabelInfos
	Dim imageData = drawer.Draw(labelInfo.ZplElements)
	File.WriteAllBytes("label.png", imageData)
Next labelInfo
' Retrieve image files and convert to PDF
Dim response = Directory.EnumerateFiles("").Where(Function(f) f.EndsWith("label.png"))
ImageToPdfConverter.ImageToPdf(response).SaveAs("zpl.pdf")
$vbLabelText   $csharpLabel

このコードはC#で書かれており、BinaryKits.Zpl.Viewerライブラリを使用して、Zebra Programming Language (ZPL)コードをPNG画像形式の視覚表現に変換し、これらの画像を単一のPDFドキュメントに結合します。 以下はコードの簡単な説明です:

  1. ライブラリのインポート: このコードは、必要なライブラリであるBinaryKits.Zpl.Viewer、IronPDF、System.IOをインポートすることから始まります。

  2. 初期化: IPrinterStorageインターフェースとZplElementDrawerを使用してZPL印刷およびストレージ用の要素を初期化します。 ZplAnalyzerはZPLコードを解析するようにも設定されています。

  3. ZPL分析: 提供されたZPLコードはZplAnalyzerを使用して分析されます。 解析結果はanalyzeInfoに格納されており、コード内のさまざまなZPL要素に関する情報を含みます。

  4. 画像描画: コードは解析から取得したラベル情報を反復処理し、ZplElementDrawerを使用して画像にZPL要素を描画します。 各画像は「label.png」という名前のPNGファイルとして保存されます。

  5. PDF変換: 各PNG画像を保存した後、コードは現在のディレクトリ内のファイル名が「label.png」で終わる画像ファイルのリストを取得します。その後、IronPDFライブラリを使用して、これらのPNGファイルを「zpl.pdf」という名前の単一のPDFドキュメントに変換します。

出力ラベル画像

BinaryKits.Zpl.Viewer(開発者向けの仕組み):図1 - 画像出力

出力ラベルPDF

BinaryKits.Zpl.Viewer (開発者向けの動作方法): 図 2 - PDF 出力

結論

結論として、BinaryKits.Zpl.ViewerとIronPDFの組み合わせは、.NETアプリケーションでZPLを扱う開発者に強力なソリューションを提供します。 ビューアは、ZPLコードの視覚的な表現を提供することで、デバッグと理解を支援し、開発プロセスを強化します。 IronPDFと統合することで、ZPL生成ラベルからPDFドキュメントへの移行がスムーズかつ効率的になり、さまざまな業界で洗練されたラベリングソリューションを作成する可能性が広がります。 技術が進歩し続ける中、BinaryKits.Zpl.ViewerとIronPDFのようなライブラリ間の相乗効果は、最新の.NET開発で達成可能な革新性と多様性を示しています。 ZPLとプロジェクトのサポートの詳細については、BinaryKits.Zpl GitHubリポジトリを訪問してください。

IronPDFは、その機能を知るための素晴らしい機会である開発者向けの無料試用ライセンスを提供しています。 IronPDFを使用した詳細な画像をPDFに変換するチュートリアルは、開発者がこの機能をアプリケーションに実装する際のガイドとなります。

チペゴ
ソフトウェアエンジニア
チペゴは優れた傾聴能力を持ち、それが顧客の問題を理解し、賢明な解決策を提供する助けとなっています。彼は情報技術の学士号を取得後、2023年にIron Softwareチームに加わりました。現在、彼はIronPDFとIronOCRの2つの製品に注力していますが、顧客をサポートする新しい方法を見つけるにつれて、他の製品に関する知識も日々成長しています。Iron Softwareでの協力的な生活を楽しんでおり、さまざまな経験を持つチームメンバーが集まり、効果的で革新的な解決策を提供することに貢献しています。チペゴがデスクを離れているときは、良い本を楽しんだり、サッカーをしていることが多いです。
< 以前
Blazor .NET 8(開発者チュートリアル)
次へ >
C# デストラクタ(開発者向けの動作)