From a8d3893e21437087ece85740e194e781da60613d Mon Sep 17 00:00:00 2001 From: Muhammad Adil Date: Thu, 6 Aug 2026 14:31:51 +0000 Subject: [PATCH] Add 3 barcode net tutorials MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Categories: compact-pdf417-encoding, one-dimensional-barcode-types Source: AI Search API Tutorials: - Generate PDF417 barcode in C# – barcode generator guide - How to save barcode images in C# – complete guide - How to set barcode in C# – complete Aspose.BarCode guide Auto-generated by Professionalize.Tutorials Agent --- .../net/compact-pdf417-encoding/_index.md | 8 +- .../_index.md | 110 ++++++++ .../_index.md | 233 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 161 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 6 +- .../_index.md | 109 ++++++++ .../_index.md | 233 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 159 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 8 +- .../_index.md | 113 +++++++++ .../_index.md | 236 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 6 +- .../_index.md | 161 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 10 +- .../_index.md | 111 ++++++++ .../_index.md | 234 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 161 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 8 +- .../_index.md | 122 +++++++++ .../og-image.png | Bin 0 -> 49911 bytes .../_index.md | 237 +++++++++++++++++ .../og-image.png | Bin 0 -> 51678 bytes .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 163 ++++++++++++ .../og-image.png | Bin 0 -> 52457 bytes .../net/compact-pdf417-encoding/_index.md | 8 +- .../_index.md | 112 ++++++++ .../_index.md | 237 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 163 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 8 +- .../_index.md | 111 ++++++++ .../_index.md | 237 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 8 +- .../_index.md | 164 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 7 +- .../_index.md | 110 ++++++++ .../_index.md | 237 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 163 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 6 +- .../_index.md | 111 ++++++++ .../_index.md | 236 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 161 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 8 +- .../_index.md | 110 ++++++++ .../_index.md | 233 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 157 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 8 +- .../_index.md | 112 ++++++++ .../_index.md | 236 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 6 +- .../_index.md | 163 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 6 +- .../_index.md | 112 ++++++++ .../_index.md | 236 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 161 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 8 +- .../_index.md | 113 +++++++++ .../_index.md | 237 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 163 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 10 +- .../_index.md | 112 ++++++++ .../_index.md | 232 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 159 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 8 +- .../_index.md | 110 ++++++++ .../_index.md | 235 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 161 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 6 +- .../_index.md | 113 +++++++++ .../_index.md | 234 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 161 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 8 +- .../_index.md | 113 +++++++++ .../_index.md | 234 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 163 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 6 +- .../_index.md | 112 ++++++++ .../_index.md | 234 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 160 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 6 +- .../_index.md | 113 +++++++++ .../_index.md | 237 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 161 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 8 +- .../_index.md | 111 ++++++++ .../_index.md | 233 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 161 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 6 +- .../_index.md | 110 ++++++++ .../_index.md | 235 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 6 +- .../_index.md | 161 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 8 +- .../_index.md | 112 ++++++++ .../_index.md | 239 ++++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 6 +- .../_index.md | 162 ++++++++++++ .../net/compact-pdf417-encoding/_index.md | 8 +- .../_index.md | 108 ++++++++ .../_index.md | 234 +++++++++++++++++ .../one-dimensional-barcode-types/_index.md | 4 +- .../_index.md | 161 ++++++++++++ 118 files changed, 11908 insertions(+), 58 deletions(-) create mode 100644 barcode/arabic/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/arabic/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/arabic/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/chinese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/chinese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/chinese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/czech/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/czech/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/czech/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/dutch/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/dutch/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/dutch/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/english/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/english/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/og-image.png create mode 100644 barcode/english/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/english/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/og-image.png create mode 100644 barcode/english/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/english/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/og-image.png create mode 100644 barcode/french/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/french/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/french/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/german/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/german/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/german/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/greek/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/greek/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/greek/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/hindi/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/hindi/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/hindi/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/hongkong/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/hongkong/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/hongkong/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/hungarian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/hungarian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/hungarian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/indonesian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/indonesian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/indonesian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/italian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/italian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/italian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/japanese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/japanese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/japanese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/korean/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/korean/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/korean/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/polish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/polish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/polish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/portuguese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/portuguese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/portuguese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/russian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/russian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/russian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/spanish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/spanish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/spanish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/swedish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/swedish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/swedish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/thai/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/thai/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/thai/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/turkish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/turkish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/turkish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md create mode 100644 barcode/vietnamese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md create mode 100644 barcode/vietnamese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md create mode 100644 barcode/vietnamese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md diff --git a/barcode/arabic/net/compact-pdf417-encoding/_index.md b/barcode/arabic/net/compact-pdf417-encoding/_index.md index 6b447ecb2..fe34ac2ee 100644 --- a/barcode/arabic/net/compact-pdf417-encoding/_index.md +++ b/barcode/arabic/net/compact-pdf417-encoding/_index.md @@ -85,6 +85,12 @@ PDF417 المدمج هو رمز ثنائي الأبعاد عالي السعة ي ### [إنشاء باركودات PDF417 المدمجة](./compact-pdf417-basic-configuration/) تعلم كيفية إنشاء باركودات PDF417 المدمجة باستخدام Aspose.BarCode for .NET. دليل شامل مع تعليمات خطوة بخطوة وأمثلة شفرة. +### [إنشاء باركود PDF417 في C# – دليل مولد الباركود](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +تعلم كيفية إنشاء باركود PDF417 باستخدام C# ومولد الباركود من Aspose. + +### [كيفية حفظ صور الباركود في C# – دليل كامل](./how-to-save-barcode-images-in-c-complete-guide/) +دليل شامل يوضح كيفية حفظ صور الباركود كملفات PNG أو JPEG باستخدام C# ومكتبة Aspose.BarCode. + ## الأسئلة المتكررة **س: ما هو الحد الأقصى للبيانات التي يمكن تخزينها في باركود PDF417 المدمج؟** @@ -113,4 +119,4 @@ PDF417 المدمج هو رمز ثنائي الأبعاد عالي السعة ي {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/arabic/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/arabic/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..0a53a4e3c --- /dev/null +++ b/barcode/arabic/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,110 @@ +--- +category: general +date: 2026-08-06 +description: إنشاء باركود PDF417 في C# باستخدام مولد باركود C# – دليل PDF417. تعلم + كيفية إنشاء باركود PDF417، ضبط وضع الثنائي، وحفظه كملف PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: ar +lastmod: 2026-08-06 +og_description: إنشاء رمز شريطي PDF417 في C# باستخدام BarcodeGenerator. تعلّم ضبط + الترميز الثنائي، وتكوين خيارات PDF417، وحفظ الرمز الشريطي كصورة PNG. +og_image_alt: Generate PDF417 barcode example +og_title: إنشاء باركود PDF417 في C# – دليل كامل لإنشاء الباركود +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: إنشاء باركود PDF417 في C# – دليل مولد الباركود +url: /ar/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# إنشاء شيفرة PDF417 في C# – دليل مولد الباركود + +إذا كنت بحاجة إلى **إنشاء شيفرة PDF417** في تطبيق .NET، يوضح لك هذا الدليل بالضبط كيفية القيام بذلك. باستخدام مكتبة Aspose.BarCode يمكنك ترميز البيانات الثنائية، وتبديل مُشفّر PDF417 إلى الوضع الثنائي، وإنتاج صورة PNG عالية الدقة ببضع أسطر فقط من C#. + +يغطي هذا الشرح كل شيء بدءًا من تثبيت حزمة NuGet وحتى تخصيص إعدادات PDF417 ومعالجة الحالات الخاصة مثل البيانات الفارغة أو الأحرف غير المدعومة. بنهاية الدليل ستحصل على مثال كامل قابل للتنفيذ يمكنك إدراجه في أي مشروع C#. + +**ما ستتعلمه** + +* تثبيت وإضافة مرجع حزمة مولد الباركود C# PDF417. +* إعداد البيانات الثنائية للترميز. +* تكوين `BarcodeGenerator` لترميز PDF417 بنمط ثنائي. +* حفظ الباركود المُولد كملف PNG والتحقق من النتيجة. + +> **المتطلبات المسبقة** – .NET 6.0 أو أحدث، Visual Studio 2022 (أو أي بيئة تطوير تفضلها)، واتصال بالإنترنت لجلب حزمة NuGet. + +--- + +## الخطوة 1: تثبيت حزمة Aspose.BarCode من NuGet + +الطريقة الأكثر موثوقية للعمل مع شيفرات PDF417 في C# هي مكتبة **Aspose.BarCode**، التي تدعم الترميز الثنائي بالكامل. + +```bash +dotnet add package Aspose.BarCode +``` + +*لماذا هذه الخطوة؟* +فئة `BarcodeGenerator` موجودة في مساحة الاسم `Aspose.BarCode`. إضافة الحزمة تضمن توفر جميع ملفات DLL المطلوبة وقت التجميع وتمنحك أحدث إصلاحات الأخطاء وتحسينات الأداء. + +--- + +## الخطوة 2: إنشاء مشروع وحدة تحكم جديد (اختياري لكن يُنصح به) + +إذا كنت تختبر الكود بشكل منفصل، ابدأ بتطبيق وحدة تحكم جديد: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +أضف الحزمة إلى المشروع (كرر الأمر من الخطوة 1 إذا لم تقم بذلك بعد). + +--- + +## الخطوة 3: إعداد البيانات الثنائية للترميز + +يمكن لـ PDF417 ترميز البايتات الخام عندما تضبط وضع الترميز إلى **Binary**. أدناه مصفوفة بايت بسيطة توضح العملية. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*لماذا البيانات الثنائية؟* +الوضع الثنائي يتيح لك تخزين أي تسلسل بايت—مفيد لتضمين ملفات، مفاتيح تشفير، أو حمولة مخصصة ليست نصًا عاديًا. + +--- + +## الخطوة 4: تهيئة مولد الباركود وتكوين PDF417 للوضع الثنائي + + + +## ما الذي ينبغي أن تتعلمه بعد ذلك؟ + +الدروس التالية تغطي مواضيع ذات صلة وثيقة تبني على التقنيات الموضحة في هذا الدليل. كل مصدر يتضمن أمثلة شيفرة كاملة مع شروحات خطوة بخطوة لمساعدتك على إتقان ميزات API إضافية واستكشاف أساليب تنفيذ بديلة في مشاريعك الخاصة. + +- [كيفية إنشاء باركود – PDF417 مضغوط باستخدام Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [كيفية إنشاء شيفرات PDF417 – ترميز PDF417 مضغوط](/barcode/english/net/compact-pdf417-encoding/) +- [كيفية إنشاء باركود Aztec بنسبة عرض إلى ارتفاع مخصصة باستخدام Aspose.BarCode لـ .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/arabic/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/arabic/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..32cef579f --- /dev/null +++ b/barcode/arabic/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,233 @@ +--- +category: general +date: 2026-08-06 +description: كيفية حفظ صور الباركود في C# باستخدام MicroPdf417 مع محاكاة Code 128. + تعلّم كيفية إنشاء باركود PDF417 وتخصيص الإعدادات. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: ar +lastmod: 2026-08-06 +og_description: كيفية حفظ صور الباركود في C# بسرعة باستخدام MicroPdf417 ومحاكاة Code 128. + اتبع هذا الدليل لإنشاء باركود PDF417 وتخصيص المخرجات. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: كيفية حفظ صور الباركود في C# – دليل خطوة بخطوة +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: كيفية حفظ صور الباركود في C# – دليل كامل +url: /ar/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# كيفية حفظ صور الباركود في C# – دليل كامل + +إذا كنت بحاجة إلى **كيفية حفظ الباركود** صور في تطبيق .NET، فإن هذا الدرس يوضح لك حلاً جاهزًا للتنفيذ. ستتعلم كيفية إنشاء باركود PDF417، وتطبيق محاكاة Code 128، وكتابة ملفات PNG الناتجة إلى القرص. + +يستخدم المثال مكتبة Aspose.BarCode for .NET، التي تدعم MicroPdf417 و Code 128 والعديد من المعايير الأخرى. بنهاية الدليل يمكنك إنشاء ملفات باركود للأنماط 908، 909، 910، و 911، وستفهم كيفية ضبط المعلمات البصرية للحصول على مسح أمثل. + +## المتطلبات المسبقة + +* .NET 6.0 SDK أو أحدث مثبت +* Visual Studio 2022 (أو أي بيئة تطوير تدعم C#) +* رخصة نشطة لـ Aspose.BarCode for .NET (إصدار تجريبي مجاني يعمل للتطوير) + +يفترض الدرس معرفة أساسية بمشروعات C# console. + +## الخطوة 1: إنشاء مشروع console جديد وإضافة حزمة BarCode + +افتح الطرفية ونفّذ الأوامر التالية: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +أمر `dotnet add package` يقوم بتنزيل أحدث مكتبة Aspose.BarCode، التي تحتوي على الفئات التي تحتاجها لـ **كيفية إنشاء pdf417** الباركود. + +## الخطوة 2: كتابة البرنامج الكامل + +أنشئ ملفًا باسم `Program.cs` (استبدل الموجود) والصق الشيفرة أدناه. يُظهر البرنامج **barcode generator with code128** محاكاة ويعرض عدة طرق لـ **كيفية حفظ الباركود** الصور. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### لماذا يعمل هذا الكود + +* **Single generator instance** – إعادة استخدام `BarcodeGenerator` يتجنب تخصيص الذاكرة المتكرر ويحافظ على تساوي الإعدادات عبر الأنماط. +* **XDimension** – ضبط حجم البكسل إلى 2 ينتج صورة واضحة وقابلة للقراءة دون زيادة حجم الملف. +* **IsCode128Emulation** – يتيح نمط أشرطة Code 128 داخل رمز PDF417، مما يجعل بعض الماسحات الضوئية تفسره بشكل أكثر موثوقية. +* **Save method** – التحميل الزائد `Save` الذي تراه هو الطريقة القياسية لـ **كيفية حفظ الباركود** الملفات؛ فهو يكتب الصورة مباشرة إلى نظام الملفات بالتنسيق الذي تحدده. + +## الخطوة 3: تشغيل البرنامج والتحقق من المخرجات + +ابنِ ونفّذ المشروع: + +```bash +dotnet run +``` + +بعد أن يطبع الطرفية رسائل التأكيد، افتح المجلد الذي حددته في `outputPath`. يجب أن ترى أربعة ملفات PNG: + +* `MicroPdf417_Code128_908.png` – FNC1 + مؤشر أبجدي رقمي +* `MicroPdf417_Code128_909.png` – FNC1 + مؤشر رقمي +* `MicroPdf417_Code128_910.png` – حمولة Code 128 صافية + +كل صورة تحتوي على رمز MicroPdf417 يمكن مسحه بواسطة قارئات الباركود القياسية. إذا فشل الماسح في قراءة ملف، فكر في زيادة `XDimension.Pixels` أو تعديل `Pdf417.Columns` لتتناسب مع دقة الجهاز المستهدف. + +## الخطوة 4: التغييرات الشائعة وحالات الحافة + +### تغيير تنسيق الصورة + +تدعم تعداد `BarCodeImageFormat` صيغ PNG و JPEG و BMP و TIFF. استبدل `BarCodeImageFormat.Png` بـ `BarCodeImageFormat.Jpeg` إذا كنت بحاجة إلى حجم ملف أصغر لتسليم الويب. + +### إنشاء PDF417 بالحجم الكامل بدلاً من MicroPdf417 + +إذا كان حال استخدامك يتطلب معيار PDF417 الأكبر، أنشئ المولد باستخدام `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +تذكر تعديل `Pdf417.Rows` و `Pdf417.Columns` لتلبية مواصفات ISO/IEC 15417. + +### معالجة الأحرف الخاصة + +فاصل المجموعة (`\u001d`) مطلوب لمعرفات التطبيق. إذا كانت بياناتك تحتوي على أحرف تحكم أخرى، قم بتهريبها باستخدام ترميز Unicode (مثال: `\u001c` لفاصل الملفات) لتجنب أخطاء وقت التشغيل. + +### اعتبارات الترخيص + +تشغيل الكود بدون ترخيص يضيف علامة مائية على الصور المولدة. قم بتطبيق الترخيص الخاص بك مبكرًا في `Main`: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## الخطوة 5: نصائح للاستخدام في الإنتاج + +* **Batch processing** – غلف منطق الحفظ داخل حلقة تقرأ الصفوف من CSV أو قاعدة بيانات؛ أعد استخدام نفس مثال `BarcodeGenerator` للأداء. +* **Thread safety** – `BarcodeGenerator` غير آمن للـ threads. أنشئ مثالًا منفصلًا لكل thread إذا قمت بتوازي إنشاء الباركود. +* **Error handling** – احط مكالمات `Save` بكتل `try…catch` لالتقاط استثناءات الإدخال/الإخراج، خاصةً عند الكتابة إلى مشاركات الشبكة. + +## الخاتمة + +أنت الآن تعرف **كيفية حفظ الباركود** صور في C# باستخدام Aspose.BarCode، وكيفية **كيفية إنشاء pdf417** الرموز مع محاكاة Code 128، وكيفية تكوين **barcode generator with code128** لعدة أوضاع. المثال الكامل القابل للتنفيذ يوضح كل خطوة من إعداد المشروع إلى ملفات PNG النهائية. + +بعد ذلك، استكشف المواضيع ذات الصلة مثل **embedding barcodes in PDF documents**، **creating QR codes with custom colors**، أو **integrating barcode generation into ASP.NET Core APIs**. هذه الإضافات تبني على نفس المبادئ التي تم تغطيتها هنا وتتيح لك أتمتة مجموعة واسعة من سير عمل المسح. + +## ماذا يجب أن تتعلم بعد ذلك؟ + +الدروس التالية تغطي مواضيع ذات صلة وثيقة تبني على التقنيات الموضحة في هذا الدليل. كل مصدر يتضمن أمثلة شيفرة كاملة مع شروحات خطوة بخطوة لمساعدتك على إتقان ميزات API إضافية واستكشاف أساليب تنفيذ بديلة في مشاريعك. + +- [كيفية إنشاء باركود PDF417 – ترميز PDF417 المدمج](/barcode/english/net/compact-pdf417-encoding/) +- [كيفية حفظ PNG باستخدام DataMatrix C40 مع Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [كيفية إنشاء باركود - أنواع الباركود أحادية الأبعاد](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/arabic/net/one-dimensional-barcode-types/_index.md b/barcode/arabic/net/one-dimensional-barcode-types/_index.md index 704801638..b1da4c379 100644 --- a/barcode/arabic/net/one-dimensional-barcode-types/_index.md +++ b/barcode/arabic/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ url: /ar/net/one-dimensional-barcode-types/ تعرف على كيفية التعامل مع الاستثناءات أثناء إنشاء رموز شريطية أحادية البعد باستخدام Aspose.BarCode لـ .NET. يضمن هذا الدليل التفصيلي حلول الباركود التي تتحمل الأخطاء. نبدأ الآن! ### [تكوين ذو نسبة واسعة وضيقة أحادية البعد](./one-dimensional-wide-narrow-ratio-configuration/) قم بإنشاء رموز شريطية مخصصة بسهولة باستخدام Aspose.BarCode لـ .NET. دليل خطوة بخطوة لتكوين نسبة واسعة وضيقة أحادية البعد. +### [كيفية تعيين الباركود في C# – دليل Aspose.BarCode الكامل](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +تعرف على كيفية تعيين الباركود في C# باستخدام Aspose.BarCode خطوة بخطوة. ## خاتمة @@ -89,4 +91,4 @@ url: /ar/net/one-dimensional-barcode-types/ {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/arabic/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/arabic/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..c384d3800 --- /dev/null +++ b/barcode/arabic/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,161 @@ +--- +category: general +date: 2026-08-06 +description: كيفية تعيين الباركود باستخدام Aspose.BarCode في C#. تعلم كيفية تغيير + الأحرف الماكرو وإنشاء صورة باركود في C# مع كود خطوة بخطوة. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: ar +lastmod: 2026-08-06 +og_description: كيفية إعداد الباركود باستخدام Aspose.BarCode في C#. يوضح هذا الدليل + كيفية تغيير الأحرف الماكرو وإنشاء صورة باركود في C# بسرعة. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: كيفية تعيين الباركود في C# – دليل Aspose.BarCode +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: كيفية تعيين الباركود في C# – دليل Aspose.BarCode الكامل +url: /ar/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# كيفية تعيين الباركود في C# – دليل Aspose.BarCode الكامل + +إذا كنت تحتاج إلى **كيفية تعيين الباركود** في تطبيق .NET، فإن هذا الدرس يوضح لك الخطوات الدقيقة باستخدام Aspose.BarCode. ستتعرف على كيفية تغيير أحرف الماكرو، تعديل المعلمات البصرية، و**إنشاء صورة باركود C#** يمكن حفظها مباشرة على القرص. + +الدليل يغطي كل شيء من تثبيت المكتبة إلى توليد باركودين MicroPDF417 بقيم ماكرو مختلفة. لا تحتاج إلى أي وثائق خارجية—يمكنك نسخ الكود، تشغيله، والتحقق من مخرجات PNG فورًا. + +## المتطلبات المسبقة + +قبل أن تبدأ، تأكد من وجود ما يلي: + +* .NET 6.0 أو أحدث (المثال يستخدم مشروع Console) +* Visual Studio 2022 أو أي بيئة تطوير C# +* ترخيص Aspose.BarCode ساري (التقييم المجاني يكفي للاختبار) +* معرفة أساسية بصياغة C# + +ستحتاج أيضًا إلى حزمة NuGet: + +```bash +dotnet add package Aspose.BarCode +``` + +## كيفية تعيين معلمات الباركود – الخطوة 1: إنشاء المولد + +الإجراء الأول هو إنشاء كائن `BarcodeGenerator` مع الترميز المطلوب والبيانات. استخدام `EncodeTypes.MicroPdf417` يخبر Aspose.BarCode بإنتاج نسخة مضغوطة من PDF417. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**لماذا هذا مهم:** `BarcodeGenerator` هو الكائن المركزي؛ جميع الإعدادات اللاحقة تعدل خاصية `Parameters` الخاصة به. اختيار `EncodeTypes` الصحيح يضمن أن الباركود يتبع مواصفات MicroPDF417. + +## كيفية تغيير أحرف الماكرو – الخطوة 2: تعديل المعلمات البصرية + +أحرف الماكرو هي رموز تحكم اختيارية تسمح بربط عدة رموز PDF417 معًا. المثال يتنقل بين `Macro05` و `Macro06`. كما تقوم بتعيين عرض الوحدة (`XDimension`) وعدد الأعمدة للتحكم في حجم الباركود. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**لماذا تغير الماكرو:** حرف الماكرو يخبر القارئ أن هذا الباركود جزء من مجموعة بيانات أكبر. تبديله يوضح كيف يمكن ربط نفس البيانات بمعرفات ماكرو مختلفة. + +## كيفية تعيين الباركود – الخطوة 3: توليد باركود ثانٍ بقيمة ماكرو مختلفة + +الآن نعيد استخدام نفس كائن `generator`، مع تبديل قيمة الماكرو فقط. هذا يتجنب إنشاء كائن جديد ويظهر أن **كيفية تعيين الباركود** يمكن تنفيذها أثناء التشغيل. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### النتيجة المتوقعة + +تشغيل البرنامج ينشئ ملفي PNG في مجلد المشروع: + +* `MicroPdf417_Macro05.png` – باركود مع Macro05 +* `MicroPdf417_Macro06.png` – باركود مع Macro06 + +كلا الصورتين تعرض رمز MicroPDF417 مضغوط يشفّر `12345ABC`. يمكنك فتح ملفات PNG بأي عارض صور للتحقق من الجودة البصرية. + +## أفضل ممارسات مولد الباركود C# + +* **إعادة استخدام المولد:** تعديل `Parameters` على كائن موجود أكثر كفاءة من إنشاء مولد جديد لكل باركود. +* **تعيين X‑dimension مبكرًا:** عرض الوحدة يؤثر على حجم الصورة الكلي؛ عدّلها قبل الحفظ. +* **التحقق من استخدام الماكرو:** ليس كل القارئات تدعم أحرف الماكرو. اختبر مع الأجهزة المستهدفة إذا كنت تنوي استخدامها في الإنتاج. +* **تحرير الموارد:** `BarcodeGenerator` يطبق `IDisposable`. في خدمة طويلة التشغيل، ضعها داخل كتلة `using` أو استدعِ `Dispose()` عند الانتهاء. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## إنشاء صورة باركود C# – نصائح استكشاف الأخطاء + +| العرض | السبب المحتمل | الحل | +|-------|----------------|------| +| ملف PNG فارغ | `XDimension` مضبوط على 0 أو قيمة عالية جدًا | استخدم عرض بكسل معقول (1‑5) | +| الباركود غير قابل للقراءة | حرف ماكرو غير مناسب للقارئ | راجع وثائق القارئ؛ استخدم `MacroNone` إذا لم يكن مطلوبًا | +| استثناء `ArgumentOutOfRangeException` | عدد الأعمدة خارج النطاق المسموح (1‑30) | حافظ على `Columns` بين 1 و 30 | + +## الخلاصة + +الآن تعرف **كيفية تعيين خصائص الباركود**، **كيفية تغيير أحرف الماكرو**، وكيفية **إنشاء صورة باركود C#** باستخدام Aspose.BarCode. المثال الكامل القابل للتنفيذ يوضح سير العمل الكامل من إنشاء المولد إلى تصدير الصورة. + +بعد ذلك، استكشف رموزًا أخرى (`EncodeTypes.QR`, `EncodeTypes.Code128`) أو دمج الباركود مباشرةً في ملفات PDF باستخدام Aspose.PDF. كلا الموضوعين يندرجان تحت نظام **مولد الباركود c#** ويمكن إضافتهما إلى هذا المشروع بتغييرات قليلة في الكود. + +برمجة سعيدة، ولا تتردد في تجربة قيم ماكرو مختلفة، أبعاد، وصيغ إخراج أخرى! + +## ما الذي يجب أن تتعلمه بعد ذلك؟ + +الدروس التالية تغطي مواضيع ذات صلة وثيقة تبني على التقنيات التي تم توضيحها في هذا الدليل. كل مورد يتضمن أمثلة شاملة مع شروحات خطوة بخطوة لمساعدتك على إتقان ميزات API إضافية واستكشاف أساليب تنفيذ بديلة في مشاريعك. + +- [How to create barcode quiet zone for Code 16K using Aspose.BarCode for .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [How to create dotcode extended codetext with Aspose.BarCode for .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [How to Set Border for ITF-14 Barcode Customization](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/chinese/net/compact-pdf417-encoding/_index.md b/barcode/chinese/net/compact-pdf417-encoding/_index.md index 165dd64a9..6464a58bc 100644 --- a/barcode/chinese/net/compact-pdf417-encoding/_index.md +++ b/barcode/chinese/net/compact-pdf417-encoding/_index.md @@ -85,7 +85,9 @@ Aspose.BarCode 允许您设置 `Pdf417ErrorCorrectionLevel` 属性(0‑8)。 ### [创建紧凑 PDF417 条形码](./compact-pdf417-basic-configuration/) -了解如何使用 Aspose.BarCode for .NET 生成紧凑 PDF417 条形码。提供完整的分步指南和代码示例。 +### [在 C# 中生成 PDF417 条形码 – 条码生成器指南](./generate-pdf417-barcode-in-c-barcode-generator-guide/) + +### [如何在 C# 中保存条形码图像 – 完整指南](./how-to-save-barcode-images-in-c-complete-guide/) ## 常见问题 @@ -115,4 +117,4 @@ Aspose.BarCode 允许您设置 `Pdf417ErrorCorrectionLevel` 属性(0‑8)。 {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/chinese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/chinese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..bf3fa4bdf --- /dev/null +++ b/barcode/chinese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,109 @@ +--- +category: general +date: 2026-08-06 +description: 使用条形码生成器在 C# 中生成 PDF417 条码的教程。了解如何生成 PDF417 条码、设置二进制模式并保存为 PNG。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: zh +lastmod: 2026-08-06 +og_description: 使用 BarcodeGenerator 在 C# 中生成 PDF417 条码。了解如何设置二进制编码、配置 PDF417 选项,并将条码保存为 + PNG 图像。 +og_image_alt: Generate PDF417 barcode example +og_title: 在 C# 中生成 PDF417 条码 – 完整条码生成指南 +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: 在 C# 中生成 PDF417 条码 – 条码生成器指南 +url: /zh/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# 在 C# 中生成 PDF417 条形码 – 条形码生成器指南 + +如果您需要在 .NET 应用程序中**生成 PDF417 条形码**,本指南将向您展示具体步骤。使用 Aspose.BarCode 库,您可以对二进制数据进行编码,将 PDF417 编码器切换到二进制模式,并仅用几行 C# 代码输出高分辨率 PNG 图像。 + +本教程涵盖了从安装 NuGet 包到自定义 PDF417 设置以及处理空数据或不支持字符等边缘情况的全部内容。阅读完本指南后,您将拥有一个完整、可运行的示例,能够直接放入任何 C# 项目中使用。 + +**您将学习** + +* 安装并引用条形码生成器 C# PDF417 包。 +* 准备用于编码的二进制数据。 +* 配置 `BarcodeGenerator` 以进行二进制 PDF417 编码。 +* 将生成的条形码保存为 PNG 文件并验证结果。 + +> **先决条件** – .NET 6.0 或更高版本,Visual Studio 2022(或您喜欢的任何 IDE),以及用于获取 NuGet 包的互联网连接。 + +--- + +## 步骤 1:安装 Aspose.BarCode NuGet 包 + +在 C# 中处理 PDF417 条形码的最可靠方式是 **Aspose.BarCode** 库,它完全支持二进制编码。 + +```bash +dotnet add package Aspose.BarCode +``` + +*为什么需要此步骤?* +`BarcodeGenerator` 类位于 `Aspose.BarCode` 命名空间中。添加该包可确保在编译时拥有所有必需的 DLL,并且您能够获得最新的错误修复和性能改进。 + +--- + +## 步骤 2:创建新控制台项目(可选但推荐) + +如果您想单独测试代码,请启动一个全新的控制台应用程序: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +将包添加到项目中(如果尚未执行,请重复步骤 1 中的命令)。 + +--- + +## 步骤 3:准备要编码的二进制数据 + +当您将编码模式设置为 **Binary** 时,PDF417 可以编码原始字节。下面是一个演示该过程的简单字节数组。 + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*为什么使用二进制数据?* +二进制模式允许您存储任意字节序列——这对于嵌入文件、加密密钥或非纯文本的自定义负载非常有用。 + +--- + +## 步骤 4:初始化条形码生成器并将 PDF417 配置为二进制模式 + + + +## 接下来您应该学习什么? + +以下教程涵盖了与本指南演示的技术密切相关的主题。每个资源都包含完整的可运行代码示例和逐步说明,帮助您掌握更多 API 功能并在自己的项目中探索替代实现方案。 + +- [如何使用 Aspose.BarCode 创建条形码 – 紧凑型 PDF417](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [如何生成 PDF417 条形码 – 紧凑型 PDF417 编码](/barcode/english/net/compact-pdf417-encoding/) +- [如何使用 Aspose.BarCode for .NET 生成具有自定义宽高比的 Aztec 条形码](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/chinese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/chinese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..0c9089c7b --- /dev/null +++ b/barcode/chinese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,233 @@ +--- +category: general +date: 2026-08-06 +description: 如何在 C# 中使用 MicroPdf417 并进行 Code 128 仿真来保存条码图像。了解如何生成 PDF417 条码并自定义设置。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: zh +lastmod: 2026-08-06 +og_description: 如何使用 MicroPdf417 和 Code 128 仿真在 C# 中快速保存条形码图像。遵循本指南生成 PDF417 条形码并自定义输出。 +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: 如何在 C# 中保存条形码图像——一步步指南 +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: 如何在 C# 中保存条形码图像——完整指南 +url: /zh/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# 如何在 C# 中保存条形码图像 – 完整指南 + +如果您需要 **how to save barcode** 图像在 .NET 应用程序中,本教程提供了一个可直接运行的解决方案。您将学习如何生成 PDF417 条形码、应用 Code 128 仿真,并将生成的 PNG 文件写入磁盘。 + +示例使用 Aspose.BarCode for .NET 库,该库支持 MicroPdf417、Code 128 以及许多其他标准。完成本指南后,您可以为模式 908、 909、 910 和 911 生成条形码文件,并了解如何调整视觉参数以获得最佳扫描效果。 + +## 前置条件 + +在开始之前,请确保您已具备: + +* 已安装 .NET 6.0 SDK 或更高版本 +* Visual Studio 2022(或任何支持 C# 的 IDE) +* 有效的 Aspose.BarCode for .NET 许可证(免费试用版可用于开发) + +本教程假设您对 C# 控制台项目有基本了解。 + +## 步骤 1:创建新控制台项目并添加 BarCode 包 + +打开终端并运行以下命令: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +`dotnet add package` 命令会下载最新的 Aspose.BarCode 库,其中包含您需要的 **how to generate pdf417** 条形码类。 + +## 步骤 2:编写完整程序 + +创建一个名为 `Program.cs` 的文件(替换现有文件),并粘贴以下代码。该程序演示了 **barcode generator with code128** 仿真,并展示了多种 **how to save barcode** 图像的方式。 + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### 代码工作原理 + +* **单一生成器实例** – 重复使用 `BarcodeGenerator` 可避免重复的内存分配,并在各模式之间保持配置一致。 +* **XDimension** – 将像素大小设为 2 可得到清晰、可读的图像,同时不会显著增大文件体积。 +* **IsCode128Emulation** – 在 PDF417 符号内部启用 Code 128 样式的条纹模式,某些扫描器对其解析更可靠。 +* **Save 方法** – 您看到的 `Save` 重载是 **how to save barcode** 文件的规范方式;它会直接以指定格式将图像写入文件系统。 + +## 步骤 3:运行程序并验证输出 + +构建并执行项目: + +```bash +dotnet run +``` + +当控制台打印确认信息后,打开您在 `outputPath` 中设置的文件夹。您应该会看到四个 PNG 文件: + +* `MicroPdf417_Code128_908.png` – FNC1 + 字母数字指示符 +* `MicroPdf417_Code128_909.png` – FNC1 + 数字指示符 +* `MicroPdf417_Code128_910.png` – 纯 Code 128 负载 + +每个图像都包含一个可被标准条形码阅读器扫描的 MicroPdf417 符号。如果扫描器无法读取某个文件,请考虑增大 `XDimension.Pixels` 或调整 `Pdf417.Columns` 以匹配目标设备的分辨率。 + +## 步骤 4:常见变体和边缘情况 + +### 更改图像格式 + +`BarCodeImageFormat` 枚举支持 PNG、JPEG、BMP 和 TIFF。如果需要更小的文件用于网页传输,可将 `BarCodeImageFormat.Png` 替换为 `BarCodeImageFormat.Jpeg`。 + +### 生成完整大小的 PDF417 而非 MicroPdf417 + +如果您的使用场景需要更大的 PDF417 标准,请使用 `EncodeTypes.Pdf417` 实例化生成器: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +记得相应地调整 `Pdf417.Rows` 和 `Pdf417.Columns`,以符合 ISO/IEC 15417 规范。 + +### 处理特殊字符 + +组分隔符(`\u001d`)是应用标识符所必需的。如果您的数据包含其他控制字符,请使用 Unicode 表示法进行转义(例如,`\u001c` 表示文件分隔符),以避免运行时错误。 + +### 许可证注意事项 + +在没有许可证的情况下运行代码会在生成的图像上添加水印。请在 `Main` 方法的开头尽早应用许可证: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## 步骤 5:生产环境使用技巧 + +* **批量处理** – 将保存逻辑包装在循环中,从 CSV 或数据库读取行;复用同一个 `BarcodeGenerator` 实例以提升性能。 +* **线程安全** – `BarcodeGenerator` 不是线程安全的。如果并行生成条形码,请为每个线程创建单独的实例。 +* **错误处理** – 将 `Save` 调用放入 `try…catch` 块中,以捕获 I/O 异常,尤其是在写入网络共享时。 + +## 结论 + +现在,您已经掌握了使用 Aspose.BarCode 在 C# 中 **how to save barcode** 图像的方法,了解了 **how to generate pdf417** 符号的 Code 128 仿真,并能够为多种模式配置 **barcode generator with code128**。完整、可运行的示例展示了从项目设置到最终 PNG 文件的每一步。 + +接下来,您可以探索以下相关主题,如 **在 PDF 文档中嵌入条形码**、**使用自定义颜色创建 QR 码**,或 **将条形码生成集成到 ASP.NET Core API**。这些扩展基于本指南的相同原理,帮助您实现更广泛的扫描工作流自动化。 + +## 接下来应该学习什么? + +以下教程涵盖了与本指南紧密相关的主题,构建在本教程演示的技术之上。每个资源都提供完整的可运行代码示例和逐步解释,帮助您掌握更多 API 功能并在项目中探索替代实现方式。 + +- [How to Generate PDF417 Barcodes – Compact PDF417 Encoding](/barcode/english/net/compact-pdf417-encoding/) +- [How to Save PNG using DataMatrix C40 with Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [How to Generate Barcode - One-Dimensional Barcode Types](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/chinese/net/one-dimensional-barcode-types/_index.md b/barcode/chinese/net/one-dimensional-barcode-types/_index.md index 78607b4f1..b49911f75 100644 --- a/barcode/chinese/net/one-dimensional-barcode-types/_index.md +++ b/barcode/chinese/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ url: /zh/net/one-dimensional-barcode-types/ 了解如何使用 Aspose.BarCode for .NET 生成一维条形码时处理异常。本分步指南可确保条码解决方案具有容错性。现在就开始! ### [一维宽窄比配置](./one-dimensional-wide-narrow-ratio-configuration/) 使用 Aspose.BarCode for .NET 轻松生成自定义条形码。一维宽窄比配置的分步指南。 +### [在 C# 中设置条形码 – 完整 Aspose.BarCode 指南](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +了解如何在 C# 中使用 Aspose.BarCode 完整设置条形码的指南。 ## 结论 @@ -89,4 +91,4 @@ url: /zh/net/one-dimensional-barcode-types/ {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/chinese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/chinese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..392713435 --- /dev/null +++ b/barcode/chinese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,159 @@ +--- +category: general +date: 2026-08-06 +description: 如何在 C# 中使用 Aspose.BarCode 设置条形码。学习如何更改宏字符并通过一步步代码生成条形码图像。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: zh +lastmod: 2026-08-06 +og_description: 如何在 C# 中使用 Aspose.BarCode 设置条形码。本指南快速演示如何更改宏字符并生成条形码图像。 +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: 如何在 C# 中设置条形码 – Aspose.BarCode 教程 +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: 如何在 C# 中设置条形码 – 完整的 Aspose.BarCode 指南 +url: /zh/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# 如何在 C# 中设置条形码 – 完整 Aspose.BarCode 指南 + +如果您需要在 .NET 应用程序中 **how to set barcode**,本教程将展示使用 Aspose.BarCode 的完整步骤。您将看到如何更改宏字符、调整可视参数,以及 **create barcode image C#** 文件并直接保存到磁盘。 + +本指南涵盖了从安装库到生成两个具有不同宏值的 MicroPDF417 条形码的全部过程。无需查阅外部文档——复制代码、运行即可立即验证 PNG 输出。 + +## 前置条件 + +开始之前,请确保您具备: + +* .NET 6.0 或更高版本(示例使用控制台项目) +* Visual Studio 2022 或任意 C# IDE +* 有效的 Aspose.BarCode 许可证(免费评估版可用于测试) +* 基本的 C# 语法知识 + +您还需要安装 NuGet 包: + +```bash +dotnet add package Aspose.BarCode +``` + +## 设置条形码参数 – 步骤 1:创建生成器 + +首先需要实例化一个 `BarcodeGenerator`,并指定所需的符号类型和数据。使用 `EncodeTypes.MicroPdf417` 可让 Aspose.BarCode 生成紧凑的 PDF417 变体。 + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**为什么这很重要:** `BarcodeGenerator` 是核心对象;后续所有设置都会修改其 `Parameters` 属性。选择正确的 `EncodeTypes` 可确保条形码符合 MicroPDF417 规范。 + +## 更改宏字符 – 步骤 2:调整可视参数 + +宏字符是可选的控制码,用于将多个 PDF417 符号串联起来。示例在 `Macro05` 与 `Macro06` 之间切换。您还可以设置模块宽度(`XDimension`)以及列数,以控制条形码的尺寸。 + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**更改宏的原因:** 宏字符告诉扫描仪此条形码是更大数据集的一部分。切换宏演示了相同数据如何关联到不同的宏标识符。 + +## 设置条形码 – 步骤 3:生成具有不同宏的第二个条形码 + +此时我们复用同一个 `generator` 实例,只更换宏值。这样可以避免重新创建对象,并展示 **how to set barcode** 参数可以在运行时动态修改。 + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### 预期输出 + +运行程序后,项目文件夹中会生成两个 PNG 文件: + +* `MicroPdf417_Macro05.png` – 带有 Macro05 的条形码 +* `MicroPdf417_Macro06.png` – 带有 Macro06 的条形码 + +两张图片均显示 **compact MicroPDF417** 符号,编码内容为 `12345ABC`。您可以使用任意图像查看器打开 PNG 文件,以验证视觉质量。 + +## Barcode generator C# 最佳实践 + +* **复用生成器:** 在已有实例上修改 `Parameters` 比为每个条形码创建新生成器更高效。 +* **提前设置 X‑dimension:** 模块宽度会影响整体图像尺寸,请在保存前进行调整。 +* **验证宏使用情况:** 并非所有扫描仪都支持宏字符。若计划在生产环境使用,请在目标硬件上进行测试。 +* **释放资源:** `BarcodeGenerator` 实现了 `IDisposable`。在长期运行的服务中,请使用 `using` 块或在完成后调用 `Dispose()`。 + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## 创建条形码图像 C# – 故障排查技巧 + +| 症状 | 可能原因 | 解决方案 | +|--------------------------------------|------------------------------------------|----------| +| 空白 PNG 文件 | `XDimension` 设置为 0 或数值过大 | 使用合理的像素宽度(1‑5) | +| 扫描仪无法读取条形码 | 宏字符不符合扫描仪要求 | 查阅扫描仪文档;如不需要可使用 `MacroNone` | +| 异常 `ArgumentOutOfRangeException` | 列数超出允许范围(1‑30) | 将 `Columns` 保持在 1 到 30 之间 | + +## 结论 + +现在您已经掌握了 **how to set barcode** 的属性设置、**how to change macro** 字符的修改方法,以及使用 Aspose.BarCode **create barcode image C#** 文件的完整流程。完整可运行的示例展示了从生成器创建到图像导出的全套工作流。 + +接下来,您可以探索其他符号类型(如 `EncodeTypes.QR`、`EncodeTypes.Code128`),或使用 Aspose.PDF 将条形码直接嵌入 PDF。上述主题均属于更广泛的 **barcode generator c#** 生态系统,可通过少量代码改动轻松加入本项目。 + +祝编码愉快,欢迎尝试不同的宏值、尺寸和输出格式! + +## 接下来您应该学习什么? + +以下教程涵盖了与本指南技术紧密相关的主题,帮助您进一步掌握 API 功能并在项目中尝试替代实现方式,每篇资源均提供完整可运行的代码示例和逐步说明。 + +- [How to create barcode quiet zone for Code 16K using Aspose.BarCode for .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [How to create dotcode extended codetext with Aspose.BarCode for .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [How to Set Border for ITF-14 Barcode Customization](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/czech/net/compact-pdf417-encoding/_index.md b/barcode/czech/net/compact-pdf417-encoding/_index.md index 29de108a1..035b2551f 100644 --- a/barcode/czech/net/compact-pdf417-encoding/_index.md +++ b/barcode/czech/net/compact-pdf417-encoding/_index.md @@ -86,6 +86,12 @@ Mimo základy, zde jsou některé praktické tipy pro zefektivnění vašeho pra ### [Vytváření Compact PDF417 čárových kódů](./compact-pdf417-basic-configuration/) Naučte se generovat Compact PDF417 čárové kódy pomocí Aspose.BarCode pro .NET. Kompletní průvodce s krok‑za‑krokem instrukcemi a ukázkami kódu. +### [Generování PDF417 čárového kódu v C# – průvodce generátorem čárových kódů](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +Naučte se generovat PDF417 čárový kód v C# pomocí generátoru čárových kódů. + +### [Jak uložit obrázky čárových kódů v C# – kompletní průvodce](./how-to-save-barcode-images-in-c-complete-guide/) +Kompletní návod, jak v C# uložit vygenerované čárové kódy jako obrázky v různých formátech. + ## Často kladené otázky **Q:** Jaké je maximální množství dat, která mohu uložit do Compact PDF417 čárového kódu? @@ -114,4 +120,4 @@ Naučte se generovat Compact PDF417 čárové kódy pomocí Aspose.BarCode pro . {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/czech/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/czech/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..805d8c1cc --- /dev/null +++ b/barcode/czech/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,113 @@ +--- +category: general +date: 2026-08-06 +description: Vytvořte čárový kód PDF417 v C# pomocí generátoru čárových kódů – tutoriál + PDF417 v C#. Naučte se, jak generovat čárový kód PDF417, nastavit binární režim + a uložit jej jako PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: cs +lastmod: 2026-08-06 +og_description: Vytvořte čárový kód PDF417 v C# pomocí BarcodeGenerator. Naučte se + nastavit binární kódování, konfigurovat možnosti PDF417 a uložit čárový kód jako + PNG obrázek. +og_image_alt: Generate PDF417 barcode example +og_title: Generování PDF417 čárového kódu v C# – kompletní průvodce generátorem čárových + kódů +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: Generování PDF417 čárového kódu v C# – průvodce generátorem čárových kódů +url: /cs/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Generování čárového kódu PDF417 v C# – průvodce generátorem čárových kódů + +Pokud potřebujete **generovat čárový kód PDF417** v .NET aplikaci, tento průvodce vám přesně ukáže, jak na to. Pomocí knihovny Aspose.BarCode můžete kódovat binární data, přepnout enkodér PDF417 do binárního režimu a vygenerovat vysoce rozlišený PNG obrázek během několika řádků C#. + +Tento tutoriál pokrývá vše od instalace NuGet balíčku po přizpůsobení nastavení PDF417 a řešení okrajových případů, jako jsou prázdná data nebo nepodporované znaky. Na konci průvodce budete mít kompletní, spustitelný příklad, který můžete vložit do libovolného C# projektu. + +**Co se naučíte** + +* Nainstalovat a odkazovat na balíček generátoru čárových kódů C# PDF417. +* Připravit binární data pro kódování. +* Nastavit `BarcodeGenerator` pro binární kódování PDF417. +* Uložit vygenerovaný čárový kód jako PNG soubor a ověřit výsledek. + +> **Předpoklady** – .NET 6.0 nebo novější, Visual Studio 2022 (nebo jakékoli IDE dle vašeho výběru) a internetové připojení pro stažení NuGet balíčku. + +--- + +## Krok 1: Instalace NuGet balíčku Aspose.BarCode + +Nejspolehlivějším způsobem práce s čárovými kódy PDF417 v C# je knihovna **Aspose.BarCode**, která plně podporuje binární kódování. + +```bash +dotnet add package Aspose.BarCode +``` + +*Proč je tento krok důležitý?* +Třída `BarcodeGenerator` se nachází v namespace `Aspose.BarCode`. Přidání balíčku zajistí, že všechny potřebné DLL jsou k dispozici při kompilaci a že získáte nejnovější opravy chyb a vylepšení výkonu. + +--- + +## Krok 2: Vytvoření nového konzolového projektu (volitelné, ale doporučené) + +Pokud testujete kód izolovaně, začněte novou konzolovou aplikací: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Přidejte balíček do projektu (opakujte příkaz z Kroku 1, pokud jste tak ještě neučinili). + +--- + +## Krok 3: Připravte binární data k zakódování + +PDF417 může kódovat surové bajty, pokud nastavíte režim kódování na **Binary**. Níže je jednoduché pole bajtů, které proces demonstruje. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Proč binární data?* +Binární režim vám umožní uložit libovolnou sekvenci bajtů – užitečné pro vkládání souborů, šifrovacích klíčů nebo vlastních payloadů, které nejsou prostým textem. + +--- + +## Krok 4: Inicializace generátoru čárových kódů a nastavení PDF417 do binárního režimu + + + +## Co byste se měli naučit dál? + +Následující tutoriály pokrývají úzce související témata, která staví na technikách předvedených v tomto průvodci. Každý zdroj obsahuje kompletní funkční ukázky kódu s podrobnými vysvětleními, které vám pomohou zvládnout další funkce API a prozkoumat alternativní přístupy k implementaci ve vašich projektech. + +- [Jak vytvořit čárový kód – Kompaktní PDF417 s Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [Jak generovat čárové kódy PDF417 – Kompaktní PDF417 kódování](/barcode/english/net/compact-pdf417-encoding/) +- [Jak generovat Aztec čárový kód s vlastním poměrem stran pomocí Aspose.BarCode pro .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/czech/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/czech/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..479d2109f --- /dev/null +++ b/barcode/czech/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,236 @@ +--- +category: general +date: 2026-08-06 +description: Jak uložit obrázky čárových kódů v C# pomocí MicroPdf417 s emulací Code 128. + Naučte se generovat čárové kódy PDF417 a přizpůsobit nastavení. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: cs +lastmod: 2026-08-06 +og_description: Jak rychle uložit obrázky čárových kódů v C# pomocí MicroPdf417 a + emulace Code 128. Postupujte podle tohoto návodu k vytvoření PDF417 čárových kódů + a přizpůsobení výstupu. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: Jak uložit obrázky čárových kódů v C# – krok za krokem +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: Jak uložit obrázky čárových kódů v C# – kompletní průvodce +url: /cs/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Jak uložit obrázky čárových kódů v C# – kompletní průvodce + +Pokud potřebujete **jak uložit čárový kód** obrázky v .NET aplikaci, tento tutoriál vám ukáže připravené řešení. Naučíte se generovat PDF417 čárové kódy, použít emulaci Code 128 a zapsat vzniklé PNG soubory na disk. + +Příklad používá knihovnu Aspose.BarCode pro .NET, která podporuje MicroPdf417, Code 128 a mnoho dalších standardů. Na konci průvodce budete schopni vytvořit soubory čárových kódů pro režimy 908, 909, 910 a 911 a pochopíte, jak upravit vizuální parametry pro optimální skenování. + +## Požadavky + +Než začnete, ujistěte se, že máte: + +* .NET 6.0 SDK nebo novější nainstalovaný +* Visual Studio 2022 (nebo jakékoli IDE podporující C#) +* Aktivní licenci Aspose.BarCode pro .NET (bezplatná zkušební verze stačí pro vývoj) + +Tutoriál předpokládá základní znalost C# konzolových projektů. + +## Krok 1: Vytvořte nový konzolový projekt a přidejte balíček BarCode + +Otevřete terminál a spusťte následující příkazy: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +Příkaz `dotnet add package` stáhne nejnovější knihovnu Aspose.BarCode, která obsahuje třídy, které potřebujete k **jak generovat pdf417** čárovým kódům. + +## Krok 2: Napište kompletní program + +Vytvořte soubor s názvem `Program.cs` (nahraďte existující) a vložte níže uvedený kód. Program demonstruje **generátor čárových kódů s code128** emulaci a ukazuje několik způsobů, jak **uložit čárový kód** obrázky. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Proč tento kód funguje + +* **Single generator instance** – Opakované používání `BarcodeGenerator` zabraňuje opakované alokaci paměti a udržuje konfiguraci konzistentní napříč režimy. +* **XDimension** – Nastavení velikosti pixelu na 2 poskytuje čistý, čitelný obrázek bez nafouknutí velikosti souboru. +* **IsCode128Emulation** – Umožňuje vzory pruhů ve stylu Code 128 uvnitř symbolu PDF417, které některé skenery interpretují spolehlivěji. +* **Save method** – Přetížení `Save`, které vidíte, je kanonický způsob, jak **uložit čárový kód** soubory; zapisuje obrázek přímo do souborového systému ve formátu, který specifikujete. + +## Krok 3: Spusťte program a ověřte výstup + +Sestavte a spusťte projekt: + +```bash +dotnet run +``` + +Po vytištění potvrzovacích zpráv v konzoli otevřete složku, kterou jste nastavili v `outputPath`. Měli byste vidět čtyři PNG soubory: + +* `MicroPdf417_Code128_908.png` – FNC1 + alfanumerický indikátor +* `MicroPdf417_Code128_909.png` – FNC1 + číselný indikátor +* `MicroPdf417_Code128_910.png` – čistý Code 128 payload + +Každý obrázek obsahuje symbol MicroPdf417, který lze skenovat standardními čtečkami čárových kódů. Pokud skener nedokáže soubor přečíst, zvažte zvýšení `XDimension.Pixels` nebo úpravu `Pdf417.Columns`, aby odpovídaly rozlišení cílového zařízení. + +## Krok 4: Běžné varianty a okrajové případy + +### Změna formátu obrázku + +Výčtový typ `BarCodeImageFormat` podporuje PNG, JPEG, BMP a TIFF. Nahraďte `BarCodeImageFormat.Png` za `BarCodeImageFormat.Jpeg`, pokud potřebujete menší velikost souboru pro webové doručení. + +### Generování plno‑velikostního PDF417 místo MicroPdf417 + +Pokud váš případ použití vyžaduje větší standard PDF417, vytvořte generátor s `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +Nezapomeňte upravit `Pdf417.Rows` a `Pdf417.Columns`, aby splňovaly specifikace ISO/IEC 15417. + +### Zpracování speciálních znaků + +Oddělovač skupin (`\u001d`) je vyžadován pro identifikátory aplikací. Pokud vaše data obsahují jiné řídicí znaky, escapujte je pomocí Unicode notace (např. `\u001c` pro oddělovač souborů), aby nedošlo k chybám za běhu. + +### Úvahy o licenci + +Spuštění kódu bez licence způsobí vodoznak na generovaných obrázcích. Aplikujte svou licenci co nejdříve v `Main`: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Krok 5: Tipy pro produkční použití + +* **Batch processing** – Zabalte logiku ukládání do smyčky, která čte řádky z CSV nebo databáze; pro výkon znovu použijte stejnou instanci `BarcodeGenerator`. +* **Thread safety** – `BarcodeGenerator` není thread‑safe. Vytvořte samostatnou instanci pro každý vlákný, pokud paralelizujete tvorbu čárových kódů. +* **Error handling** – Obalte volání `Save` do bloků `try…catch`, abyste zachytili I/O výjimky, zejména při zápisu na síťové sdílení. + +## Závěr + +Nyní víte, **jak uložit čárový kód** obrázky v C# pomocí Aspose.BarCode, **jak generovat pdf417** symboly s emulací Code 128 a jak nakonfigurovat **generátor čárových kódů s code128** pro více režimů. Kompletní, spustitelný příklad ukazuje každý krok od nastavení projektu až po finální PNG soubory. + +Dále prozkoumejte související témata, jako je **vkládání čárových kódů do PDF dokumentů**, **vytváření QR kódů s vlastními barvami** nebo **integrace generování čárových kódů do ASP.NET Core API**. Tyto rozšíření staví na stejných principech, které jsou zde popsány, a umožní vám automatizovat širokou škálu skenovacích pracovních postupů. + +## Co byste se měli naučit dál? + +Následující tutoriály pokrývají úzce související témata, která staví na technikách předvedených v tomto průvodci. Každý zdroj obsahuje kompletní funkční ukázky kódu s podrobnými vysvětleními, aby vám pomohl zvládnout další funkce API a prozkoumat alternativní přístupy ve vašich vlastních projektech. + +- [Jak generovat PDF417 čárové kódy – Kompaktní PDF417 kódování](/barcode/english/net/compact-pdf417-encoding/) +- [Jak uložit PNG pomocí DataMatrix C40 s Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [Jak generovat čárový kód – Jednorozměrné typy čárových kódů](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/czech/net/one-dimensional-barcode-types/_index.md b/barcode/czech/net/one-dimensional-barcode-types/_index.md index 7d07268a4..eec325a3e 100644 --- a/barcode/czech/net/one-dimensional-barcode-types/_index.md +++ b/barcode/czech/net/one-dimensional-barcode-types/_index.md @@ -78,10 +78,12 @@ vydělávejte, jak generovat čárové kódy v .NET s Aspose.BarCode pro .NET. T Naučte se, jak zacházet s výjimkami při generování jednorozměrných čárových kódů pomocí Aspose.BarCode for .NET. Tento průvodce krok za krokem zajišťuje řešení čárových kódů odolné proti chybám. Začněte hned! ### [Konfigurace jednorozměrného širokoúhlého poměru](./one-dimensional-wide-narrow-ratio-configuration/) Snadno generujte přizpůsobené čárové kódy pomocí Aspose.BarCode pro .NET. Průvodce krok za krokem pro jednorozměrnou konfiguraci širokého a úzkého poměru. +### [Jak nastavit čárový kód v C# – kompletní průvodce Aspose.BarCode](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Kompletní návod, jak v C# nastavit čárový kód pomocí Aspose.BarCode. ## Závěr -V této sérii výukových programů jsme se ponořili do světa jednorozměrných typů čárových kódů a zaměřili jsme se na jejich konfiguraci a přizpůsobení. S Aspose.BarCode for .NET je tento proces jednoduchý a zajišťuje, že můžete vytvářet čárové kódy přizpůsobené vašim potřebám. Takže, ať už jste zkušený vývojář nebo teprve začínáte, tyto výukové programy vám umožní využít sílu jednorozměrných čárových kódů ve vašich projektech .NET. Začněte hned a uvolněte potenciál technologie čárových kódů! +V této sérii výukových programů jsme se ponořili do světa jednorozměrných typů čárových kódů a zaměřili se na jejich konfiguraci a přizpůsobení. S Aspose.BarCode for .NET je tento proces jednoduchý a zajišťuje, že můžete vytvářet čárové kódy přizpůsobené vašim potřebám. Takže, ať už jste zkušený vývojář nebo teprve začínáte, tyto výukové programy vám umožní využít sílu jednorozměrných čárových kódů ve vašich projektech .NET. Začněte hned a uvolněte potenciál technologie čárových kódů! tímto článkem získáte nejen znalosti o různých typech jednorozměrných čárových kódů, ale také sebevědomí je implementovat do svých projektů. Šťastné kódování! {{< /blocks/products/pf/tutorial-page-section >}} @@ -89,4 +91,4 @@ tímto článkem získáte nejen znalosti o různých typech jednorozměrných {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/czech/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/czech/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..8f6d33914 --- /dev/null +++ b/barcode/czech/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,161 @@ +--- +category: general +date: 2026-08-06 +description: Jak nastavit čárový kód pomocí Aspose.BarCode v C#. Naučte se, jak změnit + makroznaky a vytvořit obrázek čárového kódu v C# s podrobným krok‑za‑krokem kódem. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: cs +lastmod: 2026-08-06 +og_description: Jak nastavit čárový kód pomocí Aspose.BarCode v C#. Tento průvodce + ukazuje, jak rychle změnit makroznaky a vytvořit obrázek čárového kódu v C#. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: Jak nastavit čárový kód v C# – návod Aspose.BarCode +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: Jak nastavit čárový kód v C# – kompletní průvodce Aspose.BarCode +url: /cs/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Jak nastavit čárový kód v C# – kompletní průvodce Aspose.BarCode + +Pokud potřebujete **jak nastavit čárový kód** v .NET aplikaci, tento tutoriál vám ukáže přesné kroky pomocí Aspose.BarCode. Uvidíte, jak změnit makro znaky, upravit vizuální parametry a **vytvořit soubory s obrázkem čárového kódu v C#**, které lze uložit přímo na disk. + +Průvodce pokrývá vše od instalace knihovny až po generování dvou MicroPDF417 čárových kódů s různými makro hodnotami. Není potřeba žádná externí dokumentace – můžete zkopírovat kód, spustit jej a okamžitě ověřit výstup PNG. + +## Požadavky + +Než začnete, ujistěte se, že máte: + +* .NET 6.0 nebo novější (příklad používá konzolový projekt) +* Visual Studio 2022 nebo jakékoli C# IDE +* Aktivní licence Aspose.BarCode (pro testování funguje bezplatná zkušební verze) +* Základní znalost syntaxe C# + +Budete také potřebovat NuGet balíček: + +```bash +dotnet add package Aspose.BarCode +``` + +## Jak nastavit parametry čárového kódu – krok 1: vytvořit generátor + +Prvním krokem je vytvořit instanci `BarcodeGenerator` s požadovanou symbologií a daty. Použití `EncodeTypes.MicroPdf417` říká Aspose.BarCode, aby vytvořil kompaktní variantu PDF417. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Proč je to důležité:** `BarcodeGenerator` je centrální objekt; všechny následné nastavení upravují jeho vlastnost `Parameters`. Výběrem správného `EncodeTypes` zajistíte, že čárový kód bude odpovídat specifikaci MicroPDF417. + +## Jak změnit makro znaky – krok 2: upravit vizuální parametry + +Makro znaky jsou volitelné řídicí kódy, které umožňují spojovat více symbolů PDF417. Příklad přepíná mezi `Macro05` a `Macro06`. Také nastavujete šířku modulu (`XDimension`) a počet sloupců pro řízení velikosti čárového kódu. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Proč měníte makro:** Makro znak informuje skener, že tento čárový kód je součástí většího datového souboru. Přepnutím ukazujete, jak lze stejná data propojit s různými makro identifikátory. + +## Jak nastavit čárový kód – krok 3: vygenerovat druhý čárový kód s jiným makrem + +Nyní znovu použijeme stejnou instanci `generator`, pouze vyměníme hodnotu makra. Tím se vyhneme opětovnému vytváření objektu a ukazuje, že **jak nastavit čárový kód** parametry lze provést za běhu. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Očekávaný výstup + +Spuštěním programu se v adresáři projektu vytvoří dva PNG soubory: + +* `MicroPdf417_Macro05.png` – čárový kód s Macro05 +* `MicroPdf417_Macro06.png` – čárový kód s Macro06 + +Oba obrázky zobrazují kompaktní symbol MicroPDF417, který kóduje `12345ABC`. PNG soubory můžete otevřít v libovolném prohlížeči obrázků a ověřit vizuální kvalitu. + +## Nejlepší postupy pro generátor čárových kódů v C# + +* **Znovu použijte generátor:** Změna `Parameters` na existující instanci je efektivnější než vytváření nového generátoru pro každý čárový kód. +* **Nastavte X‑dimension brzy:** Šířka modulu ovlivňuje celkovou velikost obrázku; upravte ji před uložením. +* **Ověřte použití makra:** Ne všechny skenery podporují makro znaky. Otestujte s vaším cílovým hardwarem, pokud je plánujete používat v produkci. +* **Uvolněte prostředky:** `BarcodeGenerator` implementuje `IDisposable`. V dlouho běžící službě jej obalte do bloku `using` nebo zavolejte `Dispose()` po dokončení. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Vytvoření obrázku čárového kódu v C# – tipy pro řešení problémů + +| Symptom | Pravděpodobná příčina | Řešení | +|--------------------------------------|----------------------------------------------------|--------| +| Prázdný PNG soubor | `XDimension` nastaven na 0 nebo velmi vysokou hodnotu | Použijte rozumnou šířku pixelu (1‑5) | +| Čárový kód nečitelný skenerem | Špatný makro znak pro skener | Ověřte dokumentaci skeneru; použijte `MacroNone`, pokud není potřeba | +| Výjimka `ArgumentOutOfRangeException` | Počet sloupců mimo povolený rozsah (1‑30) | Udržujte `Columns` mezi 1 a 30 | + +## Závěr + +Nyní znáte **jak nastavit čárový kód** vlastnosti, **jak změnit makro** znaky a jak **vytvořit soubory s obrázkem čárového kódu v C#** pomocí Aspose.BarCode. Kompletní, spustitelný příklad demonstruje celý pracovní postup od vytvoření generátoru po export obrázku. + +Dále prozkoumejte další symbologie (`EncodeTypes.QR`, `EncodeTypes.Code128`) nebo vložte čárový kód přímo do PDF pomocí Aspose.PDF. Obě témata spadají do širšího ekosystému **barcode generator c#** a lze je přidat do tohoto projektu s minimálními změnami kódu. + +Šťastné programování a neváhejte experimentovat s různými makro hodnotami, rozměry a výstupními formáty! + +## Co byste se měli naučit dál? + +Následující tutoriály pokrývají úzce související témata, která staví na technikách předvedených v tomto průvodci. Každý zdroj obsahuje kompletní funkční příklady kódu s podrobnými vysvětleními, které vám pomohou zvládnout další funkce API a prozkoumat alternativní přístupy k implementaci ve vašich projektech. + +- [Jak vytvořit tichou zónu čárového kódu pro Code 16K pomocí Aspose.BarCode pro .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [Jak vytvořit rozšířený kódový text dotcode s Aspose.BarCode pro .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [Jak nastavit okraj pro přizpůsobení čárového kódu ITF-14](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/dutch/net/compact-pdf417-encoding/_index.md b/barcode/dutch/net/compact-pdf417-encoding/_index.md index 64f0fba6f..2a5cf27cb 100644 --- a/barcode/dutch/net/compact-pdf417-encoding/_index.md +++ b/barcode/dutch/net/compact-pdf417-encoding/_index.md @@ -84,6 +84,14 @@ Voorbij de basis, hier zijn enkele praktische tips om je workflow te stroomlijne Leer hoe je Compact PDF417 barcodes genereert met Aspose.BarCode voor .NET. Uitgebreide gids met stap‑voor‑stap instructies en code‑voorbeelden. +### [Genereer PDF417 barcode in C# – barcodegenerator gids](./generate-pdf417-barcode-in-c-barcode-generator-guide/) + +Leer hoe je een PDF417 barcode genereert in C# met de Aspose.BarCode generator. + +### [Hoe barcode‑afbeeldingen op te slaan in C# – volledige gids](./how-to-save-barcode-images-in-c-complete-guide/) + +Leer hoe je barcode‑afbeeldingen opslaat in C# met Aspose.BarCode, inclusief code‑voorbeelden en best practices. + ## Veelgestelde Vragen **V: Wat is de maximale hoeveelheid data die ik kan opslaan in een Compact PDF417 barcode?** @@ -112,4 +120,4 @@ A: Geen externe lettertypen zijn nodig; de bibliotheek verwerkt alle rendering i {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/dutch/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/dutch/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..1ee2a1fe9 --- /dev/null +++ b/barcode/dutch/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,111 @@ +--- +category: general +date: 2026-08-06 +description: Genereer PDF417‑barcode in C# met een barcode‑generator C# PDF417‑tutorial. + Leer hoe je een PDF417‑barcode genereert, de binaire modus instelt en opslaat als + PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: nl +lastmod: 2026-08-06 +og_description: Genereer PDF417-barcode in C# met BarcodeGenerator. Leer hoe je binaire + codering instelt, PDF417-opties configureert en de barcode opslaat als PNG-afbeelding. +og_image_alt: Generate PDF417 barcode example +og_title: Genereer PDF417-barcode in C# – volledige gids voor barcodegenerator +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: Genereer PDF417-barcode in C# – handleiding voor barcodegenerator +url: /nl/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Genereer PDF417 barcode in C# – barcode generator handleiding + +Als je een **PDF417 barcode** moet genereren in een .NET‑applicatie, laat deze gids je precies zien hoe. Met de Aspose.BarCode‑bibliotheek kun je binaire gegevens coderen, de PDF417‑encoder naar binaire modus schakelen en een high‑resolution PNG‑afbeelding genereren in slechts een paar regels C#. + +Deze tutorial behandelt alles, van het installeren van het NuGet‑pakket tot het aanpassen van de PDF417‑instellingen en het afhandelen van randgevallen zoals lege gegevens of niet‑ondersteunde tekens. Aan het einde van de gids heb je een compleet, uitvoerbaar voorbeeld dat je in elk C#‑project kunt plaatsen. + +**Wat je zult leren** + +* Installeer en verwijs naar het barcode generator C# PDF417‑pakket. +* Bereid binaire gegevens voor op codering. +* Configureer de `BarcodeGenerator` voor binaire PDF417‑codering. +* Sla de gegenereerde barcode op als PNG‑bestand en verifieer het resultaat. + +> **Vereisten** – .NET 6.0 of later, Visual Studio 2022 (of een IDE naar keuze), en een internetverbinding om het NuGet‑pakket te downloaden. + +--- + +## Stap 1: Installeer het Aspose.BarCode NuGet‑pakket + +De meest betrouwbare manier om met PDF417‑barcodes in C# te werken is de **Aspose.BarCode**‑bibliotheek, die volledige ondersteuning biedt voor binaire codering. + +```bash +dotnet add package Aspose.BarCode +``` + +*Waarom deze stap?* +De `BarcodeGenerator`‑klasse bevindt zich in de `Aspose.BarCode`‑namespace. Het toevoegen van het pakket zorgt ervoor dat alle benodigde DLL's beschikbaar zijn tijdens het compileren en dat je de nieuwste bug‑fixes en prestatie‑verbeteringen krijgt. + +--- + +## Stap 2: Maak een nieuw console‑project (optioneel maar aanbevolen) + +Als je de code geïsoleerd test, start dan een nieuw console‑applicatie: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Voeg het pakket toe aan het project (herhaal de opdracht uit Stap 1 als je dat nog niet hebt gedaan). + +--- + +## Stap 3: Bereid binaire gegevens voor om te coderen + +PDF417 kan ruwe bytes coderen wanneer je de encode‑modus instelt op **Binary**. Hieronder staat een eenvoudige byte‑array die het proces demonstreert. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Waarom binaire gegevens?* +Binaire modus laat je elke byte‑reeks opslaan — handig voor het insluiten van bestanden, encryptiesleutels of aangepaste payloads die geen platte tekst zijn. + +--- + +## Stap 4: Initialise de barcode generator en configureer PDF417 voor binaire modus + + + +## Wat moet je hierna leren? + +De volgende tutorials behandelen nauw verwante onderwerpen die voortbouwen op de technieken die in deze gids worden getoond. Elke bron bevat volledige werkende code‑voorbeelden met stap‑voor‑stap uitleg om je te helpen extra API‑functies onder de knie te krijgen en alternatieve implementatie‑benaderingen in je eigen projecten te verkennen. + +- [Hoe maak je een barcode – Compact PDF417 met Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [Hoe PDF417 barcodes te genereren – Compact PDF417 codering](/barcode/english/net/compact-pdf417-encoding/) +- [Hoe een Aztec barcode te genereren met aangepaste beeldverhouding met Aspose.BarCode voor .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/dutch/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/dutch/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..c360cc698 --- /dev/null +++ b/barcode/dutch/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,234 @@ +--- +category: general +date: 2026-08-06 +description: Hoe barcode‑afbeeldingen op te slaan in C# met MicroPdf417 en Code 128‑emulatie. + Leer hoe je PDF417‑barcodes genereert en instellingen aanpast. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: nl +lastmod: 2026-08-06 +og_description: Hoe je barcode‑afbeeldingen snel opslaat in C# met MicroPdf417 en + Code 128‑emulatie. Volg deze gids om PDF417‑barcodes te genereren en de output aan + te passen. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: Hoe barcode‑afbeeldingen op te slaan in C# – stap‑voor‑stap gids +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: Hoe barcode‑afbeeldingen op te slaan in C# – volledige gids +url: /nl/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hoe barcode‑afbeeldingen op te slaan in C# – volledige gids + +Als je **barcode‑afbeeldingen wilt opslaan** in een .NET‑applicatie, laat deze tutorial je een kant‑klaar werkende oplossing zien. Je leert hoe je PDF417‑barcodes genereert, Code 128‑emulatie toepast en de resulterende PNG‑bestanden naar schijf schrijft. + +De voorbeeldcode maakt gebruik van de Aspose.BarCode for .NET‑bibliotheek, die MicroPdf417, Code 128 en vele andere standaarden ondersteunt. Aan het einde van de gids kun je barcode‑bestanden produceren voor Modus 908, 909, 910 en 911, en begrijp je hoe je visuele parameters kunt aanpassen voor optimale scanning. + +## Vereisten + +* .NET 6.0 SDK of later geïnstalleerd +* Visual Studio 2022 (of een IDE die C# ondersteunt) +* Een actieve Aspose.BarCode for .NET‑licentie (een gratis proefversie werkt voor ontwikkeling) + +De tutorial gaat uit van een basiskennis van C#‑consoleprojecten. + +## Stap 1: Maak een nieuw console‑project en voeg het BarCode‑pakket toe + +Open een terminal en voer de volgende commando’s uit: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +Het `dotnet add package`‑commando downloadt de nieuwste Aspose.BarCode‑bibliotheek, die de klassen bevat die je nodig hebt om **PDF417‑barcodes te genereren**. + +## Stap 2: Schrijf het volledige programma + +Maak een bestand genaamd `Program.cs` (vervang het bestaande) en plak de onderstaande code. Het programma demonstreert een **barcode‑generator met code128**‑emulatie en toont verschillende manieren om **barcode‑afbeeldingen op te slaan**. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Waarom deze code werkt + +* **Single generator instance** – Het hergebruiken van `BarcodeGenerator` voorkomt herhaalde geheugenallocatie en houdt de configuratie consistent over de verschillende modi. +* **XDimension** – Het instellen van de pixelgrootte op 2 levert een duidelijk, leesbaar beeld op zonder de bestandsgrootte te vergroten. +* **IsCode128Emulation** – Schakelt Code 128‑achtige balkpatronen in binnen een PDF417‑symbool, die door sommige scanners betrouwbaarder worden gelezen. +* **Save method** – De `Save`‑overload die je ziet is de canonieke manier om **barcode‑bestanden op te slaan**; hij schrijft het beeld direct naar het bestandssysteem in het door jou opgegeven formaat. + +## Stap 3: Voer het programma uit en controleer de output + +Bouw en voer het project uit: + +```bash +dotnet run +``` + +Nadat de console de bevestigingsberichten heeft afgedrukt, open je de map die je hebt opgegeven in `outputPath`. Je zou vier PNG‑bestanden moeten zien: + +* `MicroPdf417_Code128_908.png` – FNC1 + alfanumerieke indicator +* `MicroPdf417_Code128_909.png` – FNC1 + numerieke indicator +* `MicroPdf417_Code128_910.png` – pure Code 128‑payload + +Elk beeld bevat een MicroPdf417‑symbool dat door standaard barcode‑lezers kan worden gescand. Als een scanner een bestand niet kan lezen, overweeg dan om `XDimension.Pixels` te verhogen of `Pdf417.Columns` aan te passen aan de resolutie van het doelapparaat. + +## Stap 4: Veelvoorkomende variaties en randgevallen + +### Het wijzigen van het afbeeldingsformaat + +De `BarCodeImageFormat`‑enum ondersteunt PNG, JPEG, BMP en TIFF. Vervang `BarCodeImageFormat.Png` door `BarCodeImageFormat.Jpeg` als je een kleinere bestandsgrootte voor weblevering nodig hebt. + +### Een full‑size PDF417 genereren in plaats van MicroPdf417 + +Als jouw gebruiksgeval de grotere PDF417‑standaard vereist, maak je de generator aan met `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +Vergeet niet `Pdf417.Rows` en `Pdf417.Columns` aan te passen om te voldoen aan de ISO/IEC 15417‑specificaties. + +### Omgaan met speciale tekens + +De groepsscheidingsteken (`\u001d`) is vereist voor Application Identifiers. Als je gegevens andere controle‑tekens bevatten, escapen deze dan met Unicode‑notatie (bijv. `\u001c` voor bestands‑scheidingsteken) om runtime‑fouten te voorkomen. + +### Licentie‑overwegingen + +Het uitvoeren van de code zonder licentie veroorzaakt een watermerk op de gegenereerde beelden. Pas je licentie vroeg toe in `Main`: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Stap 5: Tips voor productiegebruik + +* **Batch processing** – Plaats de opslaalogica in een lus die rijen uit een CSV‑ of database‑bestand leest; hergebruik dezelfde `BarcodeGenerator`‑instantie voor betere prestaties. +* **Thread safety** – `BarcodeGenerator` is niet thread‑safe. Maak een aparte instantie per thread aan als je barcode‑creatie paralleliseert. +* **Error handling** – Plaats de `Save`‑aanroepen in `try…catch`‑blokken om I/O‑uitzonderingen af te vangen, vooral bij het schrijven naar netwerkschijven. + +## Conclusie + +Je weet nu hoe je **barcode‑afbeeldingen in C# kunt opslaan** met Aspose.BarCode, hoe je **PDF417‑symbolen kunt genereren** met Code 128‑emulatie, en hoe je een **barcode‑generator met code128** configureert voor meerdere modi. Het volledige, uitvoerbare voorbeeld toont elke stap van project‑opzet tot de uiteindelijke PNG‑bestanden. + +Vervolgens kun je gerelateerde onderwerpen verkennen, zoals **barcode‑integratie in PDF‑documenten**, **QR‑codes maken met aangepaste kleuren**, of **barcode‑generatie integreren in ASP.NET Core‑API’s**. Deze uitbreidingen bouwen voort op dezelfde principes die hier behandeld zijn en stellen je in staat om een breed scala aan scan‑workflows te automatiseren. + +## Wat moet je hierna leren? + +De volgende tutorials behandelen nauw verwante onderwerpen die voortbouwen op de technieken die in deze gids worden gedemonstreerd. Elke bron bevat volledige werkende code‑voorbeelden met stap‑voor‑stap‑uitleg om je te helpen extra API‑functies onder de knie te krijgen en alternatieve implementatie‑benaderingen in je eigen projecten te verkennen. + +- [Hoe PDF417‑barcodes te genereren – Compacte PDF417‑codering](/barcode/english/net/compact-pdf417-encoding/) +- [Hoe PNG op te slaan met DataMatrix C40 via Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [Hoe een barcode te genereren – Eén‑dimensionale barcode‑typen](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/dutch/net/one-dimensional-barcode-types/_index.md b/barcode/dutch/net/one-dimensional-barcode-types/_index.md index cd103f02d..2e27d315b 100644 --- a/barcode/dutch/net/one-dimensional-barcode-types/_index.md +++ b/barcode/dutch/net/one-dimensional-barcode-types/_index.md @@ -60,6 +60,8 @@ Leer hoe u eendimensionale Code 128-barcodes kunt genereren in .NET met behulp v Leer hoe u eendimensionale Code 39-barcodes kunt genereren in .NET met Aspose.BarCode. Stapsgewijze handleiding voor ontwikkelaars. ### [Eendimensionale Code 93-configuratie](./one-dimensional-code-93-configuration/) Leer hoe u Code 93-barcodes kunt maken met Aspose.BarCode voor .NET. Stapsgewijze handleiding voor het genereren van streepjescodes. +### [Hoe een barcode instellen in C# – volledige Aspose.BarCode gids](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Leer hoe u barcodes instelt in C# met een volledige gids voor Aspose.BarCode. ### [Eendimensionale aanpassing van de hoogte van de streepjescode](./one-dimensional-barcode-height-adjustment/) Leer hoe u de hoogte van eendimensionale streepjescodes in .NET kunt aanpassen met Aspose.BarCode voor nauwkeurig maatwerk. Creëer moeiteloos perfecte barcodes! ### [Eendimensionale databar 2D-componentconfiguratie](./one-dimensional-databar-2d-component-configuration/) @@ -89,4 +91,4 @@ Met dit artikel verkrijgt u niet alleen kennis over verschillende eendimensional {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/dutch/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/dutch/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..9774bf563 --- /dev/null +++ b/barcode/dutch/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,161 @@ +--- +category: general +date: 2026-08-06 +description: Hoe een barcode instellen met Aspose.BarCode in C#. Leer hoe je macro‑tekens + wijzigt en een barcode‑afbeelding maakt in C# met stap‑voor‑stap code. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: nl +lastmod: 2026-08-06 +og_description: Hoe een barcode instellen met Aspose.BarCode in C#. Deze gids laat + zien hoe je macro‑tekens wijzigt en snel een barcode‑afbeelding in C# maakt. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: Hoe een barcode instellen in C# – Aspose.BarCode‑tutorial +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: Hoe een barcode instellen in C# – volledige Aspose.BarCode‑gids +url: /nl/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hoe een barcode in C# in te stellen – volledige Aspose.BarCode‑gids + +Als je **hoe een barcode in te stellen** in een .NET‑applicatie nodig hebt, laat deze tutorial je de exacte stappen zien met Aspose.BarCode. Je ziet hoe je macro‑tekens wijzigt, visuele parameters aanpast en **barcode‑afbeelding C#**‑bestanden maakt die direct naar schijf kunnen worden opgeslagen. + +De gids behandelt alles, van het installeren van de bibliotheek tot het genereren van twee MicroPDF417‑barcodes met verschillende macro‑waarden. Geen externe documentatie nodig – je kunt de code kopiëren, uitvoeren en de PNG‑output meteen verifiëren. + +## Vereisten + +Voordat je begint, zorg dat je het volgende hebt: + +* .NET 6.0 of hoger (het voorbeeld gebruikt een console‑project) +* Visual Studio 2022 of een andere C#‑IDE +* Een actieve Aspose.BarCode‑licentie (een gratis evaluatie werkt voor testen) +* Basiskennis van C#‑syntaxis + +Je hebt ook het NuGet‑pakket nodig: + +```bash +dotnet add package Aspose.BarCode +``` + +## Hoe barcode‑parameters in te stellen – stap 1: de generator maken + +De eerste handeling is het instantieren van een `BarcodeGenerator` met de gewenste symbologie en data. Het gebruik van `EncodeTypes.MicroPdf417` vertelt Aspose.BarCode een compacte PDF417‑variant te produceren. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Waarom dit belangrijk is:** `BarcodeGenerator` is het centrale object; alle latere instellingen wijzigen de `Parameters`‑eigenschap. Het kiezen van de juiste `EncodeTypes` zorgt ervoor dat de barcode voldoet aan de MicroPDF417‑specificatie. + +## Hoe macro‑tekens te wijzigen – stap 2: visuele parameters aanpassen + +Macro‑tekens zijn optionele controlecodes waarmee je meerdere PDF417‑symbolen kunt concatenëren. Het voorbeeld schakelt tussen `Macro05` en `Macro06`. Je stelt ook de module‑breedte (`XDimension`) en het aantal kolommen in om de barcode‑grootte te regelen. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Waarom je de macro wijzigt:** Het macro‑teken vertelt een scanner dat deze barcode deel uitmaakt van een grotere dataset. Het wisselen hiervan toont aan hoe dezelfde data gekoppeld kan worden aan verschillende macro‑identifiers. + +## Hoe een barcode in te stellen – stap 3: een tweede barcode genereren met een andere macro + +Nu hergebruiken we dezelfde `generator`‑instantie, alleen wisselen we de macro‑waarde. Dit voorkomt het opnieuw aanmaken van het object en laat zien dat **hoe een barcode in te stellen** parameters ook tijdens runtime kan worden aangepast. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Verwachte output + +Het uitvoeren van het programma maakt twee PNG‑bestanden in de projectmap: + +* `MicroPdf417_Macro05.png` – barcode met Macro05 +* `MicroPdf417_Macro06.png` – barcode met Macro06 + +Beide afbeeldingen tonen een compacte MicroPDF417‑symbool dat `12345ABC` codeert. Je kunt de PNG‑bestanden met elke afbeeldingsviewer openen om de visuele kwaliteit te verifiëren. + +## Barcode‑generator C# best practices + +* **Herbruik de generator:** Het wijzigen van `Parameters` op een bestaande instantie is efficiënter dan elke barcode een nieuwe generator laten maken. +* **Stel X‑dimension vroeg in:** De module‑breedte beïnvloedt de totale afbeeldingsgrootte; pas deze aan vóór het opslaan. +* **Valideer macro‑gebruik:** Niet alle scanners ondersteunen macro‑tekens. Test met je doel‑hardware als je ze in productie wilt gebruiken. +* **Maak resources vrij:** `BarcodeGenerator` implementeert `IDisposable`. In een langdurige service, wikkel het in een `using`‑blok of roep `Dispose()` aan wanneer je klaar bent. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Barcode‑afbeelding C# maken – foutopsporingstips + +| Symptoom | Waarschijnlijke oorzaak | Oplossing | +|--------------------------------------|-------------------------------------------------------|-----------| +| Leeg PNG‑bestand | `XDimension` ingesteld op 0 of een zeer hoge waarde | Gebruik een redelijke pixelbreedte (1‑5) | +| Barcode onleesbaar voor scanner | Verkeerd macro‑teken voor de scanner | Controleer de scanner‑documentatie; gebruik `MacroNone` indien niet nodig | +| Exception `ArgumentOutOfRangeException` | Kolomtelling buiten het toegestane bereik (1‑30) | Houd `Columns` tussen 1 en 30 | + +## Conclusie + +Je weet nu **hoe een barcode in te stellen** eigenschappen, **hoe macro‑tekens te wijzigen**, en hoe je **barcode‑afbeelding C#**‑bestanden maakt met Aspose.BarCode. Het volledige, uitvoerbare voorbeeld toont de volledige workflow van generatorcreatie tot export van de afbeelding. + +Ga vervolgens andere symbologieën verkennen (`EncodeTypes.QR`, `EncodeTypes.Code128`) of embed de barcode direct in PDF‑bestanden met Aspose.PDF. Beide onderwerpen vallen onder het bredere **barcode generator c#**‑ecosysteem en kunnen met minimale code‑aanpassingen aan dit project worden toegevoegd. + +Veel programmeerplezier, en voel je vrij om te experimenteren met verschillende macro‑waarden, afmetingen en uitvoerformaten! + +## Wat moet je hierna leren? + +De volgende tutorials behandelen nauw verwante onderwerpen die voortbouwen op de technieken die in deze gids worden getoond. Elke bron bevat volledige werkende code‑voorbeelden met stap‑voor‑stap uitleg om je te helpen extra API‑functies onder de knie te krijgen en alternatieve implementatie‑benaderingen in je eigen projecten te verkennen. + +- [Hoe een barcode‑quiet zone te maken voor Code 16K met Aspose.BarCode voor .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [Hoe dotcode‑uitgebreide codetext te maken met Aspose.BarCode voor .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [Hoe een rand in te stellen voor ITF‑14 Barcode‑customisatie](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/english/net/compact-pdf417-encoding/_index.md b/barcode/english/net/compact-pdf417-encoding/_index.md index 1762ea2a8..261e4c505 100644 --- a/barcode/english/net/compact-pdf417-encoding/_index.md +++ b/barcode/english/net/compact-pdf417-encoding/_index.md @@ -84,6 +84,12 @@ Beyond the basics, here are some practical tips to streamline your workflow: ### [Creating Compact PDF417 Barcodes](./compact-pdf417-basic-configuration/) Learn how to generate Compact PDF417 barcodes using Aspose.BarCode for .NET. Comprehensive guide with step-by-step instructions and code examples. +### [Generate PDF417 barcode in C# – barcode generator guide](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +Step-by-step guide to generate PDF417 barcodes in C# using Aspose.BarCode's BarcodeGenerator. + +### [How to save barcode images in C# – complete guide](./how-to-save-barcode-images-in-c-complete-guide/) +Detailed guide on saving barcode images in C# using Aspose.BarCode, covering formats, options, and best practices. + ## Frequently Asked Questions **Q: What is the maximum amount of data I can store in a Compact PDF417 barcode?** @@ -112,4 +118,4 @@ A: No external fonts are required; the library handles all rendering internally. {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/english/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/english/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..c9a582eb9 --- /dev/null +++ b/barcode/english/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,122 @@ +--- +category: general +date: 2026-08-06 +description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: en +lastmod: 2026-08-06 +og_description: Generate PDF417 barcode in C# using BarcodeGenerator. Learn to set + binary encoding, configure PDF417 options, and save the barcode as a PNG image. +og_image_alt: Generate PDF417 barcode example +og_title: Generate PDF417 barcode in C# – full barcode generator guide +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: Generate PDF417 barcode in C# – barcode generator guide +url: /net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Generate PDF417 barcode in C# – barcode generator guide + +If you need to **generate PDF417 barcode** in a .NET application, this guide shows you exactly how. Using the Aspose.BarCode library you can encode binary data, switch the PDF417 encoder to binary mode, and output a high‑resolution PNG image in just a few lines of C#. + +This tutorial covers everything from installing the NuGet package to customizing the PDF417 settings and handling edge cases such as empty data or unsupported characters. By the end of the guide you’ll have a complete, runnable example that you can drop into any C# project. + +**What you’ll learn** + +* Install and reference the barcode generator C# PDF417 package. +* Prepare binary data for encoding. +* Configure the `BarcodeGenerator` for binary PDF417 encoding. +* Save the generated barcode as a PNG file and verify the result. + +> **Prerequisites** – .NET 6.0 or later, Visual Studio 2022 (or any IDE you prefer), and an internet connection to pull the NuGet package. + +--- + +## Step 1: Install the Aspose.BarCode NuGet package + +The most reliable way to work with PDF417 barcodes in C# is the **Aspose.BarCode** library, which fully supports binary encoding. + +```bash +dotnet add package Aspose.BarCode +``` + +*Why this step?* +The `BarcodeGenerator` class lives in the `Aspose.BarCode` namespace. Adding the package ensures all required DLLs are available at compile time and that you get the latest bug‑fixes and performance improvements. + +--- + +## Step 2: Create a new console project (optional but recommended) + +If you’re testing the code in isolation, start a fresh console app: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Add the package to the project (repeat the command from Step 1 if you haven’t already). + +--- + +## Step 3: Prepare binary data to encode + +PDF417 can encode raw bytes when you set the encode mode to **Binary**. Below is a simple byte array that demonstrates the process. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Why binary data?* +Binary mode lets you store any byte sequence—useful for embedding files, encryption keys, or custom payloads that aren’t plain text. + +--- + +## Step 4: Initialise the barcode generator and configure PDF417 for binary mode + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; +using System.Drawing.Imaging; + +class Program +{ + static void Main() + { + // Step 4: Initialise the barcode generator for PDF417 + using (var barcodeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417 + + +## What Should You Learn Next? + + +The following tutorials cover closely related topics that build on the techniques demonstrated in this guide. Each resource includes complete working code examples with step-by-step explanations to help you master additional API features and explore alternative implementation approaches in your own projects. + +- [How to Create Barcode – Compact PDF417 with Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [How to Generate PDF417 Barcodes – Compact PDF417 Encoding](/barcode/english/net/compact-pdf417-encoding/) +- [How to generate Aztec barcode with custom aspect ratio using Aspose.BarCode for .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/english/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/og-image.png b/barcode/english/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/og-image.png new file mode 100644 index 0000000000000000000000000000000000000000..682ea27e0bc1e2d536e0e36c25d0fa5f81c2f803 GIT binary patch literal 49911 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 we~X}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# How to save barcode images in C# – complete guide + +If you need to **how to save barcode** images in a .NET application, this tutorial shows you a ready‑to‑run solution. You’ll learn how to generate PDF417 barcodes, apply Code 128 emulation, and write the resulting PNG files to disk. + +The example uses the Aspose.BarCode for .NET library, which supports MicroPdf417, Code 128, and many other standards. By the end of the guide you can produce barcode files for Modes 908, 909, 910, and 911, and you’ll understand how to adjust visual parameters for optimal scanning. + +## Prerequisites + +Before you start, make sure you have: + +* .NET 6.0 SDK or later installed +* Visual Studio 2022 (or any IDE that supports C#) +* An active Aspose.BarCode for .NET license (a free trial works for development) + +The tutorial assumes basic familiarity with C# console projects. + +## Step 1: Create a new console project and add the BarCode package + +Open a terminal and run the following commands: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +The `dotnet add package` command downloads the latest Aspose.BarCode library, which contains the classes you need to **how to generate pdf417** barcodes. + +## Step 2: Write the complete program + +Create a file named `Program.cs` (replace the existing one) and paste the code below. The program demonstrates a **barcode generator with code128** emulation and shows several ways to **how to save barcode** images. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Why this code works + +* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated memory allocation and keeps configuration consistent across modes. +* **XDimension** – Setting the pixel size to 2 yields a clear, readable image without inflating file size. +* **IsCode128Emulation** – Enables Code 128‑style bar patterns inside a PDF417 symbol, which some scanners interpret more reliably. +* **Save method** – The `Save` overload you see is the canonical way to **how to save barcode** files; it writes the image directly to the file system in the format you specify. + +## Step 3: Run the program and verify the output + +Build and execute the project: + +```bash +dotnet run +``` + +After the console prints the confirmation messages, open the folder you set in `outputPath`. You should see four PNG files: + +* `MicroPdf417_Code128_908.png` – FNC1 + alphanumeric indicator +* `MicroPdf417_Code128_909.png` – FNC1 + numeric indicator +* `MicroPdf417_Code128_910.png` – pure Code 128 payload + +Each image contains a MicroPdf417 symbol that can be scanned by standard barcode readers. If a scanner fails to read a file, consider increasing `XDimension.Pixels` or adjusting `Pdf417.Columns` to match the target device’s resolution. + +## Step 4: Common variations and edge cases + +### Changing the image format + +The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller file size for web delivery. + +### Generating a full‑size PDF417 instead of MicroPdf417 + +If your use case requires the larger PDF417 standard, instantiate the generator with `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +Remember to adjust `Pdf417.Rows` and `Pdf417.Columns` to meet the ISO/IEC 15417 specifications. + +### Handling special characters + +The group separator (`\u001d`) is required for Application Identifiers. If your data contains other control characters, escape them using Unicode notation (e.g., `\u001c` for file separator) to avoid runtime errors. + +### License considerations + +Running the code without a license triggers a watermark on the generated images. Apply your license early in `Main`: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Step 5: Tips for production use + +* **Batch processing** – Wrap the save logic in a loop that reads rows from a CSV or database; reuse the same `BarcodeGenerator` instance for performance. +* **Thread safety** – `BarcodeGenerator` is not thread‑safe. Create a separate instance per thread if you parallelize barcode creation. +* **Error handling** – Enclose the `Save` calls in `try…catch` blocks to capture I/O exceptions, especially when writing to network shares. + +## Conclusion + +You now know **how to save barcode** images in C# using Aspose.BarCode, how to **how to generate pdf417** symbols with Code 128 emulation, and how to configure a **barcode generator with code128** for multiple modes. The complete, runnable example demonstrates every step from project setup to final PNG files. + +Next, explore related topics such as **embedding barcodes in PDF documents**, **creating QR codes with custom colors**, or **integrating barcode generation into ASP.NET Core APIs**. These extensions build on the same principles covered here and let you automate a wide range of scanning workflows. + + +## What Should You Learn Next? + + +The following tutorials cover closely related topics that build on the techniques demonstrated in this guide. Each resource includes complete working code examples with step-by-step explanations to help you master additional API features and explore alternative implementation approaches in your own projects. + +- [How to Generate PDF417 Barcodes – Compact PDF417 Encoding](/barcode/english/net/compact-pdf417-encoding/) +- [How to Save PNG using DataMatrix C40 with Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [How to Generate Barcode - One-Dimensional Barcode Types](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/english/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/og-image.png b/barcode/english/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/og-image.png new file mode 100644 index 0000000000000000000000000000000000000000..7bffd67df78dd4de2e076670dbdaa2683c701c28 GIT binary patch literal 51678 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�#~1Dz8Lj@ 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 {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/english/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/english/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..6f323c596 --- /dev/null +++ b/barcode/english/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,163 @@ +--- +category: general +date: 2026-08-06 +description: How to set barcode using Aspose.BarCode in C#. Learn how to change macro + characters and create barcode image C# with step‑by‑step code. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: en +lastmod: 2026-08-06 +og_description: How to set barcode with Aspose.BarCode in C#. This guide shows how + to change macro characters and create barcode image C# quickly. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: How to set barcode in C# – Aspose.BarCode tutorial +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: How to set barcode in C# – complete Aspose.BarCode guide +url: /net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# How to set barcode in C# – complete Aspose.BarCode guide + +If you need to **how to set barcode** in a .NET application, this tutorial shows you the exact steps using Aspose.BarCode. You’ll see how to change macro characters, adjust visual parameters, and **create barcode image C#** files that can be saved directly to disk. + +The guide covers everything from installing the library to generating two MicroPDF417 barcodes with different macro values. No external documentation is required—you can copy the code, run it, and verify the PNG output immediately. + +## Prerequisites + +Before you start, make sure you have: + +* .NET 6.0 or later (the example uses a console project) +* Visual Studio 2022 or any C# IDE +* An active Aspose.BarCode license (a free evaluation works for testing) +* Basic knowledge of C# syntax + +You’ll also need the NuGet package: + +```bash +dotnet add package Aspose.BarCode +``` + +## How to set barcode parameters – step 1: create the generator + +The first action is to instantiate a `BarcodeGenerator` with the desired symbology and data. Using `EncodeTypes.MicroPdf417` tells Aspose.BarCode to produce a compact PDF417 variant. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Why this matters:** `BarcodeGenerator` is the central object; all later settings modify its `Parameters` property. Selecting the correct `EncodeTypes` ensures the barcode follows the MicroPDF417 specification. + +## How to change macro characters – step 2: adjust visual parameters + +Macro characters are optional control codes that let you concatenate multiple PDF417 symbols. The example switches between `Macro05` and `Macro06`. You also set the module width (`XDimension`) and the number of columns to control the barcode size. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Why you change the macro:** The macro character tells a scanner that this barcode is part of a larger data set. Switching it demonstrates how the same data can be linked to different macro identifiers. + +## How to set barcode – step 3: generate a second barcode with a different macro + +Now we reuse the same `generator` instance, only swapping the macro value. This avoids recreating the object and demonstrates that **how to set barcode** parameters can be done at runtime. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Expected output + +Running the program creates two PNG files in the project folder: + +* `MicroPdf417_Macro05.png` – barcode with Macro05 +* `MicroPdf417_Macro06.png` – barcode with Macro06 + +Both images display a compact MicroPDF417 symbol that encodes `12345ABC`. You can open the PNG files with any image viewer to verify the visual quality. + +## Barcode generator C# best practices + +* **Reuse the generator:** Changing `Parameters` on an existing instance is more efficient than creating a new generator for each barcode. +* **Set X‑dimension early:** The module width influences the overall image size; adjust it before saving. +* **Validate macro usage:** Not all scanners support macro characters. Test with your target hardware if you plan to use them in production. +* **Dispose resources:** `BarcodeGenerator` implements `IDisposable`. In a long‑running service, wrap it in a `using` block or call `Dispose()` when finished. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Create barcode image C# – troubleshooting tips + +| Symptom | Likely cause | Fix | +|--------------------------------------|-------------------------------------------|-----| +| Blank PNG file | `XDimension` set to 0 or very high value | Use a reasonable pixel width (1‑5) | +| Barcode unreadable by scanner | Wrong macro character for the scanner | Verify scanner documentation; use `MacroNone` if not needed | +| Exception `ArgumentOutOfRangeException` | Column count outside allowed range (1‑30) | Keep `Columns` between 1 and 30 | + +## Conclusion + +You now know **how to set barcode** properties, **how to change macro** characters, and how to **create barcode image C#** files using Aspose.BarCode. The complete, runnable example demonstrates the full workflow from generator creation to image export. + +Next, explore other symbologies (`EncodeTypes.QR`, `EncodeTypes.Code128`) or embed the barcode directly into PDFs with Aspose.PDF. Both topics fall under the broader **barcode generator c#** ecosystem and can be added to this project with minimal code changes. + +Happy coding, and feel free to experiment with different macro values, dimensions, and output formats! + + +## What Should You Learn Next? + + +The following tutorials cover closely related topics that build on the techniques demonstrated in this guide. Each resource includes complete working code examples with step-by-step explanations to help you master additional API features and explore alternative implementation approaches in your own projects. + +- [How to create barcode quiet zone for Code 16K using Aspose.BarCode for .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [How to create dotcode extended codetext with Aspose.BarCode for .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [How to Set Border for ITF-14 Barcode Customization](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/english/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/og-image.png b/barcode/english/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/og-image.png new file mode 100644 index 0000000000000000000000000000000000000000..2807d4d1aa0e6d041c1e53eecc43790dfb5fc63c GIT binary patch literal 52457 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 MH?ptuq3=Kc4~WF1HUIzs literal 0 HcmV?d00001 diff --git a/barcode/french/net/compact-pdf417-encoding/_index.md b/barcode/french/net/compact-pdf417-encoding/_index.md index 13df3a6a5..5767cbe92 100644 --- a/barcode/french/net/compact-pdf417-encoding/_index.md +++ b/barcode/french/net/compact-pdf417-encoding/_index.md @@ -87,6 +87,12 @@ Au‑delà des bases, voici quelques astuces pratiques pour optimiser votre flux ### [Créer des codes-barres Compact PDF417](./compact-pdf417-basic-configuration/) Apprenez à générer des codes-barres Compact PDF417 en utilisant Aspose.BarCode pour .NET. Guide complet avec des instructions étape par étape et des exemples de code. +### [Générer un code-barres PDF417 en C# – guide du générateur de code-barres](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +Apprenez à créer des codes-barres PDF417 en C# avec le générateur de code-barres Aspose. + +### [Comment enregistrer des images de code-barres en C# – guide complet](./how-to-save-barcode-images-in-c-complete-guide/) +Apprenez à enregistrer les images de code-barres générées en C# avec Aspose.BarCode. + ## Questions fréquentes **Q : Quelle est la quantité maximale de données que je peux stocker dans un code‑barcode Compact PDF417 ?** @@ -115,4 +121,4 @@ R : Aucune police externe n'est requise ; la bibliothèque gère tout le ren {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/french/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/french/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..c94f067ff --- /dev/null +++ b/barcode/french/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,112 @@ +--- +category: general +date: 2026-08-06 +description: Générez un code‑barres PDF417 en C# avec un générateur de code‑barres + C# PDF417. Apprenez comment générer un code‑barres PDF417, activer le mode binaire + et l’enregistrer au format PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: fr +lastmod: 2026-08-06 +og_description: Générez un code‑barres PDF417 en C# avec BarcodeGenerator. Apprenez + à définir l’encodage binaire, à configurer les options PDF417 et à enregistrer le + code‑barres en tant qu’image PNG. +og_image_alt: Generate PDF417 barcode example +og_title: Générer un code‑barres PDF417 en C# – guide complet du générateur de code‑barres +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: Générer un code‑barres PDF417 en C# – guide du générateur de code‑barres +url: /fr/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Générer un code-barres PDF417 en C# – guide du générateur de code-barres + +Si vous devez **générer un code-barres PDF417** dans une application .NET, ce guide vous montre exactement comment faire. En utilisant la bibliothèque Aspose.BarCode, vous pouvez encoder des données binaires, passer l'encodeur PDF417 en mode binaire et produire une image PNG haute résolution en quelques lignes de C#. + +Ce tutoriel couvre tout, de l'installation du package NuGet à la personnalisation des paramètres PDF417 en passant par la gestion des cas limites tels que des données vides ou des caractères non pris en charge. À la fin du guide, vous disposerez d'un exemple complet et exécutable que vous pourrez intégrer à n'importe quel projet C#. + +**Ce que vous apprendrez** + +* Installer et référencer le package C# PDF417 du générateur de code-barres. +* Préparer les données binaires pour l'encodage. +* Configurer le `BarcodeGenerator` pour l'encodage PDF417 binaire. +* Enregistrer le code-barres généré en tant que fichier PNG et vérifier le résultat. + +> **Prérequis** – .NET 6.0 ou version ultérieure, Visual Studio 2022 (ou tout IDE de votre choix), et une connexion Internet pour récupérer le package NuGet. + +--- + +## Étape 1 : Installer le package NuGet Aspose.BarCode + +La façon la plus fiable de travailler avec les codes-barres PDF417 en C# est la bibliothèque **Aspose.BarCode**, qui prend entièrement en charge l'encodage binaire. + +```bash +dotnet add package Aspose.BarCode +``` + +*Pourquoi cette étape ?* +La classe `BarcodeGenerator` se trouve dans l'espace de noms `Aspose.BarCode`. Ajouter le package garantit que toutes les DLL requises sont disponibles à la compilation et que vous bénéficiez des dernières corrections de bugs et améliorations de performances. + +--- + +## Étape 2 : Créer un nouveau projet console (optionnel mais recommandé) + +Si vous testez le code isolément, démarrez une nouvelle application console : + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Ajoutez le package au projet (répétez la commande de l'étape 1 si vous ne l'avez pas encore fait). + +--- + +## Étape 3 : Préparer les données binaires à encoder + +PDF417 peut encoder des octets bruts lorsque vous définissez le mode d'encodage sur **Binary**. Ci-dessous se trouve un tableau d'octets simple qui illustre le processus. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Pourquoi des données binaires ?* +Le mode binaire vous permet de stocker n'importe quelle séquence d'octets — utile pour intégrer des fichiers, des clés de chiffrement ou des charges utiles personnalisées qui ne sont pas du texte brut. + +--- + +## Étape 4 : Initialiser le générateur de code-barres et configurer PDF417 en mode binaire + + + +## Que devriez‑vous apprendre ensuite ? + +Les tutoriels suivants couvrent des sujets étroitement liés qui s'appuient sur les techniques démontrées dans ce guide. Chaque ressource comprend des exemples de code complets et fonctionnels avec des explications étape par étape pour vous aider à maîtriser des fonctionnalités supplémentaires de l'API et explorer des approches d'implémentation alternatives dans vos propres projets. + +- [Comment créer un code-barres – PDF417 compact avec Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [Comment générer des codes-barres PDF417 – Encodage PDF417 compact](/barcode/english/net/compact-pdf417-encoding/) +- [Comment générer un code-barres Aztec avec un rapport d'aspect personnalisé en utilisant Aspose.BarCode pour .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/french/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/french/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..5d4a9cab8 --- /dev/null +++ b/barcode/french/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,237 @@ +--- +category: general +date: 2026-08-06 +description: Comment enregistrer des images de code‑barres en C# avec MicroPdf417 + et l’émulation Code 128. Apprenez à générer des codes‑barres PDF417 et à personnaliser + les paramètres. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: fr +lastmod: 2026-08-06 +og_description: Comment enregistrer rapidement des images de codes-barres en C# avec + MicroPdf417 et l’émulation Code 128. Suivez ce guide pour générer des codes-barres + PDF417 et personnaliser la sortie. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: Comment enregistrer des images de code‑barres en C# – guide étape par étape +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: Comment enregistrer des images de code‑barres en C# – guide complet +url: /fr/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Comment enregistrer des images de code-barres en C# – guide complet + +Si vous avez besoin de **how to save barcode** images dans une application .NET, ce tutoriel vous propose une solution prête à l’emploi. Vous apprendrez à générer des codes-barres PDF417, à appliquer l’émulation Code 128, et à écrire les fichiers PNG résultants sur le disque. + +L’exemple utilise la bibliothèque Aspose.BarCode for .NET, qui prend en charge MicroPdf417, Code 128 et de nombreuses autres normes. À la fin du guide, vous pourrez produire des fichiers de code-barres pour les modes 908, 909, 910 et 911, et vous comprendrez comment ajuster les paramètres visuels pour une lecture optimale. + +## Prérequis + +Avant de commencer, assurez-vous d’avoir : + +* .NET 6.0 SDK ou version ultérieure installé +* Visual Studio 2022 (ou tout IDE supportant C#) +* Une licence active d’Aspose.BarCode for .NET (un essai gratuit suffit pour le développement) + +Le tutoriel suppose une connaissance de base des projets console C#. + +## Étape 1 : Créer un nouveau projet console et ajouter le package BarCode + +Ouvrez un terminal et exécutez les commandes suivantes : + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +La commande `dotnet add package` télécharge la dernière bibliothèque Aspose.BarCode, qui contient les classes dont vous avez besoin pour **how to generate pdf417** barcodes. + +## Étape 2 : Écrire le programme complet + +Créez un fichier nommé `Program.cs` (remplacez l’existant) et collez le code ci‑dessous. Le programme montre une **barcode generator with code128** emulation et présente plusieurs façons de **how to save barcode** images. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Pourquoi ce code fonctionne + +* **Single generator instance** – Réutiliser `BarcodeGenerator` évite des allocations mémoire répétées et maintient la configuration cohérente entre les modes. +* **XDimension** – Définir la taille du pixel à 2 produit une image claire et lisible sans gonfler la taille du fichier. +* **IsCode128Emulation** – Active les motifs de barres de type Code 128 à l’intérieur d’un symbole PDF417, ce que certains lecteurs interprètent de façon plus fiable. +* **Save method** – La surcharge `Save` que vous voyez est la façon canonique de **how to save barcode** files ; elle écrit l’image directement sur le système de fichiers dans le format que vous spécifiez. + +## Étape 3 : Exécuter le programme et vérifier la sortie + +Compilez et exécutez le projet : + +```bash +dotnet run +``` + +Après que la console ait affiché les messages de confirmation, ouvrez le dossier que vous avez indiqué dans `outputPath`. Vous devriez voir quatre fichiers PNG : + +* `MicroPdf417_Code128_908.png` – Indicateur FNC1 + alphanumérique +* `MicroPdf417_Code128_909.png` – Indicateur FNC1 + numérique +* `MicroPdf417_Code128_910.png` – charge utile pure Code 128 + +Chaque image contient un symbole MicroPdf417 qui peut être lu par des lecteurs de code-barres standards. Si un lecteur ne parvient pas à lire un fichier, envisagez d’augmenter `XDimension.Pixels` ou d’ajuster `Pdf417.Columns` pour correspondre à la résolution de l’appareil cible. + +## Étape 4 : Variantes courantes et cas limites + +### Changer le format d’image + +L’énumération `BarCodeImageFormat` prend en charge PNG, JPEG, BMP et TIFF. Remplacez `BarCodeImageFormat.Png` par `BarCodeImageFormat.Jpeg` si vous avez besoin d’une taille de fichier plus petite pour la diffusion sur le web. + +### Générer un PDF417 pleine taille au lieu de MicroPdf417 + +Si votre cas d’utilisation nécessite la norme PDF417 plus grande, créez le générateur avec `EncodeTypes.Pdf417` : + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +N’oubliez pas d’ajuster `Pdf417.Rows` et `Pdf417.Columns` pour respecter les spécifications ISO/IEC 15417. + +### Gestion des caractères spéciaux + +Le séparateur de groupe (`\u001d`) est requis pour les Identifiants d’Application. Si vos données contiennent d’autres caractères de contrôle, échappez‑les en utilisant la notation Unicode (par ex., `\u001c` pour le séparateur de fichier) afin d’éviter les erreurs d’exécution. + +### Considérations de licence + +Exécuter le code sans licence ajoute un filigrane aux images générées. Appliquez votre licence tôt dans `Main` : + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Étape 5 : Conseils pour la mise en production + +* **Batch processing** – Enveloppez la logique de sauvegarde dans une boucle qui lit les lignes d’un CSV ou d’une base de données ; réutilisez la même instance `BarcodeGenerator` pour la performance. +* **Thread safety** – `BarcodeGenerator` n’est pas thread‑safe. Créez une instance distincte par thread si vous parallélisez la création de codes‑barres. +* **Error handling** – Encapsulez les appels `Save` dans des blocs `try…catch` pour capturer les exceptions d’E/S, notamment lors de l’écriture sur des partages réseau. + +## Conclusion + +Vous savez maintenant comment **how to save barcode** images en C# avec Aspose.BarCode, comment **how to generate pdf417** des symboles avec émulation Code 128, et comment configurer un **barcode generator with code128** pour plusieurs modes. L’exemple complet et exécutable montre chaque étape, de la configuration du projet aux fichiers PNG finaux. + +Ensuite, explorez des sujets connexes tels que **embedding barcodes in PDF documents**, **creating QR codes with custom colors**, ou **integrating barcode generation into ASP.NET Core APIs**. Ces extensions s’appuient sur les mêmes principes présentés ici et vous permettent d’automatiser une large gamme de flux de travail de numérisation. + +## Que devriez‑vous apprendre ensuite ? + +Les tutoriels suivants couvrent des sujets étroitement liés qui s’appuient sur les techniques démontrées dans ce guide. Chaque ressource comprend des exemples de code complets et fonctionnels avec des explications étape par étape pour vous aider à maîtriser des fonctionnalités supplémentaires de l’API et à explorer des approches d’implémentation alternatives dans vos propres projets. + +- [Comment générer des codes-barres PDF417 – Encodage PDF417 compact](/barcode/english/net/compact-pdf417-encoding/) +- [Comment enregistrer des PNG en utilisant DataMatrix C40 avec Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [Comment générer des codes-barres – Types de codes-barres unidimensionnels](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/french/net/one-dimensional-barcode-types/_index.md b/barcode/french/net/one-dimensional-barcode-types/_index.md index 9f7bfd64d..b2b22343a 100644 --- a/barcode/french/net/one-dimensional-barcode-types/_index.md +++ b/barcode/french/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ Découvrez comment générer des codes-barres dans .NET avec Aspose.BarCode pour Découvrez comment gérer les exceptions lors de la génération de codes-barres unidimensionnels à l'aide d'Aspose.BarCode for .NET. Ce guide étape par étape garantit des solutions de codes-barres tolérantes aux erreurs. Commencez maintenant! ### [Configuration unidimensionnelle à rapport large-étroit](./one-dimensional-wide-narrow-ratio-configuration/) Générez facilement des codes-barres personnalisés avec Aspose.BarCode pour .NET. Guide étape par étape pour la configuration unidimensionnelle du rapport large-étroit. +### [Comment définir un code-barres en C# – guide complet Aspose.BarCode](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Apprenez à configurer et générer des codes-barres en C# avec Aspose.BarCode grâce à ce guide complet étape par étape. ## Conclusion @@ -89,4 +91,4 @@ Avec cet article, vous acquerrez non seulement des connaissances sur les différ {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/french/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/french/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..f83679783 --- /dev/null +++ b/barcode/french/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,163 @@ +--- +category: general +date: 2026-08-06 +description: Comment définir un code‑barres avec Aspose.BarCode en C#. Apprenez à + modifier les caractères macro et à créer une image de code‑barres en C# avec un + code étape par étape. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: fr +lastmod: 2026-08-06 +og_description: Comment configurer un code‑barres avec Aspose.BarCode en C#. Ce guide + montre comment modifier les caractères macro et créer rapidement une image de code‑barres + en C#. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: Comment configurer le code‑barres en C# – Tutoriel Aspose.BarCode +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: Comment définir un code‑barres en C# – guide complet Aspose.BarCode +url: /fr/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Comment définir un code-barres en C# – guide complet Aspose.BarCode + +Si vous avez besoin de **how to set barcode** dans une application .NET, ce tutoriel vous montre les étapes exactes en utilisant Aspose.BarCode. Vous verrez comment modifier les caractères macro, ajuster les paramètres visuels, et **create barcode image C#** des fichiers qui peuvent être enregistrés directement sur le disque. + +Le guide couvre tout, de l'installation de la bibliothèque à la génération de deux codes-barres MicroPDF417 avec des valeurs macro différentes. Aucune documentation externe n'est requise — vous pouvez copier le code, l'exécuter et vérifier immédiatement la sortie PNG. + +## Prérequis + +Avant de commencer, assurez-vous d'avoir : + +* .NET 6.0 ou supérieur (l'exemple utilise un projet console) +* Visual Studio 2022 ou tout IDE C# +* Une licence active Aspose.BarCode (une évaluation gratuite suffit pour les tests) +* Connaissances de base de la syntaxe C# + +Vous aurez également besoin du package NuGet : + +```bash +dotnet add package Aspose.BarCode +``` + +## Comment définir les paramètres du code-barres – étape 1 : créer le générateur + +La première action consiste à instancier un `BarcodeGenerator` avec la symbologie et les données souhaitées. Utiliser `EncodeTypes.MicroPdf417` indique à Aspose.BarCode de produire une variante compacte de PDF417. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Pourquoi c’est important :** `BarcodeGenerator` est l'objet central ; tous les réglages ultérieurs modifient sa propriété `Parameters`. Sélectionner le bon `EncodeTypes` garantit que le code-barres respecte la spécification MicroPDF417. + +## Comment changer les caractères macro – étape 2 : ajuster les paramètres visuels + +Les caractères macro sont des codes de contrôle optionnels qui permettent de concaténer plusieurs symboles PDF417. L'exemple alterne entre `Macro05` et `Macro06`. Vous définissez également la largeur du module (`XDimension`) et le nombre de colonnes pour contrôler la taille du code-barres. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Pourquoi vous changez le macro :** Le caractère macro indique à un scanner que ce code-barres fait partie d'un ensemble de données plus grand. Le changer montre comment les mêmes données peuvent être associées à différents identifiants macro. + +## Comment définir le code-barres – étape 3 : générer un deuxième code-barres avec un macro différent + +Nous réutilisons maintenant la même instance `generator`, en ne changeant que la valeur du macro. Cela évite de recréer l'objet et montre que les paramètres **how to set barcode** peuvent être modifiés à l'exécution. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Résultat attendu + +L'exécution du programme crée deux fichiers PNG dans le dossier du projet : + +* `MicroPdf417_Macro05.png` – code-barres avec Macro05 +* `MicroPdf417_Macro06.png` – code-barres avec Macro06 + +Les deux images affichent un symbole MicroPDF417 compact qui encode `12345ABC`. Vous pouvez ouvrir les fichiers PNG avec n'importe quel visualiseur d'images pour vérifier la qualité visuelle. + +## Bonnes pratiques du générateur de code-barres C# + +* **Réutiliser le générateur :** Modifier `Parameters` sur une instance existante est plus efficace que de créer un nouveau générateur pour chaque code-barres. +* **Définir X‑dimension tôt :** La largeur du module influence la taille globale de l'image ; ajustez-la avant l'enregistrement. +* **Valider l'utilisation du macro :** Tous les scanners ne supportent pas les caractères macro. Testez avec le matériel cible si vous prévoyez de les utiliser en production. +* **Libérer les ressources :** `BarcodeGenerator` implémente `IDisposable`. Dans un service de longue durée, encapsulez-le dans un bloc `using` ou appelez `Dispose()` une fois terminé. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Créer une image de code-barres C# – conseils de dépannage + +| Symptôme | Cause probable | Solution | +|--------------------------------------|---------------------------------------------|----------| +| Fichier PNG vide | `XDimension` réglé à 0 ou à une valeur très élevée | Utilisez une largeur de pixel raisonnable (1‑5) | +| Code-barres illisible par le scanner | Mauvais caractère macro pour le scanner | Vérifiez la documentation du scanner ; utilisez `MacroNone` si non nécessaire | +| Exception `ArgumentOutOfRangeException` | Nombre de colonnes hors de la plage autorisée (1‑30) | Maintenez `Columns` entre 1 et 30 | + +## Conclusion + +Vous savez maintenant comment définir les propriétés **how to set barcode**, comment changer les caractères **how to change macro**, et comment **create barcode image C#** à l'aide d'Aspose.BarCode. L'exemple complet et exécutable montre le flux complet, de la création du générateur à l'exportation de l'image. + +Ensuite, explorez d'autres symbologies (`EncodeTypes.QR`, `EncodeTypes.Code128`) ou intégrez le code-barres directement dans des PDF avec Aspose.PDF. Les deux sujets font partie de l'écosystème plus large **barcode generator c#** et peuvent être ajoutés à ce projet avec peu de modifications de code. + +Bon codage, et n'hésitez pas à expérimenter avec différentes valeurs macro, dimensions et formats de sortie ! + +## Que devriez‑vous apprendre ensuite ? + +Les tutoriels suivants couvrent des sujets étroitement liés qui s'appuient sur les techniques démontrées dans ce guide. Chaque ressource comprend des exemples de code complets et fonctionnels avec des explications étape par étape pour vous aider à maîtriser des fonctionnalités supplémentaires de l'API et à explorer des approches d'implémentation alternatives dans vos propres projets. + +- [Comment créer une zone silencieuse de code-barres pour Code 16K avec Aspose.BarCode pour .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [Comment créer un texte de code étendu dotcode avec Aspose.BarCode pour .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [Comment définir la bordure pour la personnalisation du code-barres ITF-14](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/german/net/compact-pdf417-encoding/_index.md b/barcode/german/net/compact-pdf417-encoding/_index.md index 201fcffef..e8e831149 100644 --- a/barcode/german/net/compact-pdf417-encoding/_index.md +++ b/barcode/german/net/compact-pdf417-encoding/_index.md @@ -57,7 +57,7 @@ Jetzt, wo die Theorie klar ist, erzeugen wir einen Barcode. Die folgenden Schrit 4. **Aussehen anpassen** – Farben, Ränder ändern oder bei Bedarf eine Beschriftung hinzufügen. 5. **Bild speichern** – Export nach PNG, JPEG oder einem anderen unterstützten Format. -> **Pro‑Tipp:** Verwenden Sie dieselbe `BarcodeGenerator`‑Instanz, wenn Sie in einer Schleife mehrere Barcodes erzeugen, um die Leistung zu steigern. +> **Pro‑Tip:** Verwenden Sie dieselbe `BarcodeGenerator`‑Instanz, wenn Sie in einer Schleife mehrere Barcodes erzeugen, um die Leistung zu steigern. ## PDF417 Barcode‑Beispiel @@ -84,6 +84,10 @@ Nachfolgend eine knappe Beschreibung eines typischen Barcode‑Erstellungsszenar ## Compact PDF417 Codierungs‑Tutorials ### [Creating Compact PDF417 Barcodes](./compact-pdf417-basic-configuration/) Erfahren Sie, wie Sie Compact PDF417 Barcodes mit Aspose.BarCode für .NET erzeugen. Umfassender Leitfaden mit Schritt‑für‑Schritt‑Anweisungen und Code‑Beispielen. +### [PDF417-Barcode in C# generieren – Barcode‑Generator‑Leitfaden](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +Erfahren Sie, wie Sie mit dem Barcode‑Generator in C# PDF417‑Barcodes erstellen. +### [Wie man Barcode‑Bilder in C# speichert – vollständiger Leitfaden](./how-to-save-barcode-images-in-c-complete-guide/) +Erfahren Sie, wie Sie Barcode‑Bilder in C# generieren und in gängigen Formaten speichern. ## Häufig gestellte Fragen @@ -113,4 +117,4 @@ A: Nein, es werden keine externen Schriftarten benötigt; die Bibliothek überni {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/german/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/german/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..0359320b9 --- /dev/null +++ b/barcode/german/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,111 @@ +--- +category: general +date: 2026-08-06 +description: PDF417-Barcode in C# mit einem Barcode-Generator erstellen – C# PDF417‑Tutorial. + Erfahren Sie, wie Sie einen PDF417-Barcode generieren, den Binärmodus einstellen + und als PNG speichern. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: de +lastmod: 2026-08-06 +og_description: Erstelle PDF417-Barcode in C# mit BarcodeGenerator. Lerne, die Binärcodierung + einzustellen, PDF417-Optionen zu konfigurieren und den Barcode als PNG-Bild zu speichern. +og_image_alt: Generate PDF417 barcode example +og_title: PDF417-Barcode in C# generieren – vollständige Anleitung zum Barcode-Generator +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: PDF417-Barcode in C# generieren – Leitfaden zum Barcode-Generator +url: /de/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# PDF417-Barcode in C# generieren – Leitfaden zum Barcode-Generator + +Wenn Sie in einer .NET-Anwendung **PDF417-Barcode** erzeugen müssen, zeigt Ihnen dieser Leitfaden genau, wie das geht. Mit der Aspose.BarCode-Bibliothek können Sie Binärdaten kodieren, den PDF417‑Encoder in den Binärmodus schalten und ein hochauflösendes PNG‑Bild in nur wenigen Zeilen C# ausgeben. + +Dieses Tutorial deckt alles ab, von der Installation des NuGet‑Pakets über die Anpassung der PDF417‑Einstellungen bis hin zur Behandlung von Randfällen wie leeren Daten oder nicht unterstützten Zeichen. Am Ende des Leitfadens haben Sie ein vollständiges, ausführbares Beispiel, das Sie in jedes C#‑Projekt einbinden können. + +**Was Sie lernen werden** + +* Installieren und referenzieren Sie das Barcode‑Generator‑C#‑PDF417‑Paket. +* Bereiten Sie Binärdaten für die Kodierung vor. +* Konfigurieren Sie den `BarcodeGenerator` für die binäre PDF417‑Kodierung. +* Speichern Sie den erzeugten Barcode als PNG‑Datei und überprüfen Sie das Ergebnis. + +> **Voraussetzungen** – .NET 6.0 oder höher, Visual Studio 2022 (oder eine beliebige IDE Ihrer Wahl) und eine Internetverbindung, um das NuGet‑Paket zu beziehen. + +--- + +## Schritt 1: Installieren Sie das Aspose.BarCode NuGet-Paket + +Der zuverlässigste Weg, mit PDF417‑Barcodes in C# zu arbeiten, ist die **Aspose.BarCode**‑Bibliothek, die die binäre Kodierung vollständig unterstützt. + +```bash +dotnet add package Aspose.BarCode +``` + +*Warum dieser Schritt?* +Die Klasse `BarcodeGenerator` befindet sich im Namespace `Aspose.BarCode`. Durch das Hinzufügen des Pakets werden alle erforderlichen DLLs zur Compile‑Zeit bereitgestellt und Sie erhalten die neuesten Fehlerbehebungen und Leistungsverbesserungen. + +--- + +## Schritt 2: Erstellen Sie ein neues Konsolenprojekt (optional, aber empfohlen) + +Wenn Sie den Code isoliert testen, starten Sie eine neue Konsolenanwendung: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Fügen Sie das Paket dem Projekt hinzu (wiederholen Sie den Befehl aus Schritt 1, falls Sie das noch nicht getan haben). + +--- + +## Schritt 3: Bereiten Sie Binärdaten für die Kodierung vor + +PDF417 kann Rohbytes kodieren, wenn Sie den Kodiermodus auf **Binary** setzen. Unten steht ein einfaches Byte‑Array, das den Vorgang demonstriert. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Warum Binärdaten?* +Der Binärmodus ermöglicht das Speichern beliebiger Byte‑Sequenzen – nützlich zum Einbetten von Dateien, Verschlüsselungsschlüsseln oder benutzerdefinierten Nutzdaten, die kein Klartext sind. + +--- + +## Schritt 4: Initialisieren Sie den Barcode‑Generator und konfigurieren Sie PDF417 für den Binärmodus + + + +## Was sollten Sie als Nächstes lernen? + +Die folgenden Tutorials behandeln eng verwandte Themen, die auf den in diesem Leitfaden gezeigten Techniken aufbauen. Jede Ressource enthält vollständige, funktionierende Code‑Beispiele mit Schritt‑für‑Schritt‑Erklärungen, um Ihnen zu helfen, weitere API‑Funktionen zu meistern und alternative Implementierungsansätze in Ihren eigenen Projekten zu erkunden. + +- [How to Create Barcode – Compact PDF417 with Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [How to Generate PDF417 Barcodes – Compact PDF417 Encoding](/barcode/english/net/compact-pdf417-encoding/) +- [How to generate Aztec barcode with custom aspect ratio using Aspose.BarCode for .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/german/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/german/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..bd44f4cde --- /dev/null +++ b/barcode/german/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,237 @@ +--- +category: general +date: 2026-08-06 +description: Wie man Barcode‑Bilder in C# mit MicroPdf417 und Code 128‑Emulation speichert. + Erfahren Sie, wie Sie PDF417‑Barcodes erzeugen und Einstellungen anpassen. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: de +lastmod: 2026-08-06 +og_description: Wie man Barcode‑Bilder in C# schnell mit MicroPdf417 und Code 128‑Emulation + speichert. Folgen Sie diesem Leitfaden, um PDF417‑Barcodes zu erzeugen und die Ausgabe + anzupassen. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: Wie man Barcode‑Bilder in C# speichert – Schritt‑für‑Schritt‑Anleitung +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: Wie man Barcode‑Bilder in C# speichert – vollständige Anleitung +url: /de/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Wie man Barcode‑Bilder in C# speichert – vollständige Anleitung + +Wenn Sie **how to save barcode**‑Bilder in einer .NET‑Anwendung benötigen, zeigt Ihnen dieses Tutorial eine sofort einsatzbereite Lösung. Sie lernen, wie man PDF417‑Barcodes generiert, Code 128‑Emulation anwendet und die resultierenden PNG‑Dateien auf die Festplatte schreibt. + +Das Beispiel verwendet die Aspose.BarCode for .NET‑Bibliothek, die MicroPdf417, Code 128 und viele weitere Standards unterstützt. Am Ende der Anleitung können Sie Barcode‑Dateien für die Modi 908, 909, 910 und 911 erzeugen und verstehen, wie Sie visuelle Parameter für optimales Scannen anpassen. + +## Voraussetzungen + +Bevor Sie beginnen, stellen Sie sicher, dass Sie folgendes haben: + +* .NET 6.0 SDK oder neuer installiert +* Visual Studio 2022 (oder eine beliebige IDE, die C# unterstützt) +* Eine aktive Aspose.BarCode for .NET‑Lizenz (eine kostenlose Testversion reicht für die Entwicklung) + +Das Tutorial setzt grundlegende Kenntnisse von C#‑Konsolenprojekten voraus. + +## Schritt 1: Erstellen Sie ein neues Konsolenprojekt und fügen Sie das BarCode‑Paket hinzu + +Öffnen Sie ein Terminal und führen Sie die folgenden Befehle aus: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +Der Befehl `dotnet add package` lädt die neueste Aspose.BarCode‑Bibliothek herunter, die die Klassen enthält, die Sie benötigen, um **how to generate pdf417**‑Barcodes zu erzeugen. + +## Schritt 2: Schreiben Sie das komplette Programm + +Erstellen Sie eine Datei namens `Program.cs` (ersetzen Sie die vorhandene) und fügen Sie den untenstehenden Code ein. Das Programm demonstriert einen **barcode generator with code128**‑Emulation und zeigt mehrere Wege, **how to save barcode**‑Bilder zu speichern. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Warum dieser Code funktioniert + +* **Single generator instance** – Das erneute Verwenden von `BarcodeGenerator` vermeidet wiederholte Speicherzuweisungen und hält die Konfiguration über alle Modi hinweg konsistent. +* **XDimension** – Das Setzen der Pixelgröße auf 2 liefert ein klares, lesbares Bild, ohne die Dateigröße unnötig zu erhöhen. +* **IsCode128Emulation** – Aktiviert Code 128‑ähnliche Balkenmuster innerhalb eines PDF417‑Symbols, die von manchen Scannern zuverlässiger interpretiert werden. +* **Save method** – Die von Ihnen gesehene `Save`‑Überladung ist der kanonische Weg, **how to save barcode**‑Dateien zu speichern; sie schreibt das Bild direkt im angegebenen Format ins Dateisystem. + +## Schritt 3: Führen Sie das Programm aus und überprüfen Sie die Ausgabe + +Bauen und starten Sie das Projekt: + +```bash +dotnet run +``` + +Nachdem die Konsole die Bestätigungsnachrichten ausgegeben hat, öffnen Sie den Ordner, den Sie in `outputPath` angegeben haben. Sie sollten vier PNG‑Dateien sehen: + +* `MicroPdf417_Code128_908.png` – FNC1 + alphanumerischer Indikator +* `MicroPdf417_Code128_909.png` – FNC1 + numerischer Indikator +* `MicroPdf417_Code128_910.png` – reiner Code 128‑Payload + +Jedes Bild enthält ein MicroPdf417‑Symbol, das von gängigen Barcode‑Lesern gescannt werden kann. Wenn ein Scanner eine Datei nicht lesen kann, erwägen Sie, `XDimension.Pixels` zu erhöhen oder `Pdf417.Columns` anzupassen, um der Auflösung des Zielgeräts zu entsprechen. + +## Schritt 4: Häufige Variationen und Sonderfälle + +### Ändern des Bildformats + +Der `BarCodeImageFormat`‑Enum unterstützt PNG, JPEG, BMP und TIFF. Ersetzen Sie `BarCodeImageFormat.Png` durch `BarCodeImageFormat.Jpeg`, wenn Sie für die Web‑Auslieferung eine kleinere Dateigröße benötigen. + +### Erzeugen eines voll‑großen PDF417 anstelle von MicroPdf417 + +Falls Ihr Anwendungsfall den größeren PDF417‑Standard erfordert, instanziieren Sie den Generator mit `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +Denken Sie daran, `Pdf417.Rows` und `Pdf417.Columns` anzupassen, um den ISO/IEC 15417‑Spezifikationen zu entsprechen. + +### Umgang mit Sonderzeichen + +Der Gruppentrenner (`\u001d`) ist für Anwendungskennungen erforderlich. Enthält Ihre Daten andere Steuerzeichen, escapen Sie diese mittels Unicode‑Notation (z. B. `\u001c` für Dateitrenner), um Laufzeitfehler zu vermeiden. + +### Lizenzüberlegungen + +Das Ausführen des Codes ohne Lizenz erzeugt ein Wasserzeichen auf den generierten Bildern. Wenden Sie Ihre Lizenz frühzeitig in `Main` an: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Schritt 5: Tipps für den Produktionseinsatz + +* **Batch‑Verarbeitung** – Kapseln Sie die Speicherlogik in einer Schleife, die Zeilen aus einer CSV‑Datei oder Datenbank liest; verwenden Sie dieselbe `BarcodeGenerator`‑Instanz für bessere Performance. +* **Thread‑Sicherheit** – `BarcodeGenerator` ist nicht thread‑sicher. Erstellen Sie pro Thread eine separate Instanz, wenn Sie die Barcode‑Erstellung parallelisieren. +* **Fehlerbehandlung** – Umschließen Sie die `Save`‑Aufrufe mit `try…catch`‑Blöcken, um I/O‑Ausnahmen abzufangen, insbesondere beim Schreiben auf Netzwerkfreigaben. + +## Fazit + +Sie wissen jetzt, **how to save barcode**‑Bilder in C# mit Aspose.BarCode zu erzeugen, **how to generate pdf417**‑Symbole mit Code 128‑Emulation zu erstellen und einen **barcode generator with code128** für mehrere Modi zu konfigurieren. Das vollständige, ausführbare Beispiel demonstriert jeden Schritt von der Projektanlage bis zu den finalen PNG‑Dateien. + +Als Nächstes können Sie verwandte Themen erkunden, wie **Embedding Barcodes in PDF Documents**, **Creating QR Codes with Custom Colors** oder **Integrating Barcode Generation into ASP.NET Core APIs**. Diese Erweiterungen bauen auf denselben Prinzipien auf und ermöglichen Ihnen die Automatisierung einer breiten Palette von Scan‑Workflows. + +## Was sollten Sie als Nächstes lernen? + + +Die folgenden Tutorials behandeln eng verwandte Themen, die auf den in diesem Leitfaden gezeigten Techniken aufbauen. Jede Ressource enthält vollständige, funktionierende Codebeispiele mit Schritt‑für‑Schritt‑Erklärungen, um Ihnen zu helfen, weitere API‑Funktionen zu meistern und alternative Implementierungsansätze in Ihren eigenen Projekten zu erkunden. + +- [How to Generate PDF417 Barcodes – Compact PDF417 Encoding](/barcode/english/net/compact-pdf417-encoding/) +- [How to Save PNG using DataMatrix C40 with Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [How to Generate Barcode - One-Dimensional Barcode Types](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/german/net/one-dimensional-barcode-types/_index.md b/barcode/german/net/one-dimensional-barcode-types/_index.md index b2fd5ba30..3969149ca 100644 --- a/barcode/german/net/one-dimensional-barcode-types/_index.md +++ b/barcode/german/net/one-dimensional-barcode-types/_index.md @@ -78,15 +78,17 @@ Erfahren Sie, wie Sie mit Aspose.BarCode für .NET Barcodes in .NET generieren. Erfahren Sie, wie Sie Ausnahmen beim Generieren eindimensionaler Barcodes mit Aspose.BarCode für .NET behandeln. Diese Schritt-für-Schritt-Anleitung sorgt für fehlertolerante Barcode-Lösungen. Jetzt loslegen! ### [Eindimensionale Breit-Schmal-Verhältnis-Konfiguration](./one-dimensional-wide-narrow-ratio-configuration/) Generieren Sie ganz einfach individuelle Barcodes mit Aspose.BarCode für .NET. Schritt-für-Schritt-Anleitung für die eindimensionale Breit-Schmal-Verhältniskonfiguration. +### [Wie man Barcode in C# festlegt – vollständige Aspose.BarCode-Anleitung](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Erfahren Sie, wie Sie mit Aspose.BarCode in C# Barcodes erstellen – komplette Schritt‑für‑Schritt‑Anleitung. ## Abschluss -In dieser Tutorial-Reihe sind wir in die Welt der eindimensionalen Barcode-Typen eingetaucht und haben uns auf deren Konfiguration und Anpassung konzentriert. Mit Aspose.BarCode für .NET wird der Prozess vereinfacht und sichergestellt, dass Sie Barcodes erstellen können, die auf Ihre Bedürfnisse zugeschnitten sind. Ganz gleich, ob Sie ein erfahrener Entwickler sind oder gerade erst anfangen: Mit diesen Tutorials können Sie die Leistungsfähigkeit eindimensionaler Barcodes in Ihren .NET-Projekten nutzen. Starten Sie jetzt durch und entfesseln Sie das Potenzial der Barcode-Technologie! +In dieser Tutorial‑Reihe sind wir in die Welt der eindimensionalen Barcode‑Typen eingetaucht und haben uns auf deren Konfiguration und Anpassung konzentriert. Mit Aspose.BarCode für .NET wird der Prozess vereinfacht und sichergestellt, dass Sie Barcodes erstellen können, die auf Ihre Bedürfnisse zugeschnitten sind. Ganz gleich, ob Sie ein erfahrener Entwickler sind oder gerade erst anfangen: Mit diesen Tutorials können Sie die Leistungsfähigkeit eindimensionaler Barcodes in Ihren .NET‑Projekten nutzen. Starten Sie jetzt durch und entfesseln Sie das Potenzial der Barcode‑Technologie! -Mit diesem Artikel erwerben Sie nicht nur Kenntnisse über verschiedene eindimensionale Barcode-Typen, sondern gewinnen auch die Sicherheit, diese in Ihren Projekten umzusetzen. Viel Spaß beim Codieren! +Mit diesem Artikel erwerben Sie nicht nur Kenntnisse über verschiedene eindimensionale Barcode‑Typen, sondern gewinnen auch die Sicherheit, diese in Ihren Projekten umzusetzen. Viel Spaß beim Codieren! {{< /blocks/products/pf/tutorial-page-section >}} {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/german/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/german/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..268f1b8cc --- /dev/null +++ b/barcode/german/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,164 @@ +--- +category: general +date: 2026-08-06 +description: Wie man Barcode mit Aspose.BarCode in C# festlegt. Erfahren Sie, wie + Sie Makrozeichen ändern und ein Barcode‑Bild in C# mit Schritt‑für‑Schritt‑Code + erstellen. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: de +lastmod: 2026-08-06 +og_description: Wie man Barcode mit Aspose.BarCode in C# festlegt. Dieser Leitfaden + zeigt, wie man Makrozeichen ändert und schnell ein Barcode‑Bild in C# erstellt. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: Wie man einen Barcode in C# festlegt – Aspose.BarCode‑Tutorial +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: Wie man einen Barcode in C# setzt – vollständiger Aspose.BarCode‑Leitfaden +url: /de/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Wie man Barcode in C# setzt – vollständiger Aspose.BarCode‑Leitfaden + +Wenn Sie **wie man Barcode setzt** in einer .NET‑Anwendung benötigen, zeigt Ihnen dieses Tutorial die genauen Schritte mit Aspose.BarCode. Sie sehen, wie Sie Makro‑Zeichen ändern, visuelle Parameter anpassen und **Barcode‑Bild C#**‑Dateien erstellen, die direkt auf die Festplatte gespeichert werden können. + +Der Leitfaden deckt alles ab, von der Installation der Bibliothek bis zur Erzeugung zweier MicroPDF417‑Barcodes mit unterschiedlichen Makro‑Werten. Keine externe Dokumentation ist nötig – Sie können den Code kopieren, ausführen und das PNG‑Ergebnis sofort prüfen. + +## Voraussetzungen + +Bevor Sie beginnen, stellen Sie sicher, dass Sie folgendes haben: + +* .NET 6.0 oder höher (das Beispiel verwendet ein Konsolenprojekt) +* Visual Studio 2022 oder eine beliebige C#‑IDE +* Eine aktive Aspose.BarCode‑Lizenz (eine kostenlose Evaluation reicht für Tests) +* Grundkenntnisse der C#‑Syntax + +Sie benötigen außerdem das NuGet‑Paket: + +```bash +dotnet add package Aspose.BarCode +``` + +## Wie man Barcode‑Parameter setzt – Schritt 1: Generator erstellen + +Der erste Schritt besteht darin, einen `BarcodeGenerator` mit der gewünschten Symbolik und den Daten zu instanziieren. Die Verwendung von `EncodeTypes.MicroPdf417` weist Aspose.BarCode an, eine kompakte PDF417‑Variante zu erzeugen. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Warum das wichtig ist:** `BarcodeGenerator` ist das zentrale Objekt; alle späteren Einstellungen ändern seine `Parameters`‑Eigenschaft. Die Auswahl des richtigen `EncodeTypes` stellt sicher, dass der Barcode der MicroPDF417‑Spezifikation entspricht. + +## Wie man Makro‑Zeichen ändert – Schritt 2: Visuelle Parameter anpassen + +Makro‑Zeichen sind optionale Steuercodes, mit denen Sie mehrere PDF417‑Symbole verketten können. Das Beispiel wechselt zwischen `Macro05` und `Macro06`. Außerdem setzen Sie die Modulbreite (`XDimension`) und die Spaltenanzahl, um die Barcode‑Größe zu steuern. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Warum Sie das Makro ändern:** Das Makro‑Zeichen signalisiert einem Scanner, dass dieser Barcode Teil eines größeren Datensatzes ist. Der Wechsel demonstriert, wie dieselben Daten mit unterschiedlichen Makro‑Kennungen verknüpft werden können. + +## Wie man Barcode setzt – Schritt 3: Zweiten Barcode mit anderem Makro erzeugen + +Jetzt verwenden wir dieselbe `generator`‑Instanz erneut und tauschen nur den Makro‑Wert aus. Das vermeidet das Neuerstellen des Objekts und zeigt, dass **wie man Barcode setzt** Parameter zur Laufzeit geändert werden können. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Erwartete Ausgabe + +Das Ausführen des Programms erzeugt zwei PNG‑Dateien im Projektordner: + +* `MicroPdf417_Macro05.png` – Barcode mit Macro05 +* `MicroPdf417_Macro06.png` – Barcode mit Macro06 + +Beide Bilder zeigen ein kompaktes MicroPDF417‑Symbol, das `12345ABC` kodiert. Sie können die PNG‑Dateien mit jedem Bildbetrachter öffnen, um die visuelle Qualität zu überprüfen. + +## Barcode‑Generator C# Best Practices + +* **Generator wiederverwenden:** Das Ändern von `Parameters` an einer bestehenden Instanz ist effizienter, als für jeden Barcode einen neuen Generator zu erstellen. +* **X‑Dimension früh setzen:** Die Modulbreite beeinflusst die Gesamtbildgröße; passen Sie sie vor dem Speichern an. +* **Makro‑Verwendung validieren:** Nicht alle Scanner unterstützen Makro‑Zeichen. Testen Sie mit Ihrer Zielhardware, wenn Sie sie in der Produktion einsetzen wollen. +* **Ressourcen freigeben:** `BarcodeGenerator` implementiert `IDisposable`. In einem langlaufenden Service sollten Sie ihn in einem `using`‑Block einbetten oder `Dispose()` nach Gebrauch aufrufen. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Barcode‑Bild C# erstellen – Fehlersuche + +| Symptom | Wahrscheinliche Ursache | Lösung | +|--------------------------------------|---------------------------------------------|--------| +| Leere PNG‑Datei | `XDimension` auf 0 oder zu hohen Wert gesetzt | Verwenden Sie eine vernünftige Pixelbreite (1‑5) | +| Barcode vom Scanner nicht lesbar | Falsches Makro‑Zeichen für den Scanner | Prüfen Sie die Scanner‑Dokumentation; verwenden Sie `MacroNone`, falls nicht benötigt | +| Ausnahme `ArgumentOutOfRangeException` | Spaltenanzahl außerhalb des zulässigen Bereichs (1‑30) | Halten Sie `Columns` zwischen 1 und 30 | + +## Fazit + +Sie wissen jetzt **wie man Barcode‑Eigenschaften setzt**, **wie man Makro‑Zeichen ändert** und wie man **Barcode‑Bild C#**‑Dateien mit Aspose.BarCode erstellt. Das vollständige, ausführbare Beispiel demonstriert den gesamten Workflow von der Generator‑Erstellung bis zum Bild‑Export. + +Als Nächstes können Sie weitere Symboliken erkunden (`EncodeTypes.QR`, `EncodeTypes.Code128`) oder den Barcode direkt in PDFs mit Aspose.PDF einbetten. Beide Themen gehören zum breiteren **barcode generator c#**‑Ökosystem und lassen sich mit minimalen Code‑Änderungen zu diesem Projekt hinzufügen. + +Viel Spaß beim Coden und experimentieren Sie gern mit verschiedenen Makro‑Werten, Dimensionen und Ausgabeformaten! + + +## Was sollten Sie als Nächstes lernen? + + +Die folgenden Tutorials behandeln eng verwandte Themen, die auf den in diesem Leitfaden gezeigten Techniken aufbauen. Jede Ressource enthält vollständige, funktionierende Code‑Beispiele mit Schritt‑für‑Schritt‑Erklärungen, um Ihnen zu helfen, weitere API‑Funktionen zu meistern und alternative Implementierungsansätze in Ihren eigenen Projekten zu erkunden. + +- [How to create barcode quiet zone for Code 16K using Aspose.BarCode for .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [How to create dotcode extended codetext with Aspose.BarCode for .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [How to Set Border for ITF-14 Barcode Customization](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/greek/net/compact-pdf417-encoding/_index.md b/barcode/greek/net/compact-pdf417-encoding/_index.md index 06b8d9294..bb227264a 100644 --- a/barcode/greek/net/compact-pdf417-encoding/_index.md +++ b/barcode/greek/net/compact-pdf417-encoding/_index.md @@ -46,7 +46,7 @@ weight: 29 - **Λειτουργία Συμπαγούς:** Αφαιρεί περιττές προσθήκες, δημιουργώντας έναν μικρότερο κώδικα χωρίς να θυσιάζει την αναγνωσιμότητα. ### Επιλογές Διόρθωσης Σφαλμάτων PDF417 -Το Aspose.BarCode σας επιτρέπει να ορίσετε την ιδιότητα `Pdf417ErrorCorrectionLevel` (0‑8). Τα υψηλότερα επίπεδα αυξάνουν τον πλεονασμό, κάτι χρήσιμο σε σκληρά περιβάλλοντα όπως η βιομηχανική σάρωση. Επιλέξτε επίπεδο βάσει της ανοχή σας στον κίνδυνο και των περιορισμών χώρου. +Το Aspose.BarCode σας επιτρέπει να ορίσετε την ιδιότητα `Pdf417ErrorCorrectionLevel` (0‑8). Τα υψηλότερα επίπεδα αυξάνουν τον πλεονασμό, κάτι χρήσιμο σε σκληρά περιβάλλοντα όπως η βιομηχανική σάρωση. Επιλέξτε επίπεδο βάσει της ανοχής σας στον κίνδυνο και των περιορισμών χώρου. ## Δημιουργία Συμπαγών PDF417 Κωδικών με το Aspose.BarCode for .NET @@ -85,6 +85,9 @@ weight: 29 ## Συμμετοχικά Σεμινάρια Συμπαγούς PDF417 ### [Δημιουργία Συμπαγών PDF417 Κωδικών](./compact-pdf417-basic-configuration/) Μάθετε πώς να δημιουργείτε Συμπαγείς PDF417 κωδικούς χρησιμοποιώντας το Aspose.BarCode for .NET. Αναλυτικός οδηγός με βήμα‑βήμα οδηγίες και παραδείγματα κώδικα. +### [Δημιουργία κωδικού PDF417 σε C# – οδηγός γεννήτριας barcode](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +Μάθετε πώς να δημιουργήσετε κωδικούς PDF417 σε C# χρησιμοποιώντας το Aspose.BarCode Generator. +### [Πώς να αποθηκεύσετε εικόνες barcode σε C# – πλήρης οδηγός](./how-to-save-barcode-images-in-c-complete-guide/) ## Συχνές Ερωτήσεις @@ -114,4 +117,4 @@ weight: 29 {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/greek/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/greek/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..f5e9f9f28 --- /dev/null +++ b/barcode/greek/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,110 @@ +--- +category: general +date: 2026-08-06 +description: Δημιουργήστε γραμμωτό κώδικα PDF417 σε C# με έναν γεννήτρια γραμμωτών + κωδίκων C# PDF417 tutorial. Μάθετε πώς να δημιουργείτε γραμμωτό κώδικα PDF417, να + ορίζετε τη δυαδική λειτουργία και να τον αποθηκεύετε ως PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: el +lastmod: 2026-08-06 +og_description: Δημιουργήστε γραμμωτό κώδικα PDF417 σε C# χρησιμοποιώντας το BarcodeGenerator. + Μάθετε πώς να ορίζετε δυαδική κωδικοποίηση, να διαμορφώνετε τις επιλογές PDF417 + και να αποθηκεύετε τον κώδικα ως εικόνα PNG. +og_image_alt: Generate PDF417 barcode example +og_title: Δημιουργία barcode PDF417 σε C# – πλήρης οδηγός δημιουργίας barcode +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: Δημιουργία γραμμωτού κώδικα PDF417 σε C# – οδηγός δημιουργίας γραμμωτού κώδικα +url: /el/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Δημιουργία barcode PDF417 σε C# – οδηγός δημιουργού barcode + +Αν χρειάζεστε **να δημιουργήσετε barcode PDF417** σε μια εφαρμογή .NET, αυτός ο οδηγός σας δείχνει ακριβώς πώς. Χρησιμοποιώντας τη βιβλιοθήκη Aspose.BarCode μπορείτε να κωδικοποιήσετε δυαδικά δεδομένα, να μεταβείτε στον κωδικοποιητή PDF417 σε δυαδική λειτουργία και να εξάγετε μια εικόνα PNG υψηλής ανάλυσης με λίγες μόνο γραμμές C#. + +Αυτό το tutorial καλύπτει τα πάντα, από την εγκατάσταση του πακέτου NuGet μέχρι την προσαρμογή των ρυθμίσεων PDF417 και τη διαχείριση ειδικών περιπτώσεων όπως κενά δεδομένα ή μη υποστηριζόμενους χαρακτήρες. Στο τέλος του οδηγού θα έχετε ένα πλήρες, εκτελέσιμο παράδειγμα που μπορείτε να ενσωματώσετε σε οποιοδήποτε έργο C#. + +**Τι θα μάθετε** + +* Εγκατάσταση και αναφορά του πακέτου δημιουργού barcode C# PDF417. +* Προετοιμασία δυαδικών δεδομένων για κωδικοποίηση. +* Διαμόρφωση του `BarcodeGenerator` για δυαδική κωδικοποίηση PDF417. +* Αποθήκευση του παραγόμενου barcode ως αρχείο PNG και επαλήθευση του αποτελέσματος. + +> **Prerequisites** – .NET 6.0 ή νεότερο, Visual Studio 2022 (ή οποιοδήποτε IDE προτιμάτε), και σύνδεση στο διαδίκτυο για λήψη του πακέτου NuGet. + +--- + +## Βήμα 1: Εγκατάσταση του πακέτου NuGet Aspose.BarCode + +Ο πιο αξιόπιστος τρόπος για να δουλέψετε με barcode PDF417 σε C# είναι η βιβλιοθήκη **Aspose.BarCode**, η οποία υποστηρίζει πλήρως τη δυαδική κωδικοποίηση. + +```bash +dotnet add package Aspose.BarCode +``` + +*Γιατί αυτό το βήμα;* +Η κλάση `BarcodeGenerator` βρίσκεται στο namespace `Aspose.BarCode`. Η προσθήκη του πακέτου εξασφαλίζει ότι όλα τα απαιτούμενα DLL είναι διαθέσιμα κατά τη μεταγλώττιση και ότι λαμβάνετε τις τελευταίες διορθώσεις σφαλμάτων και βελτιώσεις απόδοσης. + +--- + +## Βήμα 2: Δημιουργία νέου έργου console (προαιρετικό αλλά συνιστάται) + +Αν δοκιμάζετε τον κώδικα απομονωμένα, ξεκινήστε μια νέα εφαρμογή console: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Προσθέστε το πακέτο στο έργο (επαναλάβετε την εντολή από το Βήμα 1 αν δεν το έχετε ήδη κάνει). + +--- + +## Βήμα 3: Προετοιμασία δυαδικών δεδομένων για κωδικοποίηση + +Το PDF417 μπορεί να κωδικοποιήσει ακατέργαστα bytes όταν ορίσετε τη λειτουργία κωδικοποίησης σε **Binary**. Παρακάτω υπάρχει ένας απλός πίνακας byte που δείχνει τη διαδικασία. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Γιατί δυαδικά δεδομένα;* +Η δυαδική λειτουργία σας επιτρέπει να αποθηκεύσετε οποιαδήποτε ακολουθία byte — χρήσιμη για ενσωμάτωση αρχείων, κλειδιά κρυπτογράφησης ή προσαρμοσμένα payloads που δεν είναι απλό κείμενο. + +## Βήμα 4: Αρχικοποίηση του δημιουργού barcode και διαμόρφωση του PDF417 σε δυαδική λειτουργία + + + +## Τι θα πρέπει να μάθετε στη συνέχεια; + +Τα παρακάτω tutorials καλύπτουν στενά σχετιζόμενα θέματα που βασίζονται στις τεχνικές που παρουσιάζονται σε αυτόν τον οδηγό. Κάθε πόρος περιλαμβάνει πλήρη παραδείγματα κώδικα με βήμα‑βήμα εξηγήσεις για να σας βοηθήσει να κατακτήσετε πρόσθετες δυνατότητες του API και να εξερευνήσετε εναλλακτικές προσεγγίσεις υλοποίησης στα δικά σας έργα. + +- [Πώς να δημιουργήσετε Barcode – Compact PDF417 με Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [Πώς να δημιουργήσετε PDF417 Barcodes – Compact PDF417 Encoding](/barcode/english/net/compact-pdf417-encoding/) +- [Πώς να δημιουργήσετε Aztec barcode με προσαρμοσμένο λόγο διαστάσεων χρησιμοποιώντας Aspose.BarCode για .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/greek/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/greek/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..004185104 --- /dev/null +++ b/barcode/greek/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,237 @@ +--- +category: general +date: 2026-08-06 +description: Πώς να αποθηκεύσετε εικόνες barcode σε C# χρησιμοποιώντας το MicroPdf417 + με εξομοίωση Code 128. Μάθετε πώς να δημιουργείτε barcode PDF417 και να προσαρμόζετε + τις ρυθμίσεις. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: el +lastmod: 2026-08-06 +og_description: Πώς να αποθηκεύσετε εικόνες barcode σε C# γρήγορα με το MicroPdf417 + και την προσομοίωση Code 128. Ακολουθήστε αυτόν τον οδηγό για να δημιουργήσετε barcode + PDF417 και να προσαρμόσετε την έξοδο. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: Πώς να αποθηκεύσετε εικόνες barcode σε C# – βήμα‑βήμα οδηγός +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: Πώς να αποθηκεύσετε εικόνες barcode σε C# – πλήρης οδηγός +url: /el/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Πώς να αποθηκεύσετε εικόνες barcode σε C# – πλήρης οδηγός + +Αν χρειάζεστε **how to save barcode** εικόνες σε μια εφαρμογή .NET, αυτό το tutorial σας παρουσιάζει μια έτοιμη λύση. Θα μάθετε πώς να δημιουργείτε barcode PDF417, να εφαρμόζετε εξομοίωση Code 128 και να γράφετε τα παραγόμενα αρχεία PNG στο δίσκο. + +Το παράδειγμα χρησιμοποιεί τη βιβλιοθήκη Aspose.BarCode for .NET, η οποία υποστηρίζει MicroPdf417, Code 128 και πολλά άλλα πρότυπα. Στο τέλος του οδηγού μπορείτε να παράγετε αρχεία barcode για τις λειτουργίες 908, 909, 910 και 911, και θα καταλάβετε πώς να ρυθμίσετε τις οπτικές παραμέτρους για βέλτιστη σάρωση. + +## Προαπαιτούμενα + +Πριν ξεκινήσετε, βεβαιωθείτε ότι έχετε: + +* .NET 6.0 SDK ή νεότερο εγκατεστημένο +* Visual Studio 2022 (ή οποιοδήποτε IDE που υποστηρίζει C#) +* Ένα ενεργό license Aspose.BarCode for .NET (μια δωρεάν δοκιμή λειτουργεί για ανάπτυξη) + +Το tutorial υποθέτει βασική εξοικείωση με έργα κονσόλας C#. + +## Βήμα 1: Δημιουργήστε ένα νέο έργο κονσόλας και προσθέστε το πακέτο BarCode + +Ανοίξτε ένα τερματικό και εκτελέστε τις παρακάτω εντολές: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +Η εντολή `dotnet add package` κατεβάζει τη νεότερη βιβλιοθήκη Aspose.BarCode, η οποία περιέχει τις κλάσεις που χρειάζεστε για **how to generate pdf417** barcodes. + +## Βήμα 2: Γράψτε το πλήρες πρόγραμμα + +Δημιουργήστε ένα αρχείο με όνομα `Program.cs` (αντικαταστήστε το υπάρχον) και επικολλήστε τον κώδικα παρακάτω. Το πρόγραμμα δείχνει μια **barcode generator with code128** εξομοίωση και παρουσιάζει διάφορους τρόπους για **how to save barcode** εικόνες. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Γιατί αυτός ο κώδικας λειτουργεί + +* **Single generator instance** – Η επαναχρησιμοποίηση του `BarcodeGenerator` αποτρέπει επαναλαμβανόμενη κατανομή μνήμης και διατηρεί τη διαμόρφωση συνεπή μεταξύ των λειτουργιών. +* **XDimension** – Ο καθορισμός του μεγέθους pixel σε 2 παράγει μια καθαρή, αναγνώσιμη εικόνα χωρίς να αυξάνει το μέγεθος του αρχείου. +* **IsCode128Emulation** – Ενεργοποιεί μοτίβα μπαρ τύπου Code 128 μέσα σε σύμβολο PDF417, τα οποία ορισμένοι σαρωτές ερμηνεύουν πιο αξιόπιστα. +* **Save method** – Η υπερφόρτωση `Save` που βλέπετε είναι ο κανονικός τρόπος για **how to save barcode** αρχεία· γράφει την εικόνα απευθείας στο σύστημα αρχείων στη μορφή που καθορίζετε. + +## Βήμα 3: Εκτελέστε το πρόγραμμα και επαληθεύστε το αποτέλεσμα + +Δομήστε και εκτελέστε το έργο: + +```bash +dotnet run +``` + +Αφού η κονσόλα εμφανίσει τα μηνύματα επιβεβαίωσης, ανοίξτε το φάκελο που ορίσατε στο `outputPath`. Θα πρέπει να δείτε τέσσερα αρχεία PNG: + +* `MicroPdf417_Code128_908.png` – Δείκτης FNC1 + αλφαριθμητικός +* `MicroPdf417_Code128_909.png` – Δείκτης FNC1 + αριθμητικός +* `MicroPdf417_Code128_910.png` – καθαρό payload Code 128 + +Κάθε εικόνα περιέχει ένα σύμβολο MicroPdf417 που μπορεί να σαρωθεί από τυπικούς αναγνώστες barcode. Εάν ένας σαρωτής αποτύχει να διαβάσει ένα αρχείο, σκεφτείτε να αυξήσετε το `XDimension.Pixels` ή να προσαρμόσετε το `Pdf417.Columns` ώστε να ταιριάζει με την ανάλυση της συσκευής-στόχου. + +## Βήμα 4: Συνηθισμένες παραλλαγές και ειδικές περιπτώσεις + +### Αλλαγή μορφής εικόνας + +Η απαρίθμηση `BarCodeImageFormat` υποστηρίζει PNG, JPEG, BMP και TIFF. Αντικαταστήστε το `BarCodeImageFormat.Png` με `BarCodeImageFormat.Jpeg` εάν χρειάζεστε μικρότερο μέγεθος αρχείου για διανομή στο web. + +### Δημιουργία PDF417 πλήρους μεγέθους αντί για MicroPdf417 + +Εάν η περίπτωση χρήσης σας απαιτεί το μεγαλύτερο πρότυπο PDF417, δημιουργήστε τον γεννήτρια με `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +Θυμηθείτε να προσαρμόσετε τα `Pdf417.Rows` και `Pdf417.Columns` ώστε να πληρούν τις προδιαγραφές ISO/IEC 15417. + +### Διαχείριση ειδικών χαρακτήρων + +Ο διαχωριστής ομάδας (`\u001d`) απαιτείται για τους Αναγνωριστές Εφαρμογών. Εάν τα δεδομένα σας περιέχουν άλλους χαρακτήρες ελέγχου, διαφύγετε τους χρησιμοποιώντας την σημειογραφία Unicode (π.χ., `\u001c` για διαχωριστή αρχείων) ώστε να αποφύγετε σφάλματα χρόνου εκτέλεσης. + +### Σκέψεις για την άδεια + +Η εκτέλεση του κώδικα χωρίς άδεια ενεργοποιεί υδατογράφημα στις παραγόμενες εικόνες. Εφαρμόστε την άδειά σας νωρίς στο `Main`: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Βήμα 5: Συμβουλές για παραγωγική χρήση + +* **Batch processing** – Τυλίξτε τη λογική αποθήκευσης σε έναν βρόχο που διαβάζει γραμμές από CSV ή βάση δεδομένων· επαναχρησιμοποιήστε το ίδιο αντικείμενο `BarcodeGenerator` για απόδοση. +* **Thread safety** – Το `BarcodeGenerator` δεν είναι ασφαλές για νήματα. Δημιουργήστε ξεχωριστό αντικείμενο ανά νήμα εάν παράγετε barcode παράλληλα. +* **Error handling** – Περιβάλλετε τις κλήσεις `Save` σε μπλοκ `try…catch` για να συλλάβετε εξαιρέσεις I/O, ειδικά όταν γράφετε σε δικτυακές κοινόχρηστες τοποθεσίες. + +## Συμπέρασμα + +Τώρα γνωρίζετε πώς να **how to save barcode** εικόνες σε C# χρησιμοποιώντας Aspose.BarCode, πώς να **how to generate pdf417** σύμβολα με εξομοίωση Code 128, και πώς να διαμορφώσετε έναν **barcode generator with code128** για πολλαπλές λειτουργίες. Το πλήρες, εκτελέσιμο παράδειγμα δείχνει κάθε βήμα από τη ρύθμιση του έργου μέχρι τα τελικά αρχεία PNG. + +Στη συνέχεια, εξερευνήστε συναφή θέματα όπως **embedding barcodes in PDF documents**, **creating QR codes with custom colors**, ή **integrating barcode generation into ASP.NET Core APIs**. Αυτές οι επεκτάσεις βασίζονται στις ίδιες αρχές που καλύπτονται εδώ και σας επιτρέπουν να αυτοματοποιήσετε μια ευρεία γκάμα ροών εργασίας σάρωσης. + +## Τι Πρέπει Να Μάθετε Στη Σειρά; + +Τα παρακάτω tutorials καλύπτουν στενά σχετιζόμενα θέματα που βασίζονται στις τεχνικές που παρουσιάζονται σε αυτόν τον οδηγό. Κάθε πόρος περιλαμβάνει πλήρη παραδείγματα κώδικα με βήμα‑βήμα εξηγήσεις για να σας βοηθήσουν να κατακτήσετε πρόσθετες δυνατότητες API και να εξερευνήσετε εναλλακτικές προσεγγίσεις υλοποίησης στα δικά σας έργα. + +- [Πώς να Δημιουργήσετε Barcode PDF417 – Συμπαγής Κωδικοποίηση PDF417](/barcode/english/net/compact-pdf417-encoding/) +- [Πώς να Αποθηκεύσετε PNG χρησιμοποιώντας DataMatrix C40 με Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [Πώς να Δημιουργήσετε Barcode - Μονοδιάστατοι Τύποι Barcode](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/greek/net/one-dimensional-barcode-types/_index.md b/barcode/greek/net/one-dimensional-barcode-types/_index.md index 42905c3b2..1c4b0faa3 100644 --- a/barcode/greek/net/one-dimensional-barcode-types/_index.md +++ b/barcode/greek/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ url: /el/net/one-dimensional-barcode-types/ Μάθετε πώς να χειρίζεστε τις εξαιρέσεις κατά τη δημιουργία μονοδιάστατων γραμμωτών κωδίκων χρησιμοποιώντας το Aspose.BarCode για .NET. Αυτός ο οδηγός βήμα προς βήμα διασφαλίζει λύσεις γραμμωτού κώδικα ανεκτικές σε σφάλματα. Ξεκινήστε τώρα! ### [Μονοδιάστατη διαμόρφωση ευρείας-στενής αναλογίας](./one-dimensional-wide-narrow-ratio-configuration/) Δημιουργήστε εύκολα προσαρμοσμένους γραμμικούς κώδικες με το Aspose.BarCode για .NET. Οδηγός βήμα προς βήμα για μονοδιάστατη διαμόρφωση ευρείας-στενής αναλογίας. +### [Πώς να ορίσετε barcode σε C# – πλήρης οδηγός Aspose.BarCode](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Μάθετε πώς να δημιουργήσετε και να ρυθμίσετε barcode σε C# χρησιμοποιώντας το Aspose.BarCode με πλήρη οδηγό βήμα-βήμα. ## συμπέρασμα @@ -89,4 +91,4 @@ url: /el/net/one-dimensional-barcode-types/ {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/greek/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/greek/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..89b16af3e --- /dev/null +++ b/barcode/greek/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,163 @@ +--- +category: general +date: 2026-08-06 +description: Πώς να ορίσετε barcode χρησιμοποιώντας το Aspose.BarCode σε C#. Μάθετε + πώς να αλλάξετε τους μακροχαρακτήρες και να δημιουργήσετε εικόνα barcode σε C# με + βήμα‑βήμα κώδικα. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: el +lastmod: 2026-08-06 +og_description: Πώς να ορίσετε γραμμωτό κώδικα με το Aspose.BarCode σε C#. Αυτός ο + οδηγός δείχνει πώς να αλλάξετε τους μακροχαρακτήρες και να δημιουργήσετε γρήγορα + μια εικόνα γραμμωτού κώδικα σε C#. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: Πώς να ορίσετε γραμμωτό κώδικα σε C# – Εγχειρίδιο Aspose.BarCode +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: Πώς να ορίσετε γραμμωτό κώδικα σε C# – πλήρης οδηγός Aspose.BarCode +url: /el/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Πώς να ορίσετε barcode σε C# – πλήρης οδηγός Aspose.BarCode + +Αν χρειάζεστε **πώς να ορίσετε barcode** σε μια εφαρμογή .NET, αυτό το tutorial σας δείχνει τα ακριβή βήματα χρησιμοποιώντας το Aspose.BarCode. Θα δείτε πώς να αλλάξετε χαρακτήρες macro, να ρυθμίσετε οπτικές παραμέτρους και **να δημιουργήσετε εικόνα barcode C#** που μπορεί να αποθηκευτεί απευθείας στο δίσκο. + +Ο οδηγός καλύπτει τα πάντα, από την εγκατάσταση της βιβλιοθήκης μέχρι τη δημιουργία δύο MicroPDF417 barcode με διαφορετικές τιμές macro. Δεν απαιτείται εξωτερική τεκμηρίωση—απλώς αντιγράψτε τον κώδικα, εκτελέστε τον και επαληθεύστε αμέσως το αποτέλεσμα PNG. + +## Προαπαιτούμενα + +Πριν ξεκινήσετε, βεβαιωθείτε ότι έχετε: + +* .NET 6.0 ή νεότερο (το παράδειγμα χρησιμοποιεί ένα console project) +* Visual Studio 2022 ή οποιοδήποτε IDE για C# +* Ένα ενεργό license του Aspose.BarCode (μια δωρεάν αξιολόγηση λειτουργεί για δοκιμές) +* Βασικές γνώσεις σύνταξης C# + +Θα χρειαστείτε επίσης το πακέτο NuGet: + +```bash +dotnet add package Aspose.BarCode +``` + +## Πώς να ορίσετε παραμέτρους barcode – βήμα 1: δημιουργία του generator + +Η πρώτη ενέργεια είναι η δημιουργία ενός αντικειμένου `BarcodeGenerator` με τη ζητούμενη συμβολική αναπαράσταση και τα δεδομένα. Η χρήση του `EncodeTypes.MicroPdf417` λέει στο Aspose.BarCode να παραγάγει μια συμπαγή παραλλαγή PDF417. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Γιατί είναι σημαντικό:** Το `BarcodeGenerator` είναι το κεντρικό αντικείμενο· όλες οι επόμενες ρυθμίσεις τροποποιούν την ιδιότητα `Parameters`. Η επιλογή του σωστού `EncodeTypes` διασφαλίζει ότι το barcode ακολουθεί την προδιαγραφή MicroPDF417. + +## Πώς να αλλάξετε χαρακτήρες macro – βήμα 2: ρύθμιση οπτικών παραμέτρων + +Οι χαρακτήρες macro είναι προαιρετικοί κωδικοί ελέγχου που επιτρέπουν τη σύνδεση πολλαπλών συμβόλων PDF417. Το παράδειγμα εναλλάσσει μεταξύ `Macro05` και `Macro06`. Επίσης ορίζετε το πλάτος του μονάδας (`XDimension`) και τον αριθμό των στηλών για να ελέγξετε το μέγεθος του barcode. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Γιατί αλλάζετε το macro:** Ο χαρακτήρας macro ενημερώνει τον σαρωτή ότι αυτό το barcode αποτελεί μέρος ενός μεγαλύτερου συνόλου δεδομένων. Η εναλλαγή του δείχνει πώς τα ίδια δεδομένα μπορούν να συνδεθούν με διαφορετικούς αναγνωριστικούς macro. + +## Πώς να ορίσετε barcode – βήμα 3: δημιουργία δεύτερου barcode με διαφορετικό macro + +Τώρα επαναχρησιμοποιούμε το ίδιο αντικείμενο `generator`, αλλά αλλάζουμε μόνο την τιμή του macro. Αυτό αποφεύγει τη δημιουργία νέου αντικειμένου και δείχνει ότι **πώς να ορίσετε barcode** μπορεί να γίνει σε χρόνο εκτέλεσης. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Αναμενόμενο αποτέλεσμα + +Η εκτέλεση του προγράμματος δημιουργεί δύο αρχεία PNG στον φάκελο του έργου: + +* `MicroPdf417_Macro05.png` – barcode με Macro05 +* `MicroPdf417_Macro06.png` – barcode με Macro06 + +Και οι δύο εικόνες εμφανίζουν ένα συμπαγές σύμβολο MicroPDF417 που κωδικοποιεί το `12345ABC`. Μπορείτε να ανοίξετε τα αρχεία PNG με οποιονδήποτε προβολέα εικόνων για να επαληθεύσετε την οπτική ποιότητα. + +## Καλές πρακτικές για τον Barcode generator σε C# + +* **Επαναχρησιμοποίηση του generator:** Η αλλαγή των `Parameters` σε υπάρχον αντικείμενο είναι πιο αποδοτική από τη δημιουργία νέου generator για κάθε barcode. +* **Ορίστε το X‑dimension νωρίς:** Το πλάτος της μονάδας επηρεάζει το συνολικό μέγεθος της εικόνας· ρυθμίστε το πριν την αποθήκευση. +* **Επικυρώστε τη χρήση macro:** Δεν υποστηρίζουν όλοι οι σαρωτές χαρακτήρες macro. Δοκιμάστε με το υλικό σας αν σκοπεύετε να τα χρησιμοποιήσετε σε παραγωγή. +* **Αποδεσμεύστε πόρους:** Το `BarcodeGenerator` υλοποιεί το `IDisposable`. Σε υπηρεσία που τρέχει συνεχώς, τυλίξτε το σε μπλοκ `using` ή καλέστε `Dispose()` όταν τελειώσετε. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Δημιουργία εικόνας barcode C# – συμβουλές αντιμετώπισης προβλημάτων + +| Συμπτωμα | Πιθανή αιτία | Διόρθωση | +|--------------------------------------|-------------------------------------------|----------| +| Κενό αρχείο PNG | `XDimension` ορισμένο σε 0 ή πολύ υψηλή τιμή | Χρησιμοποιήστε λογικό πλάτος pixel (1‑5) | +| Το barcode δεν διαβάζεται από σαρωτή | Λάθος χαρακτήρας macro για τον σαρωτή | Ελέγξτε την τεκμηρίωση του σαρωτή· χρησιμοποιήστε `MacroNone` αν δεν χρειάζεται | +| Εξαίρεση `ArgumentOutOfRangeException` | Αριθμός στηλών εκτός επιτρεπόμενου εύρους (1‑30) | Κρατήστε το `Columns` μεταξύ 1 και 30 | + +## Συμπέρασμα + +Τώρα γνωρίζετε **πώς να ορίσετε barcode** ιδιότητες, **πώς να αλλάξετε macro** χαρακτήρες, και πώς να **δημιουργήσετε εικόνα barcode C#** χρησιμοποιώντας το Aspose.BarCode. Το πλήρες, εκτελέσιμο παράδειγμα δείχνει τη συνολική ροή εργασίας από τη δημιουργία του generator μέχρι την εξαγωγή της εικόνας. + +Στη συνέχεια, εξερευνήστε άλλες συμβολικές αναπαραστάσεις (`EncodeTypes.QR`, `EncodeTypes.Code128`) ή ενσωματώστε το barcode απευθείας σε PDF με το Aspose.PDF. Και τα δύο θέματα ανήκουν στο ευρύτερο οικοσύστημα **barcode generator c#** και μπορούν να προστεθούν σε αυτό το έργο με ελάχιστες αλλαγές κώδικα. + +Καλό προγραμματισμό, και μη διστάσετε να πειραματιστείτε με διαφορετικές τιμές macro, διαστάσεις και μορφές εξόδου! + +## Τι πρέπει να μάθετε στη συνέχεια; + +Τα παρακάτω tutorials καλύπτουν στενά σχετιζόμενα θέματα που επεκτείνουν τις τεχνικές που παρουσιάστηκαν σε αυτόν τον οδηγό. Κάθε πόρος περιλαμβάνει πλήρη λειτουργικό κώδικα με βήμα‑βήμα εξηγήσεις για να σας βοηθήσει να κυριαρχήσετε πρόσθετες δυνατότητες API και να εξερευνήσετε εναλλακτικές προσεγγίσεις υλοποίησης στα δικά σας projects. + +- [How to create barcode quiet zone for Code 16K using Aspose.BarCode for .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [How to create dotcode extended codetext with Aspose.BarCode for .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [How to Set Border for ITF-14 Barcode Customization](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hindi/net/compact-pdf417-encoding/_index.md b/barcode/hindi/net/compact-pdf417-encoding/_index.md index 7df391155..eb995f6d5 100644 --- a/barcode/hindi/net/compact-pdf417-encoding/_index.md +++ b/barcode/hindi/net/compact-pdf417-encoding/_index.md @@ -84,7 +84,9 @@ Aspose.BarCode आपको `Pdf417ErrorCorrectionLevel` प्रॉपर् ## Compact PDF417 एन्कोडिंग ट्यूटोरियल्स ### [Compact PDF417 बारकोड बनाना](./compact-pdf417-basic-configuration/) -Aspose.BarCode for .NET का उपयोग करके Compact PDF417 बारकोड कैसे जनरेट करें सीखें। चरण‑दर‑चरण निर्देशों और कोड उदाहरणों के साथ व्यापक गाइड। +### [C# में PDF417 बारकोड बनाना – बारकोड जेनरेटर गाइड](./generate-pdf417-barcode-in-c-barcode-generator-guide/) + +### [C# में बारकोड इमेज़ को सहेजना – पूर्ण गाइड](./how-to-save-barcode-images-in-c-complete-guide/) ## अक्सर पूछे जाने वाले प्रश्न @@ -114,4 +116,4 @@ A: कोई बाहरी फ़ॉन्ट आवश्यक नहीं {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hindi/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/hindi/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..4fdf91ce1 --- /dev/null +++ b/barcode/hindi/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,111 @@ +--- +category: general +date: 2026-08-06 +description: बारकोड जेनरेटर C# PDF417 ट्यूटोरियल के साथ C# में PDF417 बारकोड बनाएं। + सीखें कि PDF417 बारकोड कैसे बनाएं, बाइनरी मोड सेट करें, और PNG के रूप में सहेजें। +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: hi +lastmod: 2026-08-06 +og_description: BarcodeGenerator का उपयोग करके C# में PDF417 बारकोड बनाएं। बाइनरी + एन्कोडिंग सेट करना, PDF417 विकल्प कॉन्फ़िगर करना, और बारकोड को PNG छवि के रूप में + सहेजना सीखें। +og_image_alt: Generate PDF417 barcode example +og_title: C# में PDF417 बारकोड बनाएं – पूर्ण बारकोड जनरेटर गाइड +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: C# में PDF417 बारकोड बनाएं – बारकोड जेनरेटर गाइड +url: /hi/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# C# में PDF417 बारकोड जनरेट करें – बारकोड जेनरेटर गाइड + +यदि आपको .NET एप्लिकेशन में **PDF417 बारकोड जनरेट** करना है, तो यह गाइड आपको बिल्कुल बताता है कैसे। Aspose.BarCode लाइब्रेरी का उपयोग करके आप बाइनरी डेटा एन्कोड कर सकते हैं, PDF417 एन्कोडर को बाइनरी मोड में स्विच कर सकते हैं, और कुछ ही C# लाइनों में हाई‑रेज़ोल्यूशन PNG इमेज आउटपुट कर सकते हैं। + +यह ट्यूटोरियल इंस्टॉल करने से लेकर PDF417 सेटिंग्स को कस्टमाइज़ करने और खाली डेटा या असमर्थित कैरेक्टर्स जैसी एज केस को हैंडल करने तक सब कुछ कवर करता है। गाइड के अंत तक आपके पास एक पूर्ण, रन करने योग्य उदाहरण होगा जिसे आप किसी भी C# प्रोजेक्ट में डाल सकते हैं। + +**आप क्या सीखेंगे** + +* बारकोड जेनरेटर C# PDF417 पैकेज को इंस्टॉल और रेफ़रेंस करना। +* एन्कोडिंग के लिए बाइनरी डेटा तैयार करना। +* बाइनरी PDF417 एन्कोडिंग के लिए `BarcodeGenerator` को कॉन्फ़िगर करना। +* जनरेटेड बारकोड को PNG फ़ाइल के रूप में सेव करना और परिणाम की पुष्टि करना। + +> **Prerequisites** – .NET 6.0 या बाद का संस्करण, Visual Studio 2022 (या आपका पसंदीदा कोई भी IDE), और NuGet पैकेज को पुल करने के लिए इंटरनेट कनेक्शन। + +--- + +## Step 1: Aspose.BarCode NuGet पैकेज इंस्टॉल करें + +PDF417 बारकोड के साथ C# में काम करने का सबसे भरोसेमंद तरीका **Aspose.BarCode** लाइब्रेरी है, जो बाइनरी एन्कोडिंग को पूरी तरह सपोर्ट करती है। + +```bash +dotnet add package Aspose.BarCode +``` + +*इस चरण की आवश्यकता क्यों है?* +`BarcodeGenerator` क्लास `Aspose.BarCode` नेमस्पेस में स्थित है। पैकेज जोड़ने से सभी आवश्यक DLLs कंपाइल टाइम पर उपलब्ध हो जाते हैं और आपको नवीनतम बग‑फ़िक्स और परफ़ॉर्मेंस सुधार मिलते हैं। + +--- + +## Step 2: नया कंसोल प्रोजेक्ट बनाएं (वैकल्पिक लेकिन अनुशंसित) + +यदि आप कोड को अलग‑थलग टेस्ट करना चाहते हैं, तो एक नया कंसोल ऐप शुरू करें: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +पैकेज को प्रोजेक्ट में जोड़ें (यदि अभी तक नहीं किया है तो Step 1 का कमांड दोहराएँ)। + +--- + +## Step 3: एन्कोड करने के लिए बाइनरी डेटा तैयार करें + +जब आप एन्कोड मोड को **Binary** सेट करते हैं, तो PDF417 रॉ बाइट्स को एन्कोड कर सकता है। नीचे एक सरल बाइट एरे है जो इस प्रक्रिया को दर्शाता है। + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*बाइनरी डेटा क्यों?* +बाइनरी मोड आपको कोई भी बाइट सीक्वेंस स्टोर करने की अनुमति देता है—फ़ाइलें एम्बेड करने, एन्क्रिप्शन कीज़, या कस्टम पेलोड्स के लिए उपयोगी जो प्लेन टेक्स्ट नहीं होते। + +--- + +## Step 4: बारकोड जेनरेटर को इनिशियलाइज़ करें और PDF417 को बाइनरी मोड के लिए कॉन्फ़िगर करें + + + +## आप आगे क्या सीख सकते हैं? + +निम्नलिखित ट्यूटोरियल्स उन विषयों को कवर करते हैं जो इस गाइड में दिखाए गए तकनीकों पर आधारित हैं। प्रत्येक संसाधन में पूर्ण कार्यशील कोड उदाहरण और चरण‑दर‑चरण व्याख्याएँ शामिल हैं, जिससे आप अतिरिक्त API फीचर्स में महारत हासिल कर सकें और अपने प्रोजेक्ट्स में वैकल्पिक इम्प्लीमेंटेशन अप्रोच को एक्सप्लोर कर सकें। + +- [कैसे बनाएं बारकोड – कॉम्पैक्ट PDF417 Aspose.BarCode के साथ](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [कैसे जनरेट करें PDF417 बारकोड – कॉम्पैक्ट PDF417 एन्कोडिंग](/barcode/english/net/compact-pdf417-encoding/) +- [कैसे जनरेट करें Aztec बारकोड कस्टम एस्पेक्ट रेशियो के साथ Aspose.BarCode for .NET का उपयोग करके](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hindi/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/hindi/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..7c8603d6c --- /dev/null +++ b/barcode/hindi/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,236 @@ +--- +category: general +date: 2026-08-06 +description: C# में MicroPdf417 का उपयोग करके Code 128 इम्यूलेशन के साथ बारकोड इमेज + कैसे सहेजें। PDF417 बारकोड बनाना और सेटिंग्स को कस्टमाइज़ करना सीखें। +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: hi +lastmod: 2026-08-06 +og_description: C# में माइक्रोPDF417 और कोड 128 इम्यूलेशन के साथ बारकोड इमेजेज़ को + जल्दी कैसे सहेजें। PDF417 बारकोड जेनरेट करने और आउटपुट को कस्टमाइज़ करने के लिए + इस गाइड का पालन करें। +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: C# में बारकोड इमेजेज़ को कैसे सहेजें – चरण‑दर‑चरण गाइड +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: C# में बारकोड छवियों को कैसे सहेजें – पूर्ण गाइड +url: /hi/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# C# में बारकोड इमेज कैसे सेव करें – पूर्ण गाइड + +यदि आपको एक .NET एप्लिकेशन में **बारकोड इमेज कैसे सेव करें** की आवश्यकता है, तो यह ट्यूटोरियल एक तैयार‑से‑चलाने वाला समाधान दिखाता है। आप सीखेंगे कि PDF417 बारकोड कैसे जेनरेट करें, Code 128 इम्यूलेशन कैसे लागू करें, और परिणामी PNG फ़ाइलों को डिस्क पर कैसे लिखें। + +उदाहरण Aspose.BarCode for .NET लाइब्रेरी का उपयोग करता है, जो MicroPdf417, Code 128 और कई अन्य मानकों को सपोर्ट करती है। गाइड के अंत तक आप Modes 908, 909, 910, और 911 के लिए बारकोड फ़ाइलें बना सकेंगे, और इष्टतम स्कैनिंग के लिए विज़ुअल पैरामीटर कैसे समायोजित करें, यह समझ पाएंगे। + +## पूर्वापेक्षाएँ + +शुरू करने से पहले सुनिश्चित करें कि आपके पास है: + +* .NET 6.0 SDK या बाद का संस्करण स्थापित +* Visual Studio 2022 (या कोई भी IDE जो C# सपोर्ट करता हो) +* एक सक्रिय Aspose.BarCode for .NET लाइसेंस (डेवलपमेंट के लिए फ्री ट्रायल चलती है) + +ट्यूटोरियल मानता है कि आपको C# कंसोल प्रोजेक्ट्स की बुनियादी जानकारी है। + +## चरण 1: नया कंसोल प्रोजेक्ट बनाएं और BarCode पैकेज जोड़ें + +टर्मिनल खोलें और निम्न कमांड चलाएँ: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +`dotnet add package` कमांड नवीनतम Aspose.BarCode लाइब्रेरी डाउनलोड करता है, जिसमें वह क्लासेज़ हैं जिनकी आपको **pdf417 बारकोड कैसे जेनरेट करें** के लिए आवश्यकता है। + +## चरण 2: पूर्ण प्रोग्राम लिखें + +`Program.cs` नाम की फ़ाइल बनाएं (मौजूदा को बदल दें) और नीचे दिया गया कोड पेस्ट करें। यह प्रोग्राम **code128 इम्यूलेशन के साथ बारकोड जेनरेटर** को दर्शाता है और कई तरीकों से **बारकोड इमेज कैसे सेव करें** दिखाता है। + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### यह कोड क्यों काम करता है + +* **सिंगल जेनरेटर इंस्टेंस** – `BarcodeGenerator` को पुनः उपयोग करने से मेमोरी अलोकेशन दोहराया नहीं जाता और सभी मोड्स में कॉन्फ़िगरेशन समान रहता है। +* **XDimension** – पिक्सेल साइज को 2 सेट करने से स्पष्ट, पढ़ने योग्य इमेज बनती है बिना फ़ाइल साइज बढ़ाए। +* **IsCode128Emulation** – PDF417 सिम्बल के अंदर Code 128‑स्टाइल बार पैटर्न सक्षम करता है, जिसे कुछ स्कैनर अधिक भरोसेमंद तरीके से पढ़ते हैं। +* **Save मेथड** – आप जो `Save` ओवरलोड देखते हैं, वह **बारकोड इमेज कैसे सेव करें** फ़ाइलों का मानक तरीका है; यह इमेज को सीधे फ़ाइल सिस्टम में निर्दिष्ट फ़ॉर्मेट में लिखता है। + +## चरण 3: प्रोग्राम चलाएँ और आउटपुट सत्यापित करें + +प्रोजेक्ट को बिल्ड और एक्सीक्यूट करें: + +```bash +dotnet run +``` + +कंसोल में पुष्टि संदेश दिखने के बाद, `outputPath` में सेट किए गए फ़ोल्डर को खोलें। आपको चार PNG फ़ाइलें दिखेंगी: + +* `MicroPdf417_Code128_908.png` – FNC1 + अल्फ़ान्यूमेरिक इंडिकेटर +* `MicroPdf417_Code128_909.png` – FNC1 + न्यूमेरिक इंडिकेटर +* `MicroPdf417_Code128_910.png` – शुद्ध Code 128 पेलोड + +प्रत्येक इमेज में एक MicroPdf417 सिम्बल होता है जिसे मानक बारकोड रीडर स्कैन कर सकते हैं। यदि कोई स्कैनर फ़ाइल पढ़ने में विफल रहता है, तो `XDimension.Pixels` बढ़ाने या `Pdf417.Columns` को टार्गेट डिवाइस की रिज़ॉल्यूशन के अनुसार समायोजित करने पर विचार करें। + +## चरण 4: सामान्य विविधताएँ और किनारे के केस + +### इमेज फ़ॉर्मेट बदलना + +`BarCodeImageFormat` एनेम PNG, JPEG, BMP, और TIFF को सपोर्ट करता है। यदि आपको वेब डिलीवरी के लिए छोटा फ़ाइल साइज चाहिए, तो `BarCodeImageFormat.Png` को `BarCodeImageFormat.Jpeg` से बदलें। + +### MicroPdf417 के बजाय पूर्ण‑साइज़ PDF417 जेनरेट करना + +यदि आपका उपयोग केस बड़े PDF417 मानक की मांग करता है, तो जेनरेटर को `EncodeTypes.Pdf417` के साथ इंस्टैंशिएट करें: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +ISO/IEC 15417 स्पेसिफिकेशन्स को पूरा करने के लिए `Pdf417.Rows` और `Pdf417.Columns` को समायोजित करना याद रखें। + +### विशेष कैरेक्टर हैंडल करना + +ग्रुप सेपरेटर (`\u001d`) एप्लिकेशन आइडेंटिफ़ायर्स के लिए आवश्यक है। यदि आपके डेटा में अन्य कंट्रोल कैरेक्टर हैं, तो उन्हें Unicode नोटेशन (जैसे फ़ाइल सेपरेटर के लिए `\u001c`) से एस्केप करें ताकि रन‑टाइम एरर न आए। + +### लाइसेंस संबंधी विचार + +कोड को बिना लाइसेंस के चलाने पर जेनरेटेड इमेज पर वॉटरमार्क दिखाई देगा। `Main` में जल्दी से अपना लाइसेंस लागू करें: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## चरण 5: प्रोडक्शन उपयोग के टिप्स + +* **बैच प्रोसेसिंग** – सेव लॉजिक को एक लूप में रैप करें जो CSV या डेटाबेस से पंक्तियाँ पढ़ता है; प्रदर्शन के लिए वही `BarcodeGenerator` इंस्टेंस पुनः उपयोग करें। +* **थ्रेड सेफ़्टी** – `BarcodeGenerator` थ्रेड‑सेफ़ नहीं है। यदि आप बारकोड निर्माण को पैरललाइज़ करते हैं, तो प्रत्येक थ्रेड के लिए अलग इंस्टेंस बनाएं। +* **एरर हैंडलिंग** – `Save` कॉल्स को `try…catch` ब्लॉक्स में रखें ताकि I/O एक्सेप्शन को कैप्चर किया जा सके, विशेषकर नेटवर्क शेयर पर लिखते समय। + +## निष्कर्ष + +अब आप Aspose.BarCode का उपयोग करके C# में **बारकोड इमेज कैसे सेव करें**, **pdf417 सिम्बल को Code 128 इम्यूलेशन के साथ कैसे जेनरेट करें**, और कई मोड्स के लिए **code128 इम्यूलेशन के साथ बारकोड जेनरेटर** को कैसे कॉन्फ़िगर करें, यह जानते हैं। पूर्ण, रन‑एबल उदाहरण प्रोजेक्ट सेटअप से अंतिम PNG फ़ाइलों तक हर कदम दिखाता है। + +अगला, संबंधित विषयों का अन्वेषण करें जैसे **PDF दस्तावेज़ों में बारकोड एम्बेड करना**, **कस्टम रंगों के साथ QR कोड बनाना**, या **ASP.NET Core APIs में बारकोड जेनरेशन को इंटीग्रेट करना**। ये एक्सटेंशन यहाँ कवर किए गए सिद्धांतों पर आधारित हैं और आपको स्कैनिंग वर्कफ़्लो को स्वचालित करने की विस्तृत रेंज प्रदान करेंगे। + +## आगे आप क्या सीखें? + +निम्नलिखित ट्यूटोरियल्स उन विषयों को कवर करते हैं जो इस गाइड में प्रदर्शित तकनीकों पर आधारित हैं। प्रत्येक संसाधन में पूर्ण कार्यशील कोड उदाहरण और चरण‑दर‑चरण व्याख्याएँ शामिल हैं, जिससे आप अतिरिक्त API फीचर्स में महारत हासिल कर सकें और अपने प्रोजेक्ट्स में वैकल्पिक इम्प्लीमेंटेशन अप्रोचेज़ को एक्सप्लोर कर सकें। + +- [How to Generate PDF417 Barcodes – Compact PDF417 Encoding](/barcode/english/net/compact-pdf417-encoding/) +- [How to Save PNG using DataMatrix C40 with Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [How to Generate Barcode - One-Dimensional Barcode Types](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hindi/net/one-dimensional-barcode-types/_index.md b/barcode/hindi/net/one-dimensional-barcode-types/_index.md index c02a2e3d8..8f967c4a6 100644 --- a/barcode/hindi/net/one-dimensional-barcode-types/_index.md +++ b/barcode/hindi/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ Aspose.BarCode का उपयोग करके .NET में डेटा .NET के लिए Aspose.BarCode का उपयोग करके एक-आयामी बारकोड उत्पन्न करते समय अपवादों को संभालना सीखें। यह चरण-दर-चरण मार्गदर्शिका त्रुटि-सहिष्णु बारकोड समाधान सुनिश्चित करती है। अब शुरू हो जाओ! ### [एक-आयामी चौड़ा-संकीर्ण अनुपात विन्यास](./one-dimensional-wide-narrow-ratio-configuration/) .NET के लिए Aspose.BarCode के साथ आसानी से अनुकूलित बारकोड जेनरेट करें। एक-आयामी चौड़े-संकीर्ण अनुपात कॉन्फ़िगरेशन के लिए चरण-दर-चरण मार्गदर्शिका। +### [C# में बारकोड सेट करने का तरीका – पूर्ण Aspose.BarCode गाइड](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Aspose.BarCode के साथ C# में बारकोड सेट करने के लिए पूर्ण मार्गदर्शिका। ## निष्कर्ष @@ -89,4 +91,4 @@ Aspose.BarCode का उपयोग करके .NET में डेटा {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hindi/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/hindi/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..4cbfa565e --- /dev/null +++ b/barcode/hindi/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,161 @@ +--- +category: general +date: 2026-08-06 +description: C# में Aspose.BarCode का उपयोग करके बारकोड कैसे सेट करें। मैक्रो कैरेक्टर्स + को बदलना और चरण‑दर‑चरण कोड के साथ बारकोड इमेज बनाना सीखें। +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: hi +lastmod: 2026-08-06 +og_description: C# में Aspose.BarCode के साथ बारकोड कैसे सेट करें। यह गाइड दिखाता + है कि मैक्रो कैरेक्टर्स को कैसे बदलें और जल्दी से C# में बारकोड इमेज बनाएं। +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: C# में बारकोड कैसे सेट करें – Aspose.BarCode ट्यूटोरियल +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: C# में बारकोड कैसे सेट करें – पूर्ण Aspose.BarCode गाइड +url: /hi/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# C# में बारकोड कैसे सेट करें – पूर्ण Aspose.BarCode गाइड + +यदि आपको .NET एप्लिकेशन में **how to set barcode** की आवश्यकता है, तो यह ट्यूटोरियल Aspose.BarCode का उपयोग करके सटीक चरण दिखाता है। आप देखेंगे कि मैक्रो कैरेक्टर्स को कैसे बदलें, विज़ुअल पैरामीटर्स को कैसे समायोजित करें, और **create barcode image C#** फ़ाइलें जो सीधे डिस्क पर सहेजी जा सकती हैं। + +यह गाइड लाइब्रेरी को इंस्टॉल करने से लेकर दो अलग-अलग मैक्रो वैल्यू वाले MicroPDF417 बारकोड जेनरेट करने तक सब कुछ कवर करता है। कोई बाहरी दस्तावेज़ीकरण आवश्यक नहीं है—आप कोड कॉपी कर सकते हैं, चलाएँ, और PNG आउटपुट तुरंत सत्यापित कर सकते हैं। + +## आवश्यकताएँ + +शुरू करने से पहले सुनिश्चित करें कि आपके पास है: + +* .NET 6.0 या बाद का (उदाहरण में एक कंसोल प्रोजेक्ट उपयोग किया गया है) +* Visual Studio 2022 या कोई भी C# IDE +* एक सक्रिय Aspose.BarCode लाइसेंस (परीक्षण के लिए मुफ्त इवैल्यूएशन काम करता है) +* C# सिंटैक्स का बुनियादी ज्ञान + +आपको NuGet पैकेज भी चाहिए: + +```bash +dotnet add package Aspose.BarCode +``` + +## बारकोड पैरामीटर्स कैसे सेट करें – चरण 1: जेनरेटर बनाएं + +पहला कदम है `BarcodeGenerator` को वांछित सिम्बोलॉजी और डेटा के साथ इंस्टैंशिएट करना। `EncodeTypes.MicroPdf417` का उपयोग करने से Aspose.BarCode एक कॉम्पैक्ट PDF417 वैरिएंट उत्पन्न करता है। + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Why this matters:** `BarcodeGenerator` केंद्रीय ऑब्जेक्ट है; सभी बाद के सेटिंग्स उसके `Parameters` प्रॉपर्टी को संशोधित करती हैं। सही `EncodeTypes` चुनने से बारकोड MicroPDF417 स्पेसिफिकेशन का पालन करता है। + +## मैक्रो कैरेक्टर्स कैसे बदलें – चरण 2: विज़ुअल पैरामीटर्स समायोजित करें + +मैक्रो कैरेक्टर्स वैकल्पिक कंट्रोल कोड होते हैं जो आपको कई PDF417 सिम्बॉल को जोड़ने की अनुमति देते हैं। उदाहरण में `Macro05` और `Macro06` के बीच स्विच किया गया है। आप मॉड्यूल चौड़ाई (`XDimension`) और कॉलम की संख्या भी सेट करके बारकोड का आकार नियंत्रित करते हैं। + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Why you change the macro:** मैक्रो कैरेक्टर स्कैनर को बताता है कि यह बारकोड बड़े डेटा सेट का हिस्सा है। इसे बदलने से यह दिखाया जाता है कि समान डेटा को विभिन्न मैक्रो पहचानकर्ताओं से कैसे जोड़ा जा सकता है। + +## बारकोड कैसे सेट करें – चरण 3: अलग मैक्रो के साथ दूसरा बारकोड जेनरेट करें + +अब हम वही `generator` इंस्टेंस पुनः उपयोग करते हैं, केवल मैक्रो वैल्यू बदलते हैं। इससे ऑब्जेक्ट को फिर से बनाने की आवश्यकता नहीं पड़ती और यह दर्शाता है कि **how to set barcode** पैरामीटर्स रनटाइम पर बदले जा सकते हैं। + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### अपेक्षित आउटपुट + +प्रोग्राम चलाने से प्रोजेक्ट फ़ोल्डर में दो PNG फ़ाइलें बनती हैं: + +* `MicroPdf417_Macro05.png` – Macro05 वाला बारकोड +* `MicroPdf417_Macro06.png` – Macro06 वाला बारकोड + +दोनों इमेजेज़ एक कॉम्पैक्ट MicroPDF417 सिम्बॉल दिखाती हैं जो `12345ABC` को एन्कोड करती है। आप किसी भी इमेज व्यूअर से PNG फ़ाइलें खोलकर विज़ुअल क्वालिटी सत्यापित कर सकते हैं। + +## बारकोड जेनरेटर C# सर्वोत्तम प्रथाएँ + +* **Reuse the generator:** मौजूदा इंस्टेंस पर `Parameters` बदलना प्रत्येक बारकोड के लिए नया जेनरेटर बनाने से अधिक कुशल है। +* **Set X‑dimension early:** मॉड्यूल चौड़ाई कुल इमेज आकार को प्रभावित करती है; सहेजने से पहले इसे समायोजित करें। +* **Validate macro usage:** सभी स्कैनर मैक्रो कैरेक्टर्स को सपोर्ट नहीं करते। यदि आप प्रोडक्शन में उपयोग करने की योजना बना रहे हैं तो अपने टार्गेट हार्डवेयर पर टेस्ट करें। +* **Dispose resources:** `BarcodeGenerator` `IDisposable` को इम्प्लीमेंट करता है। एक लम्बे‑चलने वाले सर्विस में इसे `using` ब्लॉक में रखें या समाप्त होने पर `Dispose()` कॉल करें। + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## बारकोड इमेज C# बनाएं – समस्या निवारण टिप्स + +| लक्षण | संभावित कारण | समाधान | +|--------------------------------------|-------------------------------------------|-----| +| खाली PNG फ़ाइल | `XDimension` को 0 या बहुत बड़ी वैल्यू पर सेट किया गया | उचित पिक्सेल चौड़ाई (1‑5) उपयोग करें | +| स्कैनर द्वारा बारकोड पढ़ा नहीं जा रहा | स्कैनर के लिए गलत मैक्रो कैरेक्टर | स्कैनर दस्तावेज़ीकरण जांचें; यदि आवश्यक न हो तो `MacroNone` उपयोग करें | +| अपवाद `ArgumentOutOfRangeException` | कॉलम संख्या अनुमत सीमा (1‑30) से बाहर | `Columns` को 1 से 30 के बीच रखें | + +## निष्कर्ष + +अब आप **how to set barcode** प्रॉपर्टीज़, **how to change macro** कैरेक्टर्स, और Aspose.BarCode का उपयोग करके **create barcode image C#** फ़ाइलें बनाना जानते हैं। पूर्ण, चलाने योग्य उदाहरण जेनरेटर निर्माण से इमेज एक्सपोर्ट तक पूरे वर्कफ़्लो को दर्शाता है। + +अगला, अन्य सिम्बोलॉजीज़ (`EncodeTypes.QR`, `EncodeTypes.Code128`) का अन्वेषण करें या बारकोड को सीधे PDFs में Aspose.PDF के साथ एम्बेड करें। दोनों विषय व्यापक **barcode generator c#** इकोसिस्टम का हिस्सा हैं और न्यूनतम कोड बदलावों से इस प्रोजेक्ट में जोड़े जा सकते हैं। + +कोडिंग का आनंद लें, और विभिन्न मैक्रो वैल्यूज़, डाइमेंशन और आउटपुट फ़ॉर्मेट्स के साथ प्रयोग करने में संकोच न करें! + +## आगे आप क्या सीखें? + +निम्नलिखित ट्यूटोरियल्स उन विषयों को कवर करते हैं जो इस गाइड में प्रदर्शित तकनीकों पर आधारित हैं। प्रत्येक संसाधन में पूर्ण कार्यशील कोड उदाहरण और चरण‑दर‑चरण व्याख्याएँ शामिल हैं, जिससे आप अतिरिक्त API फीचर्स में निपुण हो सकें और अपने प्रोजेक्ट्स में वैकल्पिक इम्प्लीमेंटेशन एप्रोचेज़ का पता लगा सकें। + +- [Aspose.BarCode for .NET का उपयोग करके Code 16K के लिए बारकोड क्वाइट ज़ोन कैसे बनाएं](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [Aspose.BarCode for .NET के साथ डॉटकोड विस्तारित कोडटेक्स्ट कैसे बनाएं](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [ITF-14 बारकोड कस्टमाइज़ेशन के लिए बॉर्डर कैसे सेट करें](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hongkong/net/compact-pdf417-encoding/_index.md b/barcode/hongkong/net/compact-pdf417-encoding/_index.md index 9254eb3ec..90c04c6f3 100644 --- a/barcode/hongkong/net/compact-pdf417-encoding/_index.md +++ b/barcode/hongkong/net/compact-pdf417-encoding/_index.md @@ -84,6 +84,12 @@ Aspose.BarCode 讓你設定 `Pdf417ErrorCorrectionLevel` 屬性 (0‑8)。較高 ### [建立緊湊式 PDF417 條碼](./compact-pdf417-basic-configuration/) 了解如何使用 Aspose.BarCode for .NET 產生緊湊式 PDF417 條碼。完整指南包含一步一步說明與程式碼範例。 +### [在 C# 中產生 PDF417 條碼 – 條碼產生器指南](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +說明如何使用 Aspose.BarCode for .NET 的 BarcodeGenerator 在 C# 中產生 PDF417 條碼。 + +### [在 C# 中儲存條碼影像 – 完整指南](./how-to-save-barcode-images-in-c-complete-guide/) +說明如何在 C# 中將條碼儲存為圖像檔案的完整步驟。 + ## 常見問題 **Q: 緊湊式 PDF417 條碼最多能儲存多少資料?** @@ -112,4 +118,4 @@ A: 不需要外部字型;函式庫會在內部處理所有渲染。 {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hongkong/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/hongkong/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..c0f74e68d --- /dev/null +++ b/barcode/hongkong/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,110 @@ +--- +category: general +date: 2026-08-06 +description: 使用 C# 條碼產生器在 C# 中產生 PDF417 條碼 – C# PDF417 教學。學習如何產生 PDF417 條碼、設定二進位模式,並儲存為 + PNG。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: zh-hant +lastmod: 2026-08-06 +og_description: 使用 BarcodeGenerator 在 C# 中產生 PDF417 條碼。學習設定二進位編碼、配置 PDF417 參數,並將條碼儲存為 + PNG 圖像。 +og_image_alt: Generate PDF417 barcode example +og_title: 在 C# 中產生 PDF417 條碼 – 完整條碼產生器指南 +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: 在 C# 中產生 PDF417 條碼 – 條碼產生器指南 +url: /zh-hant/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# 在 C# 中產生 PDF417 條碼 – 條碼產生器指南 + +如果您需要在 .NET 應用程式中 **產生 PDF417 條碼**,本指南會精確說明操作方法。使用 Aspose.BarCode 函式庫,您可以編碼二進位資料,將 PDF417 編碼器切換至二進位模式,並僅用幾行 C# 程式碼輸出高解析度 PNG 圖片。 + +本教學涵蓋從安裝 NuGet 套件到自訂 PDF417 設定,以及處理空資料或不支援字元等邊緣情況。完成本指南後,您將擁有一個完整、可執行的範例,可直接放入任何 C# 專案中。 + +**您將學習** + +* 安裝並參考條碼產生器 C# PDF417 套件。 +* 準備要編碼的二進位資料。 +* 設定 `BarcodeGenerator` 以進行二進位 PDF417 編碼。 +* 將產生的條碼儲存為 PNG 檔案並驗證結果。 + +> **先決條件** – .NET 6.0 或更新版本、Visual Studio 2022(或您偏好的任何 IDE),以及可連線至網際網路以下載 NuGet 套件。 + +--- + +## 第一步:安裝 Aspose.BarCode NuGet 套件 + +在 C# 中處理 PDF417 條碼最可靠的方式是 **Aspose.BarCode** 函式庫,它完整支援二進位編碼。 + +```bash +dotnet add package Aspose.BarCode +``` + +*為什麼需要此步驟?* +`BarcodeGenerator` 類別位於 `Aspose.BarCode` 命名空間。加入此套件可確保所有必要的 DLL 在編譯時可用,且您會取得最新的錯誤修正與效能提升。 + +--- + +## 第二步:建立新的主控台專案(非必要但建議) + +如果您想單獨測試程式碼,請建立一個全新的主控台應用程式: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +將套件加入專案(如果尚未執行 Step 1,請再次執行相同指令)。 + +--- + +## 第三步:準備要編碼的二進位資料 + +當您將編碼模式設定為 **Binary** 時,PDF417 可編碼原始位元組。以下是一個簡單的位元組陣列示範此過程。 + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*為什麼使用二進位資料?* +二進位模式允許您儲存任何位元組序列——對於嵌入檔案、加密金鑰或非純文字的自訂負載非常有用。 + +--- + +## 第四步:初始化條碼產生器並將 PDF417 設定為二進位模式 + + + +## 接下來您應該學習什麼? + +以下教學涵蓋與本指南示範技術密切相關的主題。每個資源皆提供完整可執行的程式碼範例與逐步說明,協助您精通其他 API 功能,並在自己的專案中探索替代實作方式。 + +- [如何使用 Aspose.BarCode 建立條碼 – 緊湊 PDF417](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [如何產生 PDF417 條碼 – 緊湊 PDF417 編碼](/barcode/english/net/compact-pdf417-encoding/) +- [如何使用 Aspose.BarCode for .NET 產生自訂長寬比的 Aztec 條碼](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hongkong/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/hongkong/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..251862656 --- /dev/null +++ b/barcode/hongkong/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,233 @@ +--- +category: general +date: 2026-08-06 +description: 如何在 C# 中使用 MicroPdf417 並以 Code 128 模擬方式儲存條碼圖像。了解如何產生 PDF417 條碼以及自訂設定。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: zh-hant +lastmod: 2026-08-06 +og_description: 如何在 C# 中快速使用 MicroPdf417 與 Code 128 模擬儲存條碼圖像。請跟隨本指南生成 PDF417 條碼並自訂輸出。 +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: 如何在 C# 中儲存條碼圖像 – 逐步指南 +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: 如何在 C# 中儲存條碼圖像 – 完整指南 +url: /zh-hant/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# 如何在 C# 中儲存條碼圖像 – 完整指南 + +如果您需要在 .NET 應用程式中 **how to save barcode** 圖像,本教學將提供一個可直接執行的解決方案。您將學習如何產生 PDF417 條碼、套用 Code 128 模擬,並將產生的 PNG 檔寫入磁碟。 + +本範例使用 Aspose.BarCode for .NET 函式庫,支援 MicroPdf417、Code 128 以及許多其他標準。完成本指南後,您即可產生模式 908、909、910、911 的條碼檔案,並了解如何調整視覺參數以獲得最佳掃描效果。 + +## 先決條件 + +在開始之前,請確保您已具備: + +* .NET 6.0 SDK 或更新版本已安裝 +* Visual Studio 2022(或任何支援 C# 的 IDE) +* 有效的 Aspose.BarCode for .NET 授權(免費試用版可用於開發) + +本教學假設您對 C# 主控台專案有基本了解。 + +## 步驟 1:建立新的主控台專案並加入 BarCode 套件 + +開啟終端機並執行以下指令: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +`dotnet add package` 指令會下載最新的 Aspose.BarCode 函式庫,其中包含您需要的 **how to generate pdf417** 條碼類別。 + +## 步驟 2:撰寫完整程式 + +建立名為 `Program.cs` 的檔案(取代現有檔案),並貼上以下程式碼。此程式示範 **barcode generator with code128** 模擬,並展示多種 **how to save barcode** 圖像的方法。 + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### 為何此程式碼可正常運作 + +* **單一產生器實例** – 重複使用 `BarcodeGenerator` 可避免重複的記憶體配置,並在各模式間保持設定一致。 +* **XDimension** – 將像素大小設定為 2 可產生清晰、易讀的圖像,同時不會使檔案尺寸膨脹。 +* **IsCode128Emulation** – 允許在 PDF417 符號內使用 Code 128 風格的條紋模式,部分掃描器能更可靠地解讀。 +* **Save 方法** – 您看到的 `Save` 多載是 **how to save barcode** 檔案的標準做法;它會直接以您指定的格式寫入檔案系統。 + +## 步驟 3:執行程式並驗證輸出 + +建置並執行專案: + +```bash +dotnet run +``` + +當主控台印出確認訊息後,開啟您在 `outputPath` 設定的資料夾。您應該會看到四個 PNG 檔案: + +* `MicroPdf417_Code128_908.png` – FNC1 + 英數指示符 +* `MicroPdf417_Code128_909.png` – FNC1 + 數字指示符 +* `MicroPdf417_Code128_910.png` – 純 Code 128 資料 + +每張圖像皆包含可被標準條碼閱讀器掃描的 MicroPdf417 符號。若掃描器無法讀取檔案,請考慮增加 `XDimension.Pixels` 或調整 `Pdf417.Columns` 以符合目標裝置的解析度。 + +## 步驟 4:常見變形與邊緣情況 + +### 變更影像格式 + +`BarCodeImageFormat` 列舉支援 PNG、JPEG、BMP 與 TIFF。若需較小的檔案以供網路傳輸,請將 `BarCodeImageFormat.Png` 替換為 `BarCodeImageFormat.Jpeg`。 + +### 產生完整尺寸 PDF417 而非 MicroPdf417 + +若您的使用情境需要較大的 PDF417 標準,請以 `EncodeTypes.Pdf417` 來實例化產生器: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +請記得調整 `Pdf417.Rows` 與 `Pdf417.Columns`,以符合 ISO/IEC 15417 規範。 + +### 處理特殊字元 + +群組分隔符 (`\u001d`) 為應用程式識別碼所必需。若資料中包含其他控制字元,請使用 Unicode 表示法(例如 `\u001c` 代表檔案分隔符)進行跳脫,以避免執行時錯誤。 + +### 授權考量 + +未使用授權執行程式碼會在產生的圖像上加上浮水印。請在 `Main` 中盡早套用授權: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## 步驟 5:生產環境使用技巧 + +* **批次處理** – 將儲存邏輯包在讀取 CSV 或資料庫資料列的迴圈中;重複使用相同的 `BarcodeGenerator` 實例以提升效能。 +* **執行緒安全** – `BarcodeGenerator` 並非執行緒安全。若平行產生條碼,請為每個執行緒建立獨立的實例。 +* **錯誤處理** – 將 `Save` 呼叫包在 `try…catch` 區塊中,以捕捉 I/O 例外,特別是寫入網路共享時。 + +## 結論 + +您現在已了解如何使用 Aspose.BarCode 在 C# 中 **how to save barcode** 圖像、如何以 Code 128 模擬 **how to generate pdf417** 符號,以及如何為多種模式設定 **barcode generator with code128**。完整且可執行的範例示範了從專案設定到最終 PNG 檔的每一步。 + +接下來,您可以探索相關主題,例如 **embedding barcodes in PDF documents**、**creating QR codes with custom colors**,或 **integrating barcode generation into ASP.NET Core APIs**。這些延伸功能基於本教學所涵蓋的相同原則,讓您能自動化各種掃描工作流程。 + +## 接下來您應該學習什麼? + +以下教學涵蓋與本指南密切相關的主題,並以此技術為基礎。每個資源皆提供完整可運作的程式碼範例與逐步說明,協助您精通更多 API 功能,並在自己的專案中探索替代實作方式。 + +- [如何產生 PDF417 條碼 – 緊湊 PDF417 編碼](/barcode/english/net/compact-pdf417-encoding/) +- [如何使用 DataMatrix C40 以 Aspose.BarCode 儲存 PNG](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [如何產生條碼 - 一維條碼類型](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hongkong/net/one-dimensional-barcode-types/_index.md b/barcode/hongkong/net/one-dimensional-barcode-types/_index.md index 5802bdbba..3f0791cf8 100644 --- a/barcode/hongkong/net/one-dimensional-barcode-types/_index.md +++ b/barcode/hongkong/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ url: /zh-hant/net/one-dimensional-barcode-types/ 了解如何使用 Aspose.BarCode for .NET 產生一維條碼時處理例外狀況。本逐步指南可確保條碼解決方案具有容錯性。現在就開始吧! ### [一維寬窄比配置](./one-dimensional-wide-narrow-ratio-configuration/) 使用 Aspose.BarCode for .NET 輕鬆產生自訂條碼。一維寬窄比配置的分步指南。 +### [如何在 C# 中設定條碼 – 完整 Aspose.BarCode 指南](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +了解如何在 C# 中使用 Aspose.BarCode 完整設定條碼的步驟。 ## 結論 @@ -89,4 +91,4 @@ url: /zh-hant/net/one-dimensional-barcode-types/ {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hongkong/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/hongkong/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..d514595b2 --- /dev/null +++ b/barcode/hongkong/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,157 @@ +--- +category: general +date: 2026-08-06 +description: 如何在 C# 中使用 Aspose.BarCode 設定條碼。學習如何變更宏字元並以逐步程式碼建立條碼圖像(C#)。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: zh-hant +lastmod: 2026-08-06 +og_description: 如何在 C# 中使用 Aspose.BarCode 設定條碼。本指南快速示範如何變更宏字符並建立條碼圖像。 +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: 如何在 C# 中設定條碼 – Aspose.BarCode 教學 +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: 如何在 C# 中設定條碼 – 完整的 Aspose.BarCode 指南 +url: /zh-hant/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# 如何在 C# 中設定條碼 – 完整 Aspose.BarCode 指南 + +如果您需要在 .NET 應用程式中 **設定條碼**,本教學將示範使用 Aspose.BarCode 的完整步驟。您將看到如何變更宏字元、調整視覺參數,以及 **建立條碼影像 C#** 檔案,直接儲存至磁碟。 + +本指南涵蓋從安裝函式庫到產生兩個具有不同宏值的 MicroPDF417 條碼的全部內容。無需外部文件——您只要複製程式碼、執行,即可立即驗證 PNG 輸出。 + +## 前置條件 + +* .NET 6.0 或更新版本(範例使用主控台專案) +* Visual Studio 2022 或任何 C# IDE +* 有效的 Aspose.BarCode 授權(免費評估版可用於測試) +* 基本的 C# 語法知識 + +您還需要 NuGet 套件: + +```bash +dotnet add package Aspose.BarCode +``` + +## 設定條碼參數 – 步驟 1:建立產生器 + +第一步是以所需的條碼類型與資料實例化 `BarcodeGenerator`。使用 `EncodeTypes.MicroPdf417` 可讓 Aspose.BarCode 產生緊湊的 PDF417 變體。 + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**為什麼這很重要:** `BarcodeGenerator` 是核心物件;之後的所有設定皆會修改其 `Parameters` 屬性。選擇正確的 `EncodeTypes` 可確保條碼符合 MicroPDF417 規範。 + +## 變更宏字元 – 步驟 2:調整視覺參數 + +宏字元是可選的控制碼,可讓您串接多個 PDF417 符號。範例在 `Macro05` 與 `Macro06` 之間切換。同時您還會設定模組寬度(`XDimension`)以及欄位數量,以控制條碼大小。 + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**為什麼要變更宏字元:** 宏字元告訴掃描器此條碼屬於較大資料集的一部份。切換它可示範相同資料如何連結至不同的宏識別碼。 + +## 設定條碼 – 步驟 3:產生具有不同宏的第二個條碼 + +現在我們重複使用相同的 `generator` 實例,只是更換宏值。這樣可避免重新建立物件,並示範 **設定條碼** 參數可以在執行時動態變更。 + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### 預期輸出 + +執行程式會在專案資料夾產生兩個 PNG 檔案: + +* `MicroPdf417_Macro05.png` – 含 Macro05 的條碼 +* `MicroPdf417_Macro06.png` – 含 Macro06 的條碼 + +兩張影像皆顯示編碼為 `12345ABC` 的緊湊 MicroPDF417 符號。您可使用任何影像檢視器開啟 PNG 檔案,以驗證視覺品質。 + +## Barcode generator C# 最佳實踐 + +* **重複使用產生器:** 在現有實例上變更 `Parameters` 比為每個條碼建立新產生器更有效率。 +* **提前設定 X‑dimension:** 模組寬度會影響整體影像大小;請在儲存前先調整。 +* **驗證宏使用情形:** 並非所有掃描器皆支援宏字元。若在正式環境使用,請以目標硬體測試。 +* **釋放資源:** `BarcodeGenerator` 實作 `IDisposable`。在長時間執行的服務中,請使用 `using` 區塊或在完成後呼叫 `Dispose()`。 + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## 建立條碼影像 C# – 疑難排解技巧 + +| 症狀 | 可能原因 | 解決方式 | +|------|----------|----------| +| 空白 PNG 檔案 | `XDimension` 設為 0 或過高的值 | 使用合理的像素寬度 (1‑5) | +| 掃描器無法辨識條碼 | 錯誤的宏字元設定 | 檢查掃描器文件說明;若不需要可使用 `MacroNone` | +| 例外 `ArgumentOutOfRangeException` | 欄位數超出允許範圍 (1‑30) | 將 `Columns` 設為 1 到 30 之間 | + +## 結論 + +您現在已了解如何 **設定條碼** 屬性、**變更宏** 字元,以及如何使用 Aspose.BarCode **建立條碼影像 C#** 檔案。完整且可執行的範例示範了從產生器建立到影像匯出的完整工作流程。 + +接下來,您可以探索其他條碼類型(`EncodeTypes.QR`、`EncodeTypes.Code128`)或使用 Aspose.PDF 將條碼直接嵌入 PDF。這兩個主題皆屬於更廣泛的 **barcode generator c#** 生態系,且可透過少量程式碼變更加入此專案。 + +祝程式開發順利,歡迎隨意嘗試不同的宏值、尺寸與輸出格式! + +## 接下來該學什麼? + +以下教學涵蓋與本指南緊密相關的主題,建立在所示技巧之上。每個資源皆提供完整可執行的程式碼範例與逐步說明,協助您掌握更多 API 功能,並在自己的專案中探索替代實作方式。 + +- [如何使用 Aspose.BarCode for .NET 為 Code 16K 建立條碼安靜區](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [如何使用 Aspose.BarCode for .NET 建立 dotcode 延伸代碼文字](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [如何設定 ITF-14 條碼的邊框客製化](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hungarian/net/compact-pdf417-encoding/_index.md b/barcode/hungarian/net/compact-pdf417-encoding/_index.md index 17598f023..dbac25828 100644 --- a/barcode/hungarian/net/compact-pdf417-encoding/_index.md +++ b/barcode/hungarian/net/compact-pdf417-encoding/_index.md @@ -84,6 +84,12 @@ Az alapok mellett itt van néhány gyakorlati tipp a munkafolyamat egyszerűsít ### [Compact PDF417 vonalkódok létrehozása](./compact-pdf417-basic-configuration/) Ismerje meg, hogyan generáljon Compact PDF417 vonalkódokat az Aspose.BarCode for .NET használatával. Átfogó útmutató lépésről‑lépésre utasításokkal és kódrészletekkel. +### [PDF417 vonalkód generálása C#‑ban – vonalkód generátor útmutató](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +Ismerje meg, hogyan hozhat létre PDF417 vonalkódot C#‑ban az Aspose.BarCode segítségével, részletes lépésekkel és példákkal. + +### [Hogyan mentse el a vonalkód képeket C#‑ban – teljes útmutató](./how-to-save-barcode-images-in-c-complete-guide/) +Ismerje meg, hogyan menthet és kezelhet vonalkód képeket C#‑ban az Aspose.BarCode segítségével, részletes lépésekkel és példákkal. + ## Gyakran Ismételt Kérdések **Q: Mi a maximális adatmennyiség, amelyet egy Compact PDF417 vonalkódban tárolhatok?** @@ -112,4 +118,4 @@ A: Nem szükséges külső betűtípus; a könyvtár minden megjelenítést bels {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hungarian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/hungarian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..aab01715d --- /dev/null +++ b/barcode/hungarian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,112 @@ +--- +category: general +date: 2026-08-06 +description: PDF417 vonalkód generálása C#-ban egy vonalkód-generátorral – C# PDF417 + útmutató. Tanulja meg, hogyan generáljon PDF417 vonalkódot, állítsa be a bináris + módot, és mentse PNG formátumban. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: hu +lastmod: 2026-08-06 +og_description: PDF417 vonalkód generálása C#-ban a BarcodeGenerator használatával. + Tanulja meg a bináris kódolás beállítását, a PDF417 opciók konfigurálását, és a + vonalkód PNG képként történő mentését. +og_image_alt: Generate PDF417 barcode example +og_title: PDF417 vonalkód generálása C#‑ban – teljes vonalkód‑generátor útmutató +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: PDF417 vonalkód generálása C#-ban – vonalkód-generátor útmutató +url: /hu/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# PDF417 vonalkód generálása C#‑ben – vonalkód generátor útmutató + +Ha **PDF417 vonalkódot** kell generálnia egy .NET alkalmazásban, ez az útmutató pontosan megmutatja, hogyan teheti meg. Az Aspose.BarCode könyvtár segítségével kódolhat bináris adatokat, átválthatja a PDF417 kódolót bináris módra, és néhány C#‑sorral magas felbontású PNG képet hozhat létre. + +Ez a tutorial mindent lefed a NuGet csomag telepítésétől a PDF417 beállítások testreszabásáig, valamint az olyan szélhelyzetek kezelését, mint az üres adat vagy a nem támogatott karakterek. A végére egy teljes, futtatható példát kap, amelyet bármely C# projektbe beilleszthet. + +**Mit fog megtanulni** + +* A barcode generator C# PDF417 csomag telepítése és hivatkozása. +* Bináris adatok előkészítése a kódoláshoz. +* A `BarcodeGenerator` konfigurálása bináris PDF417 kódoláshoz. +* A generált vonalkód mentése PNG fájlként és az eredmény ellenőrzése. + +> **Prerequisites** – .NET 6.0 vagy újabb, Visual Studio 2022 (vagy bármely kedvelt IDE), és internetkapcsolat a NuGet csomag letöltéséhez. + +--- + +## 1. lépés: Az Aspose.BarCode NuGet csomag telepítése + +A PDF417 vonalkódok C#‑ben történő legmegbízhatóbb kezelése az **Aspose.BarCode** könyvtár, amely teljes körű bináris kódolást támogat. + +```bash +dotnet add package Aspose.BarCode +``` + +*Miért ez a lépés?* +A `BarcodeGenerator` osztály az `Aspose.BarCode` névtérben található. A csomag hozzáadása biztosítja, hogy a szükséges DLL‑ek a fordítási időben elérhetők legyenek, és hogy a legújabb hibajavítások és teljesítményjavítások is rendelkezésre álljanak. + +--- + +## 2. lépés: Új konzolos projekt létrehozása (opcionális, de ajánlott) + +Ha a kódot elszigetelten szeretné tesztelni, indítson egy friss konzolos alkalmazást: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Adja hozzá a csomagot a projekthez (ismételje meg az 1. lépésben szereplő parancsot, ha még nem tette meg). + +--- + +## 3. lépés: Bináris adatok előkészítése a kódoláshoz + +A PDF417 képes nyers bájtok kódolására, ha a kódolási módot **Binary**‑ra állítja. Az alábbi egyszerű bájt tömb szemlélteti a folyamatot. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Miért bináris adat?* +A bináris mód lehetővé teszi bármely bájtsorozat tárolását – hasznos fájlok, titkosítási kulcsok vagy egyedi, nem szöveges payloadok beágyazásához. + +--- + +## 4. lépés: A vonalkód generátor inicializálása és a PDF417 beállítása bináris módra + + + +## Mit tanuljon meg legközelebb? + +Az alábbi tutorialok szorosan kapcsolódó témákat fednek le, amelyek a jelen útmutatóban bemutatott technikákra épülnek. Minden forrás komplett, működő kódrészleteket tartalmaz lépésről‑lépésre magyarázatokkal, hogy segítsenek elsajátítani további API‑funkciókat és alternatív megvalósítási megközelítéseket saját projektjeiben. + +- [Hogyan hozzunk létre vonalkódot – Kompakt PDF417 az Aspose.BarCode használatával](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [Hogyan generáljunk PDF417 vonalkódot – Kompakt PDF417 kódolás](/barcode/english/net/compact-pdf417-encoding/) +- [Hogyan generáljunk Aztec vonalkódot egyedi képaránnyal az Aspose.BarCode for .NET segítségével](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hungarian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/hungarian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..8d74052ef --- /dev/null +++ b/barcode/hungarian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,236 @@ +--- +category: general +date: 2026-08-06 +description: Hogyan menthetünk vonalkód képeket C#-ban a MicroPdf417 Code 128 emulációval. + Ismerje meg, hogyan generálhat PDF417 vonalkódokat, és testreszabhatja a beállításokat. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: hu +lastmod: 2026-08-06 +og_description: Hogyan menthetünk gyorsan vonalkód képeket C#-ban a MicroPdf417 és + a Code 128 emulációval. Kövesse ezt az útmutatót a PDF417 vonalkódok generálásához + és a kimenet testreszabásához. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: Hogyan menthetünk vonalkód képeket C#-ban – lépésről lépésre útmutató +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: Hogyan menthetünk vonalkód képeket C#-ban – teljes útmutató +url: /hu/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hogyan mentse el a vonalkód képeket C#‑ban – teljes útmutató + +Ha **hogyan mentse el a vonalkódot** képeket kell mentenie egy .NET alkalmazásban, ez a bemutató egy kész‑a‑futtatásra megoldást mutat be. Megtanulja, hogyan generáljon PDF417 vonalkódokat, alkalmazzon Code 128 emulációt, és írja a keletkezett PNG fájlokat a lemezre. + +A példa az Aspose.BarCode for .NET könyvtárat használja, amely támogatja a MicroPdf417, Code 128 és számos más szabványt. A útmutató végére képes lesz vonalkód fájlokat előállítani a 908, 909, 910 és 911 módokhoz, és megérti, hogyan állíthatja be a vizuális paramétereket az optimális leolvasáshoz. + +## Előfeltételek + +Mielőtt elkezdené, győződjön meg róla, hogy rendelkezik: + +* .NET 6.0 SDK vagy újabb telepítve +* Visual Studio 2022 (vagy bármely C#‑t támogató IDE) +* Aktív Aspose.BarCode for .NET licenc (egy ingyenes próba a fejlesztéshez is működik) + +A bemutató alapvető ismereteket feltételez a C# konzolprojektek terén. + +## 1. lépés: Hozzon létre egy új konzolprojektet és adja hozzá a BarCode csomagot + +Nyisson meg egy terminált, és futtassa a következő parancsokat: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +A `dotnet add package` parancs letölti a legújabb Aspose.BarCode könyvtárat, amely tartalmazza az osztályokat, amelyekre szüksége van a **hogyan generáljon pdf417** vonalkódokhoz. + +## 2. lépés: Írja meg a teljes programot + +Hozzon létre egy `Program.cs` nevű fájlt (cserélje le a meglévőt), és illessze be az alábbi kódot. A program egy **barcode generátor code128‑al** emulációt mutat be, és többféle módot is bemutat a **hogyan mentse el a vonalkódot** képek mentésére. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Miért működik ez a kód + +* **Single generator instance** – A `BarcodeGenerator` újrafelhasználása elkerüli az ismétlődő memóriafoglalást, és a konfigurációt konzisztens módon tartja a különböző módokban. +* **XDimension** – A pixelméret 2‑re állítása tiszta, olvasható képet eredményez anélkül, hogy a fájlméret nőne. +* **IsCode128Emulation** – Lehetővé teszi a Code 128‑stílusú vonalmintákat egy PDF417 szimbólumban, amelyet egyes szkennerek megbízhatóbban értelmeznek. +* **Save method** – A látható `Save` túlterhelés a **hogyan mentse el a vonalkódot** fájlok kanonikus módja; közvetlenül a fájlrendszerbe írja a képet a megadott formátumban. + +## 3. lépés: Futtassa a programot és ellenőrizze a kimenetet + +Építse és hajtsa végre a projektet: + +```bash +dotnet run +``` + +Miután a konzol kiírja a megerősítő üzeneteket, nyissa meg azt a mappát, amelyet az `outputPath`‑ben megadott. Négy PNG fájlt kell látnia: + +* `MicroPdf417_Code128_908.png` – FNC1 + alfanumerikus jelző +* `MicroPdf417_Code128_909.png` – FNC1 + numerikus jelző +* `MicroPdf417_Code128_910.png` – tiszta Code 128 adat + +Minden kép egy MicroPdf417 szimbólumot tartalmaz, amelyet a szabványos vonalkódolvasók képesek beolvasni. Ha egy szkenner nem tudja beolvasni a fájlt, fontolja meg az `XDimension.Pixels` növelését vagy a `Pdf417.Columns` módosítását, hogy megfeleljen a céleszköz felbontásának. + +## 4. lépés: Gyakori változatok és szélhelyzetek + +### Képformátum módosítása + +A `BarCodeImageFormat` enum támogatja a PNG, JPEG, BMP és TIFF formátumokat. Cserélje le a `BarCodeImageFormat.Png`‑t `BarCodeImageFormat.Jpeg`‑re, ha kisebb fájlméretre van szüksége webes terjesztéshez. + +### Teljes méretű PDF417 generálása MicroPdf417 helyett + +Ha az Ön felhasználási esete a nagyobb PDF417 szabványt igényli, hozza létre a generátort a `EncodeTypes.Pdf417`‑val: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +Ne felejtse el a `Pdf417.Rows` és `Pdf417.Columns` értékeket az ISO/IEC 15417 specifikációknak megfelelően beállítani. + +### Speciális karakterek kezelése + +A csoportelválasztó (`\u001d`) szükséges az Application Identifiers‑hez. Ha az adat más vezérlőkaraktereket tartalmaz, escape‑elje őket Unicode jelöléssel (pl. `\u001c` a fájlelválasztóhoz), hogy elkerülje a futásidejű hibákat. + +### Licencelési szempontok + +A kód licenc nélkül történő futtatása vízjelet helyez a generált képekre. Alkalmazza a licencet már a `Main` elején: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## 5. lépés: Tippek a termelésben való használathoz + +* **Batch processing** – A mentési logikát egy ciklusba ágyazza, amely CSV‑ből vagy adatbázisból olvas sorokat; a teljesítmény érdekében használja újra ugyanazt a `BarcodeGenerator` példányt. +* **Thread safety** – A `BarcodeGenerator` nem szálbiztos. Készítsen külön példányt szálanként, ha párhuzamosan hoz létre vonalkódokat. +* **Error handling** – A `Save` hívásokat `try…catch` blokkokba helyezze, hogy elkapja az I/O‑kivételket, különösen hálózati megosztókba íráskor. + +## Következtetés + +Most már tudja, hogyan **hogyan mentse el a vonalkódot** képeket C#‑ban az Aspose.BarCode használatával, hogyan **hogyan generáljon pdf417** szimbólumokat Code 128 emulációval, és hogyan konfiguráljon egy **barcode generátor code128‑al** több módhoz. A teljes, futtatható példa minden lépést bemutat a projekt beállításától a végső PNG fájlokig. + +Ezután fedezze fel a kapcsolódó témákat, például **embedding barcodes in PDF documents**, **creating QR codes with custom colors**, vagy **integrating barcode generation into ASP.NET Core APIs**. Ezek a kiegészítések az itt bemutatott elveken alapulnak, és lehetővé teszik a különféle beolvasási munkafolyamatok automatizálását. + +## Mit érdemes következőként megtanulni? + +Az alábbi oktatóanyagok szorosan kapcsolódó témákat fednek le, amelyek az ebben az útmutatóban bemutatott technikákra épülnek. Minden forrás tartalmaz teljes, működő kódpéldákat lépésről‑lépésre magyarázatokkal, hogy segítsen elsajátítani további API‑funkciókat és alternatív megvalósítási megközelítéseket a saját projektjeiben. + +- [Hogyan generáljunk PDF417 vonalkódokat – Kompakt PDF417 kódolás](/barcode/english/net/compact-pdf417-encoding/) +- [Hogyan mentse el a PNG‑t DataMatrix C40‑val az Aspose.BarCode használatával](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [Hogyan generáljunk vonalkódot – Egydimenziós vonalkód típusok](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hungarian/net/one-dimensional-barcode-types/_index.md b/barcode/hungarian/net/one-dimensional-barcode-types/_index.md index 5717cda04..d4ac92020 100644 --- a/barcode/hungarian/net/one-dimensional-barcode-types/_index.md +++ b/barcode/hungarian/net/one-dimensional-barcode-types/_index.md @@ -69,7 +69,7 @@ Ismerje meg, hogyan szabhatja testre az egydimenziós adatsáv képarányait .NE ### [Egydimenziós adatsor vonalkód magasságállítás](./one-dimensional-databar-barcode-height-adjustment/) Ismerje meg, hogyan állíthatja be az egydimenziós adatsáv vonalkód magasságát az Aspose.BarCode for .NET segítségével. Hozzon létre egyéni vonalkódokat néhány egyszerű lépésben. Fedezze fel a vonalkód testreszabásának erejét. ### [Egydimenziós adattár GS1 kódolás](./one-dimensional-databar-gs1-encoding/) -Ismerje meg a Databar GS1 kódolású vonalkódok létrehozását .NET-ben az Aspose.BarCode segítségével. Generáljon vonalkódokat könnyedén. Kövesse lépésenkénti útmutatónkat. +Ismerje meg a Databar GS1 kódolású vonalkódok létrehozását .NET-ben az Aspose.BarCode segítségével. Generáljon vonalkódokat könnyedén. Kövesse lépésről lépésre útmutatónkat. ### [Egydimenziós adatsorok és oszlopok konfigurációja](./one-dimensional-databar-row-column-configuration/) Dinamikus egydimenziós DataBar vonalkódok létrehozása sor- és oszlopkonfigurációval a .NET-ben az Aspose.BarCode for .NET használatával. A testreszabás egyszerű! ### [Egydimenziós kitöltött rudak konfigurációja](./one-dimensional-filled-bars-configuration/) @@ -78,6 +78,8 @@ megtudhatja, hogyan hozhat létre vonalkódokat .NET-ben az Aspose.BarCode for . Ismerje meg, hogyan kezelheti a kivételeket, miközben egydimenziós vonalkódokat állít elő az Aspose.BarCode for .NET használatával. Ez a lépésenkénti útmutató hibatűrő vonalkód-megoldásokat biztosít. Kezd el most! ### [Egydimenziós széles-keskeny arány konfiguráció](./one-dimensional-wide-narrow-ratio-configuration/) Az Aspose.BarCode for .NET segítségével egyszerűen hozhat létre testreszabott vonalkódokat. Lépésről lépésre útmutató az egydimenziós széles-keskeny arány konfigurációhoz. +### [Hogyan állítsunk be vonalkódot C#-ban – teljes Aspose.BarCode útmutató](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Ismerje meg, hogyan állíthat be vonalkódot C#-ban az Aspose.BarCode segítségével, lépésről lépésre útmutató. ## Következtetés @@ -89,4 +91,4 @@ Ezzel a cikkel nemcsak ismereteket szerezhet a különféle egydimenziós vonalk {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/hungarian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/hungarian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..7f9e9886d --- /dev/null +++ b/barcode/hungarian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,163 @@ +--- +category: general +date: 2026-08-06 +description: Hogyan állítsunk be vonalkódot az Aspose.BarCode segítségével C#-ban. + Tanulja meg, hogyan módosíthatja a makrókaraktereket, és hogyan hozhat létre vonalkód + képet C#-ban lépésről‑lépésre kóddal. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: hu +lastmod: 2026-08-06 +og_description: Hogyan állítsunk be vonalkódot az Aspose.BarCode segítségével C#-ban. + Ez az útmutató bemutatja, hogyan módosíthatók a makrókarakterek, és hogyan hozható + gyorsan létre vonalkód kép C#-ban. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: Hogyan állítsunk be vonalkódot C#-ban – Aspose.BarCode útmutató +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: Hogyan állítsunk be vonalkódot C#-ban – teljes Aspose.BarCode útmutató +url: /hu/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hogyan állítsuk be a vonalkódot C#-ban – teljes Aspose.BarCode útmutató + +Ha .NET alkalmazásban **hogyan állítsuk be a vonalkódot**, akkor ez a tutorial pontos lépéseket mutat be az Aspose.BarCode használatával. Megmutatjuk, hogyan változtassuk meg a makró karaktereket, állítsuk be a vizuális paramétereket, és **vonalkód kép létrehozása C#-ban** fájlokat, amelyeket közvetlenül lemezre menthetünk. + +Az útmutató mindent lefed a könyvtár telepítésétől kezdve két MicroPDF417 vonalkód generálásáig különböző makró értékekkel. Külső dokumentációra nincs szükség – egyszerűen másolja a kódot, futtassa, és azonnal ellenőrizze a PNG kimenetet. + +## Előkövetelmények + +A kezdéshez győződjön meg róla, hogy rendelkezik: + +* .NET 6.0 vagy újabb (a példa egy konzolprojekttel dolgozik) +* Visual Studio 2022 vagy bármely C# IDE +* Aktív Aspose.BarCode licenc (az ingyenes értékelő verzió is működik teszteléshez) +* Alapvető C# szintaxis ismeret + +A NuGet csomagra is szüksége lesz: + +```bash +dotnet add package Aspose.BarCode +``` + +## Hogyan állítsuk be a vonalkód paramétereit – 1. lépés: a generátor létrehozása + +Az első lépés egy `BarcodeGenerator` példányosítása a kívánt szimbólummal és adatokkal. Az `EncodeTypes.MicroPdf417` használata azt mondja az Aspose.BarCode-nak, hogy egy kompakt PDF417 változatot állítson elő. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Miért fontos ez:** `BarcodeGenerator` a központi objektum; minden későbbi beállítás a `Parameters` tulajdonságát módosítja. A megfelelő `EncodeTypes` kiválasztása biztosítja, hogy a vonalkód a MicroPDF417 specifikációnak megfelelően készüljön. + +## Hogyan változtassuk meg a makró karaktereket – 2. lépés: vizuális paraméterek beállítása + +A makró karakterek opcionális vezérlőkódok, amelyek lehetővé teszik több PDF417 szimbólum összefűzését. A példa a `Macro05` és `Macro06` között vált. Emellett beállítja a modul szélességét (`XDimension`) és az oszlopok számát a vonalkód méretének szabályozásához. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Miért változtatja a makrót:** A makró karakter azt jelzi a szkennernek, hogy ez a vonalkód egy nagyobb adatcsoport része. A váltás bemutatja, hogyan kapcsolható ugyanaz az adat különböző makró azonosítókhoz. + +## Hogyan állítsuk be a vonalkódot – 3. lépés: második vonalkód generálása másik makróval + +Most újra felhasználjuk ugyanazt a `generator` példányt, csak a makró értékét cserélve. Ez elkerüli az objektum újbóli létrehozását, és bemutatja, hogy a **hogyan állítsuk be a vonalkódot** paraméterek futásidőben is módosíthatók. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Várható kimenet + +A program futtatása két PNG fájlt hoz létre a projekt mappájában: + +* `MicroPdf417_Macro05.png` – vonalkód Macro05-tel +* `MicroPdf417_Macro06.png` – vonalkód Macro06-tel + +Mindkét kép egy kompakt MicroPDF417 szimbólumot mutat, amely a `12345ABC` adatot kódolja. A PNG fájlokat bármely képnézővel megnyithatja a vizuális minőség ellenőrzéséhez. + +## Barcode generator C# legjobb gyakorlatai + +* **Használja újra a generátort:** A `Parameters` módosítása egy meglévő példányon hatékonyabb, mint minden vonalkódhoz új generátor létrehozása. +* **Állítsa be az X‑dimensiont korán:** A modul szélessége befolyásolja a teljes kép méretét; állítsa be mentés előtt. +* **Ellenőrizze a makró használatát:** Nem minden szkenner támogatja a makró karaktereket. Tesztelje a célhardveren, ha termelésben szeretné használni. +* **Erőforrások felszabadítása:** A `BarcodeGenerator` implementálja az `IDisposable` interfészt. Hosszú‑távú szolgáltatásban csomagolja `using` blokkba, vagy hívja a `Dispose()`-t a befejezéskor. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Vonalkód kép létrehozása C# – hibaelhárítási tippek + +| Tünet | Valószínű ok | Megoldás | +|-------------------------------------|-------------------------------------------|----------| +| Üres PNG fájl | `XDimension` 0-ra vagy nagyon magas értékre van állítva | Használjon ésszerű pixel szélességet (1‑5) | +| A szkenner nem olvassa a vonalkódot | Helytelen makró karakter a szkennerhez | Ellenőrizze a szkenner dokumentációját; ha nincs szükség, használja a `MacroNone`-t | +| Kivétel `ArgumentOutOfRangeException` | Az oszlopszám az engedélyezett tartományon (1‑30) kívül van | Tartsa a `Columns` értékét 1 és 30 között | + +## Következtetés + +Most már ismeri a **hogyan állítsuk be a vonalkód** tulajdonságait, a **hogyan változtassuk meg a makró** karaktereket, és a **vonalkód kép létrehozása C#-ban** fájlok készítését az Aspose.BarCode használatával. A teljes, futtatható példa bemutatja a teljes munkafolyamatot a generátor létrehozásától a kép exportálásáig. + +Ezután fedezze fel a többi szimbólumot (`EncodeTypes.QR`, `EncodeTypes.Code128`), vagy ágyazza be a vonalkódot közvetlenül PDF-ekbe az Aspose.PDF segítségével. Mindkét téma a szélesebb **barcode generator c#** ökoszisztéma része, és minimális kómmódosítással hozzáadható a projekthez. + +Boldog kódolást, és nyugodtan kísérletezzen különböző makró értékekkel, dimenziókkal és kimeneti formátumokkal! + +## Mit érdemes még megtanulni? + +Az alábbi tutorialok szorosan kapcsolódó témákat fednek le, amelyek a jelen útmutatóban bemutatott technikákra épülnek. Minden forrás teljes, működő kódrészleteket tartalmaz lépésről‑lépésre magyarázatokkal, hogy segítsenek elsajátítani további API funkciókat és alternatív megvalósítási megközelítéseket saját projektjeiben. + +- [Hogyan hozzunk létre csendes zónát a Code 16K vonalkódhoz az Aspose.BarCode for .NET használatával](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [Hogyan hozzunk létre kiterjesztett dotcode szöveget az Aspose.BarCode for .NET használatával](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [Hogyan állítsunk be keretet az ITF-14 vonalkód testreszabásához](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/indonesian/net/compact-pdf417-encoding/_index.md b/barcode/indonesian/net/compact-pdf417-encoding/_index.md index e49f3f784..794fc66b6 100644 --- a/barcode/indonesian/net/compact-pdf417-encoding/_index.md +++ b/barcode/indonesian/net/compact-pdf417-encoding/_index.md @@ -77,6 +77,10 @@ Aspose.BarCode memungkinkan Anda mengatur properti `Pdf417ErrorCorrectionLevel` ## Compact PDF417 Encoding Tutorials ### [Creating Compact PDF417 Barcodes](./compact-pdf417-basic-configuration/) Pelajari cara menghasilkan barcode Compact PDF417 menggunakan Aspose.BarCode untuk .NET. Panduan komprehensif dengan instruksi langkah‑demi‑langkah dan contoh kode. +### [Menghasilkan barcode PDF417 di C# – panduan generator barcode](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +Panduan langkah demi langkah untuk menghasilkan barcode PDF417 menggunakan generator barcode di C#. +### [Cara menyimpan gambar barcode di C# – panduan lengkap](./how-to-save-barcode-images-in-c-complete-guide/) +Panduan lengkap untuk menyimpan gambar barcode yang dihasilkan dalam aplikasi C# menggunakan Aspose.BarCode. ## Frequently Asked Questions @@ -106,4 +110,4 @@ A: Tidak diperlukan font eksternal; pustaka menangani semua rendering secara int {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/indonesian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/indonesian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..23344a40a --- /dev/null +++ b/barcode/indonesian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,112 @@ +--- +category: general +date: 2026-08-06 +description: Buat kode batang PDF417 dalam C# dengan generator kode batang C# tutorial + PDF417. Pelajari cara menghasilkan kode batang PDF417, mengatur mode biner, dan + menyimpannya sebagai PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: id +lastmod: 2026-08-06 +og_description: Buat kode batang PDF417 di C# menggunakan BarcodeGenerator. Pelajari + cara mengatur enkoding biner, mengonfigurasi opsi PDF417, dan menyimpan kode batang + sebagai gambar PNG. +og_image_alt: Generate PDF417 barcode example +og_title: Buat kode batang PDF417 di C# – panduan lengkap generator kode batang +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: Menghasilkan barcode PDF417 di C# – panduan generator barcode +url: /id/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hasilkan barcode PDF417 di C# – panduan generator barcode + +Jika Anda perlu **menghasilkan barcode PDF417** dalam aplikasi .NET, panduan ini menunjukkan secara tepat cara melakukannya. Dengan menggunakan pustaka Aspose.BarCode Anda dapat mengkodekan data biner, mengubah encoder PDF417 ke mode biner, dan menghasilkan gambar PNG resolusi tinggi hanya dalam beberapa baris C#. + +Tutorial ini mencakup semua hal mulai dari menginstal paket NuGet hingga menyesuaikan pengaturan PDF417 dan menangani kasus tepi seperti data kosong atau karakter yang tidak didukung. Pada akhir panduan Anda akan memiliki contoh lengkap yang dapat dijalankan yang dapat Anda masukkan ke dalam proyek C# mana pun. + +**Apa yang akan Anda pelajari** + +* Menginstal dan mereferensikan paket generator barcode C# PDF417. +* Menyiapkan data biner untuk pengkodean. +* Mengonfigurasi `BarcodeGenerator` untuk pengkodean PDF417 biner. +* Menyimpan barcode yang dihasilkan sebagai file PNG dan memverifikasi hasilnya. + +> **Prerequisites** – .NET 6.0 atau lebih baru, Visual Studio 2022 (atau IDE apa pun yang Anda sukai), dan koneksi internet untuk mengunduh paket NuGet. + +--- + +## Langkah 1: Instal paket NuGet Aspose.BarCode + +Cara paling andal untuk bekerja dengan barcode PDF417 di C# adalah pustaka **Aspose.BarCode**, yang mendukung pengkodean biner secara penuh. + +```bash +dotnet add package Aspose.BarCode +``` + +*Mengapa langkah ini?* +Kelas `BarcodeGenerator` berada di namespace `Aspose.BarCode`. Menambahkan paket memastikan semua DLL yang diperlukan tersedia saat kompilasi dan Anda mendapatkan perbaikan bug serta peningkatan performa terbaru. + +--- + +## Langkah 2: Buat proyek konsol baru (opsional tetapi disarankan) + +Jika Anda menguji kode secara terpisah, mulai dengan aplikasi konsol baru: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Tambahkan paket ke proyek (ulangi perintah dari Langkah 1 jika belum melakukannya). + +--- + +## Langkah 3: Siapkan data biner untuk dikodekan + +PDF417 dapat mengkodekan byte mentah ketika Anda mengatur mode pengkodean ke **Binary**. Di bawah ini adalah array byte sederhana yang menunjukkan prosesnya. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Mengapa data biner?* +Mode biner memungkinkan Anda menyimpan urutan byte apa pun—berguna untuk menyematkan file, kunci enkripsi, atau payload khusus yang bukan teks biasa. + +--- + +## Langkah 4: Inisialisasi generator barcode dan konfigurasikan PDF417 untuk mode biner + + + +## Apa yang Harus Anda Pelajari Selanjutnya? + +Tutorial berikut mencakup topik yang terkait erat yang membangun teknik yang ditunjukkan dalam panduan ini. Setiap sumber daya menyertakan contoh kode lengkap yang berfungsi dengan penjelasan langkah demi langkah untuk membantu Anda menguasai fitur API tambahan dan mengeksplorasi pendekatan implementasi alternatif dalam proyek Anda sendiri. + +- [Cara Membuat Barcode – PDF417 Kompak dengan Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [Cara Menghasilkan Barcode PDF417 – Pengkodean PDF417 Kompak](/barcode/english/net/compact-pdf417-encoding/) +- [Cara menghasilkan barcode Aztec dengan rasio aspek khusus menggunakan Aspose.BarCode untuk .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/indonesian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/indonesian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..a1e70a3ff --- /dev/null +++ b/barcode/indonesian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,236 @@ +--- +category: general +date: 2026-08-06 +description: Cara menyimpan gambar barcode di C# menggunakan MicroPdf417 dengan emulasi + Code 128. Pelajari cara menghasilkan barcode PDF417 dan menyesuaikan pengaturannya. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: id +lastmod: 2026-08-06 +og_description: Cara menyimpan gambar barcode di C# dengan cepat menggunakan MicroPdf417 + dan emulasi Code 128. Ikuti panduan ini untuk menghasilkan barcode PDF417 dan menyesuaikan + output. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: Cara menyimpan gambar barcode di C# – panduan langkah demi langkah +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: Cara menyimpan gambar barcode di C# – panduan lengkap +url: /id/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Cara menyimpan gambar barcode di C# – panduan lengkap + +Jika Anda perlu **how to save barcode** gambar dalam aplikasi .NET, tutorial ini menunjukkan solusi siap‑jalankan. Anda akan belajar cara menghasilkan barcode PDF417, menerapkan emulasi Code 128, dan menulis file PNG yang dihasilkan ke disk. + +Contoh ini menggunakan pustaka Aspose.BarCode untuk .NET, yang mendukung MicroPdf417, Code 128, dan banyak standar lainnya. Pada akhir panduan Anda dapat menghasilkan file barcode untuk Mode 908, 909, 910, dan 911, dan Anda akan memahami cara menyesuaikan parameter visual untuk pemindaian optimal. + +## Prasyarat + +Sebelum Anda memulai, pastikan Anda memiliki: + +* .NET 6.0 SDK atau yang lebih baru terpasang +* Visual Studio 2022 (atau IDE apa pun yang mendukung C#) +* Lisensi aktif Aspose.BarCode untuk .NET (versi percobaan gratis cukup untuk pengembangan) + +Tutorial ini mengasumsikan pemahaman dasar tentang proyek konsol C#. + +## Langkah 1: Buat proyek konsol baru dan tambahkan paket BarCode + +Buka terminal dan jalankan perintah berikut: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +Perintah `dotnet add package` mengunduh pustaka Aspose.BarCode terbaru, yang berisi kelas yang Anda perlukan untuk **how to generate pdf417** barcode. + +## Langkah 2: Tulis program lengkap + +Buat file bernama `Program.cs` (ganti yang sudah ada) dan tempelkan kode di bawah ini. Program ini memperlihatkan **barcode generator with code128** emulasi dan menunjukkan beberapa cara untuk **how to save barcode** gambar. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Mengapa kode ini berhasil + +* **Single generator instance** – Menggunakan kembali `BarcodeGenerator` menghindari alokasi memori berulang dan menjaga konfigurasi tetap konsisten di semua mode. +* **XDimension** – Menetapkan ukuran piksel menjadi 2 menghasilkan gambar yang jelas dan dapat dibaca tanpa memperbesar ukuran file. +* **IsCode128Emulation** – Mengaktifkan pola bar gaya Code 128 di dalam simbol PDF417, yang dapat dibaca lebih andal oleh beberapa pemindai. +* **Save method** – Overload `Save` yang Anda lihat adalah cara kanonik untuk **how to save barcode** file; ia menulis gambar langsung ke sistem file dalam format yang Anda tentukan. + +## Langkah 3: Jalankan program dan verifikasi output + +Bangun dan jalankan proyek: + +```bash +dotnet run +``` + +Setelah konsol mencetak pesan konfirmasi, buka folder yang Anda tentukan di `outputPath`. Anda harus melihat empat file PNG: + +* `MicroPdf417_Code128_908.png` – Indikator FNC1 + alfanumerik +* `MicroPdf417_Code128_909.png` – Indikator FNC1 + numerik +* `MicroPdf417_Code128_910.png` – payload Code 128 murni + +Setiap gambar berisi simbol MicroPdf417 yang dapat dipindai oleh pembaca barcode standar. Jika pemindai gagal membaca sebuah file, pertimbangkan untuk meningkatkan `XDimension.Pixels` atau menyesuaikan `Pdf417.Columns` agar cocok dengan resolusi perangkat target. + +## Langkah 4: Variasi umum dan kasus tepi + +### Mengubah format gambar + +`enum` `BarCodeImageFormat` mendukung PNG, JPEG, BMP, dan TIFF. Ganti `BarCodeImageFormat.Png` dengan `BarCodeImageFormat.Jpeg` jika Anda memerlukan ukuran file yang lebih kecil untuk pengiriman web. + +### Menghasilkan PDF417 ukuran penuh alih-alih MicroPdf417 + +Jika kasus penggunaan Anda memerlukan standar PDF417 yang lebih besar, buat instance generator dengan `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +Ingat untuk menyesuaikan `Pdf417.Rows` dan `Pdf417.Columns` agar memenuhi spesifikasi ISO/IEC 15417. + +### Menangani karakter khusus + +Pemisa grup (`\u001d`) diperlukan untuk Application Identifiers. Jika data Anda berisi karakter kontrol lain, escape mereka menggunakan notasi Unicode (misalnya, `\u001c` untuk pemisah file) untuk menghindari kesalahan runtime. + +### Pertimbangan lisensi + +Menjalankan kode tanpa lisensi akan menambahkan watermark pada gambar yang dihasilkan. Terapkan lisensi Anda di awal `Main`: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Langkah 5: Tips untuk penggunaan produksi + +* **Batch processing** – Bungkus logika penyimpanan dalam loop yang membaca baris dari CSV atau basis data; gunakan kembali instance `BarcodeGenerator` yang sama untuk kinerja. +* **Thread safety** – `BarcodeGenerator` tidak thread‑safe. Buat instance terpisah per thread jika Anda memparalelkan pembuatan barcode. +* **Error handling** – Bungkus pemanggilan `Save` dalam blok `try…catch` untuk menangkap pengecualian I/O, terutama saat menulis ke jaringan bersama. + +## Kesimpulan + +Anda sekarang tahu cara **how to save barcode** gambar di C# menggunakan Aspose.BarCode, cara **how to generate pdf417** simbol dengan emulasi Code 128, dan cara mengonfigurasi **barcode generator with code128** untuk berbagai mode. Contoh lengkap yang dapat dijalankan ini memperlihatkan setiap langkah mulai dari penyiapan proyek hingga file PNG akhir. + +Selanjutnya, jelajahi topik terkait seperti **embedding barcodes in PDF documents**, **creating QR codes with custom colors**, atau **integrating barcode generation into ASP.NET Core APIs**. Ekstensi ini dibangun di atas prinsip yang sama yang dibahas di sini dan memungkinkan Anda mengotomatisasi berbagai alur kerja pemindaian. + +## Apa yang Harus Anda Pelajari Selanjutnya? + +Tutorial berikut mencakup topik yang sangat terkait yang membangun teknik yang ditunjukkan dalam panduan ini. Setiap sumber menyertakan contoh kode lengkap yang berfungsi dengan penjelasan langkah demi langkah untuk membantu Anda menguasai fitur API tambahan dan mengeksplorasi pendekatan implementasi alternatif dalam proyek Anda sendiri. + +- [Cara Menghasilkan Barcode PDF417 – Pengkodean PDF417 Kompak](/barcode/english/net/compact-pdf417-encoding/) +- [Cara Menyimpan PNG menggunakan DataMatrix C40 dengan Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [Cara Menghasilkan Barcode - Jenis Barcode Satu Dimensi](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/indonesian/net/one-dimensional-barcode-types/_index.md b/barcode/indonesian/net/one-dimensional-barcode-types/_index.md index 7f12b70c9..9e1732de7 100644 --- a/barcode/indonesian/net/one-dimensional-barcode-types/_index.md +++ b/barcode/indonesian/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ dapatkan cara membuat kode batang di .NET dengan Aspose.BarCode untuk .NET. Tuto Pelajari cara menangani pengecualian saat membuat kode batang satu dimensi menggunakan Aspose.BarCode untuk .NET. Panduan langkah demi langkah ini memastikan solusi kode batang yang toleran terhadap kesalahan. Mulai sekarang! ### [Konfigurasi Rasio Lebar-Sempit Satu Dimensi](./one-dimensional-wide-narrow-ratio-configuration/) Hasilkan kode batang khusus dengan mudah menggunakan Aspose.BarCode untuk .NET. Panduan langkah demi langkah untuk konfigurasi rasio lebar-sempit satu dimensi. +### [Cara mengatur barcode di C# – panduan lengkap Aspose.BarCode](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Pelajari cara mengatur barcode di C# dengan panduan lengkap Aspose.BarCode. ## Kesimpulan @@ -89,4 +91,4 @@ Dengan artikel ini, Anda tidak hanya akan memperoleh pengetahuan tentang berbaga {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/indonesian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/indonesian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..d049d1dcd --- /dev/null +++ b/barcode/indonesian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,161 @@ +--- +category: general +date: 2026-08-06 +description: Cara mengatur barcode menggunakan Aspose.BarCode di C#. Pelajari cara + mengubah karakter makro dan membuat gambar barcode C# dengan kode langkah demi langkah. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: id +lastmod: 2026-08-06 +og_description: Cara mengatur barcode dengan Aspose.BarCode di C#. Panduan ini menunjukkan + cara mengubah karakter makro dan membuat gambar barcode C# dengan cepat. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: Cara mengatur barcode di C# – Tutorial Aspose.BarCode +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: Cara mengatur barcode di C# – panduan lengkap Aspose.BarCode +url: /id/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Cara mengatur barcode di C# – panduan lengkap Aspose.BarCode + +Jika Anda perlu **cara mengatur barcode** dalam aplikasi .NET, tutorial ini menunjukkan langkah‑langkah tepat menggunakan Aspose.BarCode. Anda akan melihat cara mengubah karakter makro, menyesuaikan parameter visual, dan **membuat file gambar barcode C#** yang dapat disimpan langsung ke disk. + +Panduan ini mencakup semua hal mulai dari menginstal pustaka hingga menghasilkan dua barcode MicroPDF417 dengan nilai makro yang berbeda. Tidak diperlukan dokumentasi eksternal—Anda dapat menyalin kode, menjalankannya, dan memverifikasi output PNG secara langsung. + +## Prasyarat + +Sebelum Anda memulai, pastikan Anda memiliki: + +* .NET 6.0 atau lebih baru (contoh menggunakan proyek konsol) +* Visual Studio 2022 atau IDE C# apa pun +* Lisensi Aspose.BarCode yang aktif (evaluasi gratis dapat digunakan untuk pengujian) +* Pengetahuan dasar tentang sintaks C# + +Anda juga memerlukan paket NuGet: + +```bash +dotnet add package Aspose.BarCode +``` + +## Cara mengatur parameter barcode – langkah 1: buat generator + +Tindakan pertama adalah menginstansiasi `BarcodeGenerator` dengan simbol dan data yang diinginkan. Menggunakan `EncodeTypes.MicroPdf417` memberi tahu Aspose.BarCode untuk menghasilkan varian PDF417 yang kompak. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Mengapa ini penting:** `BarcodeGenerator` adalah objek pusat; semua pengaturan selanjutnya memodifikasi properti `Parameters`‑nya. Memilih `EncodeTypes` yang tepat memastikan barcode mengikuti spesifikasi MicroPDF417. + +## Cara mengubah karakter makro – langkah 2: sesuaikan parameter visual + +Karakter makro adalah kode kontrol opsional yang memungkinkan Anda menggabungkan beberapa simbol PDF417. Contoh ini beralih antara `Macro05` dan `Macro06`. Anda juga mengatur lebar modul (`XDimension`) dan jumlah kolom untuk mengontrol ukuran barcode. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Mengapa Anda mengubah makro:** Karakter makro memberi tahu pemindai bahwa barcode ini merupakan bagian dari kumpulan data yang lebih besar. Mengubahnya menunjukkan bagaimana data yang sama dapat dihubungkan ke identifier makro yang berbeda. + +## Cara mengatur barcode – langkah 3: hasilkan barcode kedua dengan makro yang berbeda + +Sekarang kita menggunakan kembali instance `generator` yang sama, hanya mengganti nilai makro. Ini menghindari pembuatan ulang objek dan menunjukkan bahwa **cara mengatur barcode** dapat dilakukan pada saat runtime. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Output yang diharapkan + +Menjalankan program akan membuat dua file PNG di folder proyek: + +* `MicroPdf417_Macro05.png` – barcode dengan Macro05 +* `MicroPdf417_Macro06.png` – barcode dengan Macro06 + +Kedua gambar menampilkan simbol MicroPDF417 yang kompak yang mengenkode `12345ABC`. Anda dapat membuka file PNG dengan penampil gambar apa pun untuk memverifikasi kualitas visual. + +## Praktik terbaik generator barcode C# + +* **Gunakan kembali generator:** Mengubah `Parameters` pada instance yang ada lebih efisien daripada membuat generator baru untuk setiap barcode. +* **Atur X‑dimension lebih awal:** Lebar modul memengaruhi ukuran gambar keseluruhan; sesuaikan sebelum menyimpan. +* **Validasi penggunaan makro:** Tidak semua pemindai mendukung karakter makro. Uji dengan perangkat keras target Anda jika berencana menggunakannya dalam produksi. +* **Bebaskan sumber daya:** `BarcodeGenerator` mengimplementasikan `IDisposable`. Pada layanan yang berjalan lama, bungkus dalam blok `using` atau panggil `Dispose()` setelah selesai. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Membuat gambar barcode C# – tips pemecahan masalah + +| Gejala | Penyebab kemungkinan | Perbaikan | +|--------------------------------------|------------------------------------------|-----------| +| File PNG kosong | `XDimension` diatur ke 0 atau nilai sangat tinggi | Gunakan lebar piksel yang wajar (1‑5) | +| Barcode tidak dapat dibaca pemindai | Karakter makro salah untuk pemindai | Verifikasi dokumentasi pemindai; gunakan `MacroNone` jika tidak diperlukan | +| Exception `ArgumentOutOfRangeException` | Jumlah kolom di luar rentang yang diizinkan (1‑30) | Pertahankan `Columns` antara 1 dan 30 | + +## Kesimpulan + +Anda sekarang mengetahui **cara mengatur properti barcode**, **cara mengubah karakter makro**, dan cara **membuat file gambar barcode C#** menggunakan Aspose.BarCode. Contoh lengkap yang dapat dijalankan menunjukkan alur kerja penuh mulai dari pembuatan generator hingga ekspor gambar. + +Selanjutnya, jelajahi simbol lain (`EncodeTypes.QR`, `EncodeTypes.Code128`) atau sematkan barcode langsung ke PDF dengan Aspose.PDF. Kedua topik berada dalam ekosistem **barcode generator c#** yang lebih luas dan dapat ditambahkan ke proyek ini dengan perubahan kode minimal. + +Selamat coding, dan silakan bereksperimen dengan nilai makro, dimensi, dan format output yang berbeda! + +## Apa yang Harus Anda Pelajari Selanjutnya? + +Tutorial berikut mencakup topik yang sangat terkait yang membangun teknik yang ditunjukkan dalam panduan ini. Setiap sumber menyertakan contoh kode lengkap yang berfungsi dengan penjelasan langkah demi langkah untuk membantu Anda menguasai fitur API tambahan dan menjelajahi pendekatan implementasi alternatif dalam proyek Anda. + +- [Cara membuat zona tenang barcode untuk Code 16K menggunakan Aspose.BarCode untuk .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [Cara membuat teks kode dotcode yang diperluas dengan Aspose.BarCode untuk .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [Cara Mengatur Border untuk Kustomisasi Barcode ITF-14](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/italian/net/compact-pdf417-encoding/_index.md b/barcode/italian/net/compact-pdf417-encoding/_index.md index 9fd32044d..89e5b55cf 100644 --- a/barcode/italian/net/compact-pdf417-encoding/_index.md +++ b/barcode/italian/net/compact-pdf417-encoding/_index.md @@ -86,6 +86,12 @@ Oltre alle basi, ecco alcuni consigli pratici per ottimizzare il tuo flusso di l ### [Creating Compact PDF417 Barcodes](./compact-pdf417-basic-configuration/) Scopri come generare codici a barre Compact PDF417 usando Aspose.BarCode per .NET. Guida completa con istruzioni passo‑per‑passo ed esempi di codice. +### [Genera codice a barre PDF417 in C# – guida al generatore di codici a barre](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +Scopri come generare codici a barre PDF417 in C# utilizzando il generatore di codici a barre di Aspose. + +### [Come salvare le immagini dei codici a barre in C# – guida completa](./how-to-save-barcode-images-in-c-complete-guide/) +Scopri come salvare le immagini dei codici a barre generate con Aspose.BarCode in C#, con esempi di codice e opzioni di formato. + ## Domande frequenti **D: Qual è la quantità massima di dati che posso memorizzare in un codice a barre Compact PDF417?** @@ -114,4 +120,4 @@ R: No, non sono richiesti font esterni; la libreria gestisce tutto il rendering {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/italian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/italian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..ec8331b32 --- /dev/null +++ b/barcode/italian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,113 @@ +--- +category: general +date: 2026-08-06 +description: Genera codice a barre PDF417 in C# con un generatore di codici a barre + C# tutorial PDF417. Scopri come generare il codice a barre PDF417, impostare la + modalità binaria e salvarlo come PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: it +lastmod: 2026-08-06 +og_description: Genera codice a barre PDF417 in C# usando BarcodeGenerator. Impara + a impostare la codifica binaria, configurare le opzioni PDF417 e salvare il codice + a barre come immagine PNG. +og_image_alt: Generate PDF417 barcode example +og_title: Genera codice a barre PDF417 in C# – guida completa al generatore di codici + a barre +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: Genera codice a barre PDF417 in C# – guida al generatore di codici a barre +url: /it/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Genera codice a barre PDF417 in C# – guida al generatore di codici a barre + +Se hai bisogno di **generare un codice a barre PDF417** in un'applicazione .NET, questa guida ti mostra esattamente come fare. Utilizzando la libreria Aspose.BarCode puoi codificare dati binari, passare il codificatore PDF417 alla modalità binaria e produrre un'immagine PNG ad alta risoluzione in poche righe di C#. + +Questo tutorial copre tutto, dall'installazione del pacchetto NuGet alla personalizzazione delle impostazioni PDF417 e alla gestione di casi limite come dati vuoti o caratteri non supportati. Alla fine della guida avrai un esempio completo e eseguibile che potrai inserire in qualsiasi progetto C#. + +**Cosa imparerai** + +* Installa e riferisci il pacchetto generatore di codici a barre C# PDF417. +* Prepara i dati binari per la codifica. +* Configura il `BarcodeGenerator` per la codifica PDF417 binaria. +* Salva il codice a barre generato come file PNG e verifica il risultato. + +> **Prerequisiti** – .NET 6.0 o successivo, Visual Studio 2022 (o qualsiasi IDE tu preferisca) e una connessione internet per scaricare il pacchetto NuGet. + +--- + +## Passo 1: Installa il pacchetto NuGet Aspose.BarCode + +Il modo più affidabile per lavorare con i codici a barre PDF417 in C# è la libreria **Aspose.BarCode**, che supporta pienamente la codifica binaria. + +```bash +dotnet add package Aspose.BarCode +``` + +*Perché questo passo?* +La classe `BarcodeGenerator` si trova nello spazio dei nomi `Aspose.BarCode`. Aggiungere il pacchetto garantisce che tutte le DLL necessarie siano disponibili al momento della compilazione e che tu ottenga le ultime correzioni di bug e miglioramenti delle prestazioni. + +--- + +## Passo 2: Crea un nuovo progetto console (opzionale ma consigliato) + +Se stai testando il codice in isolamento, avvia una nuova app console: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Aggiungi il pacchetto al progetto (ripeti il comando del Passo 1 se non l'hai già fatto). + +--- + +## Passo 3: Prepara i dati binari da codificare + + PDF417 può codificare byte grezzi quando imposti la modalità di codifica su **Binary**. Di seguito è riportato un semplice array di byte che dimostra il processo. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Perché dati binari?* +La modalità binaria ti consente di memorizzare qualsiasi sequenza di byte—utile per incorporare file, chiavi di crittografia o payload personalizzati che non sono testo semplice. + +--- + +## Passo 4: Inizializza il generatore di codici a barre e configura PDF417 per la modalità binaria + + + +## Cosa dovresti imparare dopo? + +I seguenti tutorial coprono argomenti strettamente correlati che si basano sulle tecniche dimostrate in questa guida. Ogni risorsa include esempi di codice completi e funzionanti con spiegazioni passo passo per aiutarti a padroneggiare funzionalità aggiuntive dell'API ed esplorare approcci di implementazione alternativi nei tuoi progetti. + +- [Come creare un codice a barre – PDF417 compatto con Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [Come generare codici a barre PDF417 – Codifica PDF417 compatta](/barcode/english/net/compact-pdf417-encoding/) +- [Come generare un codice a barre Aztec con rapporto d'aspetto personalizzato usando Aspose.BarCode per .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/italian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/italian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..0e24b9bd5 --- /dev/null +++ b/barcode/italian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,237 @@ +--- +category: general +date: 2026-08-06 +description: Come salvare le immagini dei codici a barre in C# usando MicroPdf417 + con emulazione Code 128. Scopri come generare codici a barre PDF417 e personalizzare + le impostazioni. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: it +lastmod: 2026-08-06 +og_description: Come salvare rapidamente le immagini dei codici a barre in C# con + MicroPdf417 e l'emulazione Code 128. Segui questa guida per generare codici a barre + PDF417 e personalizzare l'output. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: Come salvare le immagini dei codici a barre in C# – guida passo passo +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: Come salvare le immagini di codici a barre in C# – guida completa +url: /it/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Come salvare le immagini dei codici a barre in C# – guida completa + +Se hai bisogno di **how to save barcode** immagini in un'applicazione .NET, questo tutorial ti mostra una soluzione pronta all'uso. Imparerai a generare codici a barre PDF417, applicare l'emulazione Code 128 e scrivere i file PNG risultanti su disco. + +L'esempio utilizza la libreria Aspose.BarCode for .NET, che supporta MicroPdf417, Code 128 e molti altri standard. Alla fine della guida potrai produrre file di codici a barre per le Modalità 908, 909, 910 e 911, e comprenderai come regolare i parametri visivi per una scansione ottimale. + +## Prerequisiti + +Prima di iniziare, assicurati di avere: + +* .NET 6.0 SDK o versioni successive installate +* Visual Studio 2022 (o qualsiasi IDE che supporti C#) +* Una licenza attiva di Aspose.BarCode for .NET (una prova gratuita funziona per lo sviluppo) + +Il tutorial presuppone una conoscenza di base dei progetti console C#. + +## Passo 1: Creare un nuovo progetto console e aggiungere il pacchetto BarCode + +Apri un terminale ed esegui i seguenti comandi: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +Il comando `dotnet add package` scarica l'ultima libreria Aspose.BarCode, che contiene le classi necessarie per **how to generate pdf417** codici a barre. + +## Passo 2: Scrivere il programma completo + +Crea un file chiamato `Program.cs` (sostituisci quello esistente) e incolla il codice qui sotto. Il programma dimostra un'**barcode generator with code128** emulazione e mostra diversi modi per **how to save barcode** immagini. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Perché questo codice funziona + +* **Single generator instance** – Riutilizzare `BarcodeGenerator` evita ripetute allocazioni di memoria e mantiene la configurazione coerente tra le modalità. +* **XDimension** – Impostare la dimensione dei pixel a 2 produce un'immagine chiara e leggibile senza gonfiare le dimensioni del file. +* **IsCode128Emulation** – Abilita i pattern a barre in stile Code 128 all'interno di un simbolo PDF417, che alcuni scanner interpretano in modo più affidabile. +* **Save method** – La sovraccarico `Save` che vedi è il modo canonico per **how to save barcode** file; scrive l'immagine direttamente nel file system nel formato specificato. + +## Passo 3: Eseguire il programma e verificare l'output + +Compila ed esegui il progetto: + +```bash +dotnet run +``` + +Dopo che la console stampa i messaggi di conferma, apri la cartella impostata in `outputPath`. Dovresti vedere quattro file PNG: + +* `MicroPdf417_Code128_908.png` – Indicatore FNC1 + alfanumerico +* `MicroPdf417_Code128_909.png` – Indicatore FNC1 + numerico +* `MicroPdf417_Code128_910.png` – payload puro Code 128 + +Ogni immagine contiene un simbolo MicroPdf417 che può essere scansionato da lettori di codici a barre standard. Se uno scanner non riesce a leggere un file, considera di aumentare `XDimension.Pixels` o di regolare `Pdf417.Columns` per corrispondere alla risoluzione del dispositivo di destinazione. + +## Passo 4: Variazioni comuni e casi limite + +### Cambiare il formato immagine + +L'enumerazione `BarCodeImageFormat` supporta PNG, JPEG, BMP e TIFF. Sostituisci `BarCodeImageFormat.Png` con `BarCodeImageFormat.Jpeg` se hai bisogno di una dimensione file più piccola per la consegna web. + +### Generare un PDF417 a grandezza piena invece di MicroPdf417 + +Se il tuo caso d'uso richiede lo standard PDF417 più grande, istanzia il generatore con `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +Ricorda di regolare `Pdf417.Rows` e `Pdf417.Columns` per soddisfare le specifiche ISO/IEC 15417. + +### Gestione dei caratteri speciali + +Il separatore di gruppo (`\u001d`) è richiesto per gli Identificatori di Applicazione. Se i tuoi dati contengono altri caratteri di controllo, escapali usando la notazione Unicode (ad esempio, `\u001c` per il separatore di file) per evitare errori di runtime. + +### Considerazioni sulla licenza + +Eseguire il codice senza licenza genera una filigrana sulle immagini generate. Applica la tua licenza all'inizio di `Main`: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Passo 5: Consigli per l'uso in produzione + +* **Batch processing** – Avvolgi la logica di salvataggio in un ciclo che legge righe da un CSV o database; riutilizza la stessa istanza `BarcodeGenerator` per le prestazioni. +* **Thread safety** – `BarcodeGenerator` non è thread‑safe. Crea un'istanza separata per thread se parallelizzi la creazione dei codici a barre. +* **Error handling** – Racchiudi le chiamate `Save` in blocchi `try…catch` per catturare eccezioni I/O, specialmente quando scrivi su condivisioni di rete. + +## Conclusione + +Ora sai **how to save barcode** immagini in C# usando Aspose.BarCode, come **how to generate pdf417** simboli con emulazione Code 128, e come configurare un **barcode generator with code128** per più modalità. L'esempio completo e eseguibile dimostra ogni passo dalla configurazione del progetto ai file PNG finali. + +Successivamente, esplora argomenti correlati come **embedding barcodes in PDF documents**, **creating QR codes with custom colors**, o **integrating barcode generation into ASP.NET Core APIs**. Queste estensioni si basano sugli stessi principi trattati qui e ti permettono di automatizzare una vasta gamma di flussi di lavoro di scansione. + +## Cosa dovresti imparare dopo? + +I seguenti tutorial coprono argomenti strettamente correlati che si basano sulle tecniche dimostrate in questa guida. Ogni risorsa include esempi di codice completi e funzionanti con spiegazioni passo passo per aiutarti a padroneggiare funzionalità API aggiuntive ed esplorare approcci di implementazione alternativi nei tuoi progetti. + +- [Come generare codici a barre PDF417 – Codifica PDF417 compatta](/barcode/english/net/compact-pdf417-encoding/) +- [Come salvare PNG usando DataMatrix C40 con Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [Come generare codici a barre - Tipi di codici a barre unidimensionali](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/italian/net/one-dimensional-barcode-types/_index.md b/barcode/italian/net/one-dimensional-barcode-types/_index.md index dc08df975..1b2fef207 100644 --- a/barcode/italian/net/one-dimensional-barcode-types/_index.md +++ b/barcode/italian/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ guadagna come generare codici a barre in .NET con Aspose.BarCode per .NET. Quest Scopri come gestire le eccezioni durante la generazione di codici a barre unidimensionali utilizzando Aspose.BarCode per .NET. Questa guida passo passo garantisce soluzioni per codici a barre tolleranti agli errori. Inizia ora! ### [Configurazione unidimensionale del rapporto largo-stretto](./one-dimensional-wide-narrow-ratio-configuration/) Genera facilmente codici a barre personalizzati con Aspose.BarCode per .NET. Guida passo passo per la configurazione unidimensionale del rapporto largo-stretto. +### [Come impostare il codice a barre in C# – guida completa Aspose.BarCode](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Scopri come impostare e generare codici a barre in C# usando Aspose.BarCode con esempi dettagliati passo passo. ## Conclusione @@ -89,4 +91,4 @@ Con questo articolo non solo acquisirai conoscenze sui vari tipi di codici a bar {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/italian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/italian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..997d11321 --- /dev/null +++ b/barcode/italian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,163 @@ +--- +category: general +date: 2026-08-06 +description: Come impostare il codice a barre usando Aspose.BarCode in C#. Scopri + come modificare i caratteri macro e creare un'immagine di codice a barre in C# con + codice passo‑passo. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: it +lastmod: 2026-08-06 +og_description: Come impostare il codice a barre con Aspose.BarCode in C#. Questa + guida mostra come modificare i caratteri macro e creare rapidamente un’immagine + di codice a barre in C#. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: Come impostare il codice a barre in C# – tutorial Aspose.BarCode +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: Come impostare il codice a barre in C# – guida completa ad Aspose.BarCode +url: /it/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Come impostare il codice a barre in C# – guida completa ad Aspose.BarCode + +Se hai bisogno di **come impostare il codice a barre** in un'applicazione .NET, questo tutorial ti mostra i passaggi esatti usando Aspose.BarCode. Vedrai come modificare i caratteri macro, regolare i parametri visivi e **creare file immagine barcode C#** che possono essere salvati direttamente su disco. + +La guida copre tutto, dall'installazione della libreria alla generazione di due codici MicroPDF417 con valori macro diversi. Non è necessaria alcuna documentazione esterna—puoi copiare il codice, eseguirlo e verificare immediatamente l'output PNG. + +## Prerequisiti + +Prima di iniziare, assicurati di avere: + +* .NET 6.0 o successivo (l'esempio utilizza un progetto console) +* Visual Studio 2022 o qualsiasi IDE C# +* Una licenza attiva di Aspose.BarCode (una valutazione gratuita è sufficiente per i test) +* Conoscenze di base della sintassi C# + +Avrai inoltre bisogno del pacchetto NuGet: + +```bash +dotnet add package Aspose.BarCode +``` + +## Come impostare i parametri del barcode – passo 1: creare il generatore + +La prima azione è istanziare un `BarcodeGenerator` con la simbologia e i dati desiderati. Usare `EncodeTypes.MicroPdf417` indica ad Aspose.BarCode di produrre una variante compatta di PDF417. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Perché è importante:** `BarcodeGenerator` è l'oggetto centrale; tutte le impostazioni successive modificano la sua proprietà `Parameters`. Selezionare il corretto `EncodeTypes` garantisce che il codice a barre rispetti la specifica MicroPDF417. + +## Come cambiare i caratteri macro – passo 2: regolare i parametri visivi + +I caratteri macro sono codici di controllo opzionali che consentono di concatenare più simboli PDF417. L'esempio alterna tra `Macro05` e `Macro06`. Imposti anche la larghezza del modulo (`XDimension`) e il numero di colonne per controllare le dimensioni del codice a barre. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Perché cambiare il macro:** Il carattere macro indica allo scanner che questo codice a barre fa parte di un insieme di dati più ampio. Cambiarlo dimostra come gli stessi dati possano essere collegati a diversi identificatori macro. + +## Come impostare il barcode – passo 3: generare un secondo barcode con macro diversa + +Ora riutilizziamo la stessa istanza `generator`, cambiando solo il valore macro. Questo evita di ricreare l'oggetto e dimostra che **come impostare il barcode** può avvenire a runtime. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Output previsto + +L'esecuzione del programma crea due file PNG nella cartella del progetto: + +* `MicroPdf417_Macro05.png` – barcode con Macro05 +* `MicroPdf417_Macro06.png` – barcode con Macro06 + +Entrambe le immagini mostrano un simbolo MicroPDF417 compatto che codifica `12345ABC`. Puoi aprire i file PNG con qualsiasi visualizzatore di immagini per verificare la qualità visiva. + +## Best practice per il generatore di barcode in C# + +* **Riutilizza il generatore:** Modificare `Parameters` su un'istanza esistente è più efficiente che creare un nuovo generatore per ogni barcode. +* **Imposta X‑dimension early:** La larghezza del modulo influisce sulla dimensione complessiva dell'immagine; regolala prima di salvare. +* **Valida l'uso del macro:** Non tutti gli scanner supportano i caratteri macro. Testa con l'hardware di destinazione se prevedi di usarli in produzione. +* **Rilascia le risorse:** `BarcodeGenerator` implementa `IDisposable`. In un servizio a lungo termine, avvolgilo in un blocco `using` o chiama `Dispose()` al termine. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Creare immagine barcode C# – consigli di risoluzione problemi + +| Sintomo | Probabile causa | Correzione | +|--------------------------------------|----------------------------------------------|------------| +| File PNG vuoto | `XDimension` impostato a 0 o valore troppo alto | Usa una larghezza pixel ragionevole (1‑5) | +| Barcode illeggibile dallo scanner | Carattere macro errato per lo scanner | Verifica la documentazione dello scanner; usa `MacroNone` se non necessario | +| Eccezione `ArgumentOutOfRangeException` | Numero di colonne fuori dall'intervallo consentito (1‑30) | Mantieni `Columns` tra 1 e 30 | + +## Conclusione + +Ora sai **come impostare le proprietà del barcode**, **come cambiare i caratteri macro** e come **creare file immagine barcode C#** usando Aspose.BarCode. L'esempio completo e eseguibile dimostra l'intero flusso di lavoro, dalla creazione del generatore all'esportazione dell'immagine. + +Successivamente, esplora altre simbologie (`EncodeTypes.QR`, `EncodeTypes.Code128`) o incorpora il barcode direttamente nei PDF con Aspose.PDF. Entrambi gli argomenti rientrano nell'ecosistema più ampio del **barcode generator c#** e possono essere aggiunti a questo progetto con minime modifiche al codice. + +Buon coding e sentiti libero di sperimentare con valori macro, dimensioni e formati di output diversi! + +## Cosa dovresti imparare dopo? + +I tutorial seguenti trattano argomenti strettamente correlati che si basano sulle tecniche dimostrate in questa guida. Ogni risorsa include esempi di codice completi e funzionanti con spiegazioni passo‑passo per aiutarti a padroneggiare funzionalità aggiuntive dell'API e a esplorare approcci di implementazione alternativi nei tuoi progetti. + +- [How to create barcode quiet zone for Code 16K using Aspose.BarCode for .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [How to create dotcode extended codetext with Aspose.BarCode for .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [How to Set Border for ITF-14 Barcode Customization](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/japanese/net/compact-pdf417-encoding/_index.md b/barcode/japanese/net/compact-pdf417-encoding/_index.md index a3cc7ebe8..373be2859 100644 --- a/barcode/japanese/net/compact-pdf417-encoding/_index.md +++ b/barcode/japanese/net/compact-pdf417-encoding/_index.md @@ -86,6 +86,14 @@ Aspose.BarCode では `Pdf417ErrorCorrectionLevel` プロパティ(0‑8)を Aspose.BarCode for .NET を使用して Compact PDF417 バーコードを生成する方法を学びます。ステップバイステップの手順とコード例を含む包括的なガイドです。 +### [C# で PDF417 バーコードを生成する – バーコードジェネレータガイド](./generate-pdf417-barcode-in-c-barcode-generator-guide/) + +C# で Aspose.BarCode を使用し、PDF417 バーコードを生成する手順とコード例を紹介します。 + +### [C# でバーコード画像を保存する方法 – 完全ガイド](./how-to-save-barcode-images-in-c-complete-guide/) + +Aspose.BarCode を使用して、C# でバーコード画像を PNG、JPEG などの形式で保存する手順を詳しく解説します。 + ## よくある質問 **Q: Compact PDF417 バーコードに保存できる最大データ量はどれくらいですか?** @@ -114,4 +122,4 @@ A: 外部フォントは不要です。ライブラリが内部で全てのレ {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/japanese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/japanese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..42beb214e --- /dev/null +++ b/barcode/japanese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,112 @@ +--- +category: general +date: 2026-08-06 +description: C# のバーコードジェネレータを使用して PDF417 バーコードを生成する C# PDF417 チュートリアル。PDF417 バーコードの生成方法、バイナリモードの設定、PNG + への保存方法を学びましょう。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: ja +lastmod: 2026-08-06 +og_description: BarcodeGenerator を使用して C# で PDF417 バーコードを生成します。バイナリエンコーディングの設定、PDF417 + オプションの構成、そしてバーコードを PNG 画像として保存する方法を学びましょう。 +og_image_alt: Generate PDF417 barcode example +og_title: C#でPDF417バーコードを生成する – 完全なバーコードジェネレーターガイド +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: C#でPDF417バーコードを生成する – バーコードジェネレーターガイド +url: /ja/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# C# で PDF417 バーコードを生成 – バーコードジェネレータガイド + +.NET アプリケーションで **PDF417 バーコードを生成** する必要がある場合、このガイドで手順をすべて解説します。Aspose.BarCode ライブラリを使用すれば、バイナリデータをエンコードし、PDF417 エンコーダをバイナリモードに切り替え、数行の C# コードだけで高解像度 PNG 画像を出力できます。 + +このチュートリアルでは、NuGet パッケージのインストールから PDF417 設定のカスタマイズ、空データやサポート外文字といったエッジケースの処理まで網羅しています。最後まで読むと、任意の C# プロジェクトにそのまま組み込める完全な実行例が手に入ります。 + +**学べること** + +* バーコードジェネレータ C# PDF417 パッケージのインストールと参照方法。 +* エンコード用のバイナリデータの準備方法。 +* バイナリ PDF417 エンコード用に `BarcodeGenerator` を構成する方法。 +* 生成したバーコードを PNG ファイルとして保存し、結果を確認する手順。 + +> **前提条件** – .NET 6.0 以降、Visual Studio 2022(またはお好みの IDE)、そして NuGet パッケージを取得できるインターネット接続。 + +--- + +## 手順 1: Aspose.BarCode NuGet パッケージをインストール + +C# で PDF417 バーコードを扱う最も信頼できる方法は、**Aspose.BarCode** ライブラリを使用することです。このライブラリはバイナリエンコードをフルサポートしています。 + +```bash +dotnet add package Aspose.BarCode +``` + +*この手順の目的は?* +`BarcodeGenerator` クラスは `Aspose.BarCode` 名前空間にあります。パッケージを追加することで、コンパイル時に必要な DLL がすべて利用可能になり、最新のバグ修正やパフォーマンス向上も取得できます。 + +--- + +## 手順 2: 新しいコンソール プロジェクトを作成(任意だが推奨) + +コードを単体でテストしたい場合は、まず新しいコンソール アプリを作成します。 + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +プロジェクトにパッケージを追加します(手順 1 のコマンドをまだ実行していない場合は再度実行してください)。 + +--- + +## 手順 3: エンコードするバイナリ データを準備 + +PDF417 はエンコードモードを **Binary** に設定すると、生のバイト列をエンコードできます。以下はプロセスを示すシンプルなバイト配列です。 + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*なぜバイナリデータなのか?* +バイナリモードを使用すると、任意のバイトシーケンスを格納できるため、ファイル埋め込みや暗号鍵、プレーンテキストで表現できないカスタムペイロードに最適です。 + +--- + +## 手順 4: バーコードジェネレータを初期化し、PDF417 をバイナリモードに設定 + + + +--- + +## 次に学ぶべきこと + +以下のチュートリアルは、本ガイドで示した手法を応用した関連トピックを扱っています。各リソースには、ステップバイステップの解説と完全なコード例が含まれており、API の追加機能を習得したり、独自の実装アプローチを探求したりするのに役立ちます。 + +- [バーコードの作成方法 – Aspose.BarCode を使用したコンパクト PDF417](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [PDF417 バーコードの生成方法 – コンパクト PDF417 エンコーディング](/barcode/english/net/compact-pdf417-encoding/) +- [.NET 用 Aspose.BarCode でカスタムアスペクト比の Aztec バーコードを生成する方法](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/japanese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/japanese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..bb141a1e7 --- /dev/null +++ b/barcode/japanese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,232 @@ +--- +category: general +date: 2026-08-06 +description: MicroPdf417 と Code 128 エミュレーションを使用して C# でバーコード画像を保存する方法。PDF417 バーコードの生成方法と設定のカスタマイズを学びましょう。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: ja +lastmod: 2026-08-06 +og_description: MicroPdf417 と Code 128 エミュレーションを使用して、C# でバーコード画像を素早く保存する方法。このガイドに従って + PDF417 バーコードを生成し、出力をカスタマイズしましょう。 +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: C#でバーコード画像を保存する方法 – ステップバイステップガイド +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: C#でバーコード画像を保存する方法 – 完全ガイド +url: /ja/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# C# でバーコード画像を保存する方法 – 完全ガイド + +.NET アプリケーションで **how to save barcode** 画像を保存する必要がある場合、このチュートリアルではすぐに実行できるソリューションを示します。PDF417 バーコードの生成方法、Code 128 エミュレーションの適用方法、そして生成された PNG ファイルをディスクに書き込む方法を学びます。 + +この例では Aspose.BarCode for .NET ライブラリを使用しています。このライブラリは MicroPdf417、Code 128、その他多数の規格をサポートしています。ガイドの最後までに、モード 908、 909、 910、 911 用のバーコードファイルを作成でき、最適なスキャンのために視覚パラメータを調整する方法が理解できるようになります。 + +## 前提条件 + +* .NET 6.0 SDK 以降がインストールされていること +* Visual Studio 2022(または C# をサポートする任意の IDE) +* 有効な Aspose.BarCode for .NET ライセンス(開発用には無料トライアルで可) + +このチュートリアルは、C# コンソールプロジェクトの基本的な知識があることを前提としています。 + +## 手順 1: 新しいコンソールプロジェクトを作成し、BarCode パッケージを追加する + +ターミナルを開き、以下のコマンドを実行します: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +`dotnet add package` コマンドは最新の Aspose.BarCode ライブラリをダウンロードし、**how to generate pdf417** バーコードを生成するために必要なクラスが含まれています。 + +## 手順 2: 完全なプログラムを書く + +`Program.cs` という名前のファイルを作成(既存のものを置き換えて)し、以下のコードを貼り付けます。このプログラムは **barcode generator with code128** エミュレーションを示し、**how to save barcode** 画像を保存する複数の方法を紹介します。 + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### このコードが機能する理由 + +* **Single generator instance** – `BarcodeGenerator` を再利用することで、メモリ割り当ての繰り返しを防ぎ、モード間で設定を一貫させます。 +* **XDimension** – ピクセルサイズを 2 に設定すると、ファイルサイズを増やさずに鮮明で読みやすい画像が得られます。 +* **IsCode128Emulation** – PDF417 シンボル内で Code 128 スタイルのバー パターンを有効にし、一部のスキャナがより確実に読み取れるようにします。 +* **Save method** – 表示されている `Save` のオーバーロードは **how to save barcode** ファイルを保存する標準的な方法で、指定した形式で画像を直接ファイルシステムに書き込みます。 + +## 手順 3: プログラムを実行し、出力を確認する + +プロジェクトをビルドして実行します: + +```bash +dotnet run +``` + +コンソールに確認メッセージが表示されたら、`outputPath` で指定したフォルダーを開きます。4 つの PNG ファイルがあるはずです: + +* `MicroPdf417_Code128_908.png` – FNC1 + 英数字インジケータ +* `MicroPdf417_Code128_909.png` – FNC1 + 数字インジケータ +* `MicroPdf417_Code128_910.png` – 純粋な Code 128 ペイロード + +各画像は標準的なバーコードリーダでスキャン可能な MicroPdf417 シンボルを含んでいます。スキャナがファイルを読み取れない場合は、`XDimension.Pixels` を増やすか、`Pdf417.Columns` を調整して対象デバイスの解像度に合わせてください。 + +## 手順 4: 一般的なバリエーションとエッジケース + +### 画像形式の変更 + +`BarCodeImageFormat` 列挙体は PNG、JPEG、BMP、TIFF をサポートしています。Web 配信でファイルサイズを小さくしたい場合は、`BarCodeImageFormat.Png` を `BarCodeImageFormat.Jpeg` に置き換えてください。 + +### MicroPdf417 の代わりにフルサイズ PDF417 を生成する + +より大きな PDF417 標準が必要な場合は、`EncodeTypes.Pdf417` でジェネレータをインスタンス化します: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +ISO/IEC 15417 の仕様に合わせて `Pdf417.Rows` と `Pdf417.Columns` を調整することを忘れないでください。 + +### 特殊文字の取り扱い + +グループ区切り文字 (`\u001d`) はアプリケーション識別子に必須です。データに他の制御文字が含まれる場合は、Unicode 表記(例: ファイル区切り文字の `\u001c`)でエスケープし、実行時エラーを防いでください。 + +### ライセンスに関する考慮事項 + +ライセンスなしでコードを実行すると、生成された画像に透かしが入ります。`Main` 内で早めにライセンスを適用してください: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## 手順 5: 本番環境での使用に関するヒント + +* **Batch processing** – CSV やデータベースから行を読み取るループで保存ロジックをラップし、パフォーマンス向上のため同じ `BarcodeGenerator` インスタンスを再利用します。 +* **Thread safety** – `BarcodeGenerator` はスレッドセーフではありません。バーコード生成を並列化する場合は、スレッドごとに別々のインスタンスを作成してください。 +* **Error handling** – `Save` 呼び出しを `try…catch` ブロックで囲み、特にネットワーク共有への書き込み時に I/O 例外を捕捉します。 + +## 結論 + +これで、Aspose.BarCode を使用して C# で **how to save barcode** 画像を保存する方法、Code 128 エミュレーションで **how to generate pdf417** シンボルを生成する方法、そして複数モード向けに **barcode generator with code128** を構成する方法が分かりました。完全で実行可能なサンプルは、プロジェクトの設定から最終的な PNG ファイルまでのすべての手順を示しています。 + +次に、**embedding barcodes in PDF documents**、**creating QR codes with custom colors**、**integrating barcode generation into ASP.NET Core APIs** などの関連トピックを探求してください。これらの拡張は本稿で扱った原則に基づいており、さまざまなスキャンワークフローを自動化できます。 + +## 次に学ぶべきことは? + +以下のチュートリアルは、本ガイドで示した手法を基にした密接に関連するトピックを取り上げています。各リソースには、ステップバイステップの解説付きの完全なコード例が含まれており、追加の API 機能を習得し、プロジェクトで代替実装アプローチを検討するのに役立ちます。 + +- [PDF417 バーコードの生成方法 – コンパクト PDF417 エンコーディング](/barcode/english/net/compact-pdf417-encoding/) +- [Aspose.BarCode を使用した DataMatrix C40 の PNG 保存方法](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [バーコードの生成方法 – 1 次元バーコードタイプ](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/japanese/net/one-dimensional-barcode-types/_index.md b/barcode/japanese/net/one-dimensional-barcode-types/_index.md index 5127ab85a..0dfe753d0 100644 --- a/barcode/japanese/net/one-dimensional-barcode-types/_index.md +++ b/barcode/japanese/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ Aspose.BarCode for .NET を使用して .NET でバーコードを生成する Aspose.BarCode for .NET を使用して 1 次元バーコードを生成する際に例外を処理する方法を学びます。このステップバイステップのガイドは、エラー耐性のあるバーコード ソリューションを保証します。今すぐ始めましょう! ### [1 次元のワイド/ナロー比構成](./one-dimensional-wide-narrow-ratio-configuration/) Aspose.BarCode for .NET を使用して、カスタマイズされたバーコードを簡単に生成します。 1 次元のワイド/ナロー比構成のステップバイステップ ガイド。 +### [C# でバーコードを設定する方法 – 完全な Aspose.BarCode ガイド](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Aspose.BarCode を使用して C# でバーコードを設定する手順をステップバイステップで解説します。 ## 結論 @@ -89,4 +91,4 @@ Aspose.BarCode for .NET を使用して、カスタマイズされたバーコ {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/japanese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/japanese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..1118c11d3 --- /dev/null +++ b/barcode/japanese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,159 @@ +--- +category: general +date: 2026-08-06 +description: C#で Aspose.BarCode を使用してバーコードを設定する方法。マクロ文字の変更方法と、ステップバイステップのコードでバーコード画像を作成する方法を学びます。 +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: ja +lastmod: 2026-08-06 +og_description: C#でAspose.BarCodeを使用してバーコードを設定する方法。このガイドでは、マクロ文字の変更方法と、C#でバーコード画像を迅速に作成する手順を示します。 +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: C#でバーコードを設定する方法 – Aspose.BarCodeチュートリアル +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: C#でバーコードを設定する方法 – 完全なAspose.BarCodeガイド +url: /ja/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# C# でバーコードを設定する方法 – 完全な Aspose.BarCode ガイド + +.NET アプリケーションで **バーコードの設定方法** が必要な場合、本チュートリアルでは Aspose.BarCode を使用した正確な手順を示します。マクロ文字の変更、視覚パラメータの調整、**C# でバーコード画像を作成** してディスクに直接保存する方法が分かります。 + +このガイドは、ライブラリのインストールから異なるマクロ値を持つ 2 つの MicroPDF417 バーコードの生成までを網羅しています。外部ドキュメントは不要で、コードをコピーして実行すれば PNG 出力をすぐに確認できます。 + +## 前提条件 + +開始する前に、以下を確認してください。 + +* .NET 6.0 以降(サンプルはコンソールプロジェクトを使用) +* Visual Studio 2022 または任意の C# IDE +* 有効な Aspose.BarCode ライセンス(評価版でもテストは可能) +* C# の基本構文に関する知識 + +また、以下の NuGet パッケージが必要です。 + +```bash +dotnet add package Aspose.BarCode +``` + +## バーコードパラメータの設定方法 – 手順 1: ジェネレータの作成 + +最初の操作は、目的のシンボルとデータを指定して `BarcodeGenerator` のインスタンスを作成することです。`EncodeTypes.MicroPdf417` を使用すると、Aspose.BarCode はコンパクトな PDF417 バリアントを生成します。 + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**重要ポイント:** `BarcodeGenerator` は中心的なオブジェクトで、以降のすべての設定はその `Parameters` プロパティを介して行われます。正しい `EncodeTypes` を選択することで、バーコードが MicroPDF417 仕様に準拠します。 + +## マクロ文字の変更方法 – 手順 2: 視覚パラメータの調整 + +マクロ文字は、複数の PDF417 シンボルを連結できるオプションの制御コードです。サンプルでは `Macro05` と `Macro06` を切り替えています。また、モジュール幅(`XDimension`)や列数を設定してバーコードのサイズを制御します。 + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**マクロを変更する理由:** マクロ文字はスキャナに対して「このバーコードはより大きなデータセットの一部です」と伝える役割を果たします。異なるマクロ識別子にリンクできることを示すために切り替えています。 + +## バーコードの設定方法 – 手順 3: 別のマクロで 2 番目のバーコードを生成 + +ここでは同じ `generator` インスタンスを再利用し、マクロ値だけを入れ替えます。オブジェクトを再作成せずに済むため、**バーコードの設定方法** が実行時に変更できることを示しています。 + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### 期待される出力 + +プログラムを実行すると、プロジェクトフォルダに 2 つの PNG ファイルが作成されます。 + +* `MicroPdf417_Macro05.png` – Macro05 を使用したバーコード +* `MicroPdf417_Macro06.png` – Macro06 を使用したバーコード + +どちらの画像も `12345ABC` をエンコードしたコンパクトな MicroPDF417 シンボルを表示します。任意の画像ビューアで PNG ファイルを開き、視覚的品質を確認してください。 + +## Barcode generator C# ベストプラクティス + +* **ジェネレータを再利用する:** 既存インスタンスの `Parameters` を変更する方が、バーコードごとに新しいジェネレータを作成するより効率的です。 +* **X‑dimension を早めに設定する:** モジュール幅は画像全体のサイズに影響するため、保存前に調整してください。 +* **マクロ使用を検証する:** すべてのスキャナがマクロ文字に対応しているわけではありません。実運用で使用する場合は対象ハードウェアでテストしましょう。 +* **リソースを破棄する:** `BarcodeGenerator` は `IDisposable` を実装しています。長時間稼働するサービスでは `using` ブロックで囲むか、使用後に `Dispose()` を呼び出してください。 + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Create barcode image C# – トラブルシューティングのヒント + +| 症状 | 主な原因 | 対策 | +|--------------------------------------|---------------------------------------------------|------| +| 空の PNG ファイル | `XDimension` が 0 または極端に大きい値に設定されている | 適切なピクセル幅 (1‑5) を使用する | +| スキャナでバーコードが読めない | スキャナに合わないマクロ文字が設定されている | スキャナのマニュアルを確認し、不要なら `MacroNone` を使用 | +| `ArgumentOutOfRangeException` 例外 | 列数が許容範囲 (1‑30) を超えている | `Columns` を 1 から 30 の間に収める | + +## 結論 + +これで **バーコードの設定方法**、**マクロ文字の変更方法**、そして Aspose.BarCode を使った **C# でバーコード画像を作成** する手順が理解できました。完全に実行可能なサンプルは、ジェネレータ作成から画像エクスポートまでの全ワークフローを示しています。 + +次は、他のシンボル(`EncodeTypes.QR`、`EncodeTypes.Code128`)を試したり、Aspose.PDF と組み合わせてバーコードを PDF に直接埋め込んだりしてみましょう。これらのトピックは広範な **barcode generator c#** エコシステムの一部であり、最小限のコード変更でプロジェクトに追加できます。 + +コーディングを楽しんで、さまざまなマクロ値、寸法、出力形式で実験してみてください! + +## 次に学ぶべきこと + +以下のチュートリアルは、本ガイドで示したテクニックを基にした、密接に関連するトピックをカバーしています。各リソースには、ステップバイステップの解説と完全な動作コード例が含まれており、API の追加機能を習得したり、独自プロジェクトで代替実装アプローチを探求したりするのに役立ちます。 + +- [Aspose.BarCode for .NET を使用した Code 16K の静音領域の作成方法](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [Aspose.BarCode for .NET を使用した dotcode の拡張コードテキストの作成方法](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [ITF-14 バーコードのカスタマイズ用ボーダー設定方法](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/korean/net/compact-pdf417-encoding/_index.md b/barcode/korean/net/compact-pdf417-encoding/_index.md index 0ecfa04d3..8646c93c5 100644 --- a/barcode/korean/net/compact-pdf417-encoding/_index.md +++ b/barcode/korean/net/compact-pdf417-encoding/_index.md @@ -86,6 +86,12 @@ Aspose.BarCode는 `Pdf417ErrorCorrectionLevel` 속성(0‑8)을 설정할 수 ### [Compact PDF417 바코드 만들기](./compact-pdf417-basic-configuration/) Aspose.BarCode for .NET를 사용해 Compact PDF417 바코드를 생성하는 방법을 배웁니다. 단계별 지침과 코드 예제가 포함된 포괄적인 가이드입니다. +### [C#에서 PDF417 바코드 생성 – 바코드 생성기 가이드](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +Aspose.BarCode for .NET를 사용해 C#에서 PDF417 바코드를 생성하는 방법을 단계별로 안내합니다. + +### [C#에서 바코드 이미지 저장하기 – 완전 가이드](./how-to-save-barcode-images-in-c-complete-guide/) +Aspose.BarCode for .NET를 사용해 C#에서 바코드 이미지를 저장하는 전체 가이드를 제공합니다. + ## 자주 묻는 질문 **Q: Compact PDF417 바코드에 저장할 수 있는 최대 데이터 양은?** @@ -114,4 +120,4 @@ A: 외부 폰트가 필요하지 않으며, 라이브러리가 내부적으로 {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/korean/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/korean/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..de696bfc6 --- /dev/null +++ b/barcode/korean/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,110 @@ +--- +category: general +date: 2026-08-06 +description: 바코드 생성기를 사용하여 C#에서 PDF417 바코드를 생성하세요. C# PDF417 튜토리얼. PDF417 바코드 생성 방법, + 바이너리 모드 설정 및 PNG로 저장하는 방법을 배워보세요. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: ko +lastmod: 2026-08-06 +og_description: BarcodeGenerator를 사용하여 C#에서 PDF417 바코드를 생성합니다. 이진 인코딩 설정, PDF417 옵션 + 구성 및 바코드를 PNG 이미지로 저장하는 방법을 배워보세요. +og_image_alt: Generate PDF417 barcode example +og_title: C#에서 PDF417 바코드 생성 – 전체 바코드 생성 가이드 +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: C#에서 PDF417 바코드 생성 – 바코드 생성 가이드 +url: /ko/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# C#에서 PDF417 바코드 생성 – 바코드 생성기 가이드 + +.NET 애플리케이션에서 **PDF417 바코드**를 생성해야 한다면, 이 가이드는 정확히 어떻게 하는지 보여줍니다. Aspose.BarCode 라이브러리를 사용하면 바이너리 데이터를 인코딩하고, PDF417 인코더를 바이너리 모드로 전환하며, 몇 줄의 C# 코드만으로 고해상도 PNG 이미지를 출력할 수 있습니다. + +이 튜토리얼은 NuGet 패키지 설치부터 PDF417 설정 커스터마이징, 빈 데이터나 지원되지 않는 문자와 같은 예외 상황 처리까지 모두 다룹니다. 가이드를 끝까지 따라 하면 어떤 C# 프로젝트에도 바로 넣어 사용할 수 있는 완전한 실행 예제를 얻게 됩니다. + +**배우게 될 내용** + +* C# PDF417 바코드 생성 패키지 설치 및 참조하기. +* 인코딩할 바이너리 데이터 준비하기. +* `BarcodeGenerator`를 바이너리 PDF417 인코딩으로 구성하기. +* 생성된 바코드를 PNG 파일로 저장하고 결과 확인하기. + +> **전제 조건** – .NET 6.0 이상, Visual Studio 2022(또는 선호하는 IDE), 그리고 NuGet 패키지를 가져올 인터넷 연결. + +--- + +## Step 1: Aspose.BarCode NuGet 패키지 설치 + +C#에서 PDF417 바코드를 다루는 가장 신뢰할 수 있는 방법은 **Aspose.BarCode** 라이브러리를 사용하는 것입니다. 이 라이브러리는 바이너리 인코딩을 완벽히 지원합니다. + +```bash +dotnet add package Aspose.BarCode +``` + +*왜 이 단계가 필요한가?* +`BarcodeGenerator` 클래스는 `Aspose.BarCode` 네임스페이스에 존재합니다. 패키지를 추가하면 컴파일 시 필요한 모든 DLL이 제공되고 최신 버그 수정 및 성능 향상을 받을 수 있습니다. + +--- + +## Step 2: 새 콘솔 프로젝트 만들기 (선택 사항이지만 권장) + +코드를 격리된 환경에서 테스트하려면 새 콘솔 앱을 시작합니다. + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +프로젝트에 패키지를 추가합니다(아직 추가하지 않았다면 Step 1의 명령을 다시 실행하세요). + +--- + +## Step 3: 인코딩할 바이너리 데이터 준비 + +PDF417은 인코드 모드를 **Binary**로 설정하면 원시 바이트를 인코딩할 수 있습니다. 아래는 과정을 보여주는 간단한 바이트 배열 예시입니다. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*왜 바이너리 데이터를 사용하는가?* +바이너리 모드를 사용하면 어떤 바이트 시퀀스든 저장할 수 있어 파일, 암호 키, 일반 텍스트가 아닌 사용자 정의 페이로드 등을 삽입할 때 유용합니다. + +--- + +## Step 4: 바코드 생성기 초기화 및 PDF417을 바이너리 모드로 구성 + + + +## What Should You Learn Next? + +다음 튜토리얼들은 이 가이드에서 다룬 기술을 기반으로 하여 관련 주제를 자세히 설명합니다. 각 리소스에는 단계별 설명과 완전한 코드 예제가 포함되어 있어 추가 API 기능을 마스터하고 프로젝트에 다양한 구현 방식을 적용하는 데 도움이 됩니다. + +- [바코드 만들기 – Aspose.BarCode를 사용한 Compact PDF417](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [PDF417 바코드 생성 – Compact PDF417 인코딩](/barcode/english/net/compact-pdf417-encoding/) +- [Aspose.BarCode for .NET을 사용한 사용자 지정 종횡비 Aztec 바코드 생성](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/korean/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/korean/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..e600cd01c --- /dev/null +++ b/barcode/korean/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,235 @@ +--- +category: general +date: 2026-08-06 +description: MicroPdf417와 Code 128 에뮬레이션을 사용하여 C#에서 바코드 이미지를 저장하는 방법. PDF417 바코드를 + 생성하고 설정을 사용자 정의하는 방법을 배워보세요. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: ko +lastmod: 2026-08-06 +og_description: MicroPdf417와 Code 128 에뮬레이션을 사용하여 C#에서 바코드 이미지를 빠르게 저장하는 방법. 이 가이드를 + 따라 PDF417 바코드를 생성하고 출력물을 맞춤 설정하세요. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: C#에서 바코드 이미지를 저장하는 방법 – 단계별 가이드 +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: C#에서 바코드 이미지를 저장하는 방법 – 완전 가이드 +url: /ko/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# C#에서 바코드 이미지를 저장하는 방법 – 완전 가이드 + +.NET 애플리케이션에서 **바코드 이미지를 저장하는 방법**이 필요하다면, 이 튜토리얼은 바로 실행할 수 있는 솔루션을 보여줍니다. PDF417 바코드 생성, Code 128 에뮬레이션 적용, 그리고 결과 PNG 파일을 디스크에 쓰는 방법을 배울 수 있습니다. + +예제는 Aspose.BarCode for .NET 라이브러리를 사용합니다. 이 라이브러리는 MicroPdf417, Code 128 및 기타 많은 표준을 지원합니다. 가이드를 마치면 Modes 908, 909, 910, 911에 대한 바코드 파일을 생성할 수 있으며, 최적의 스캔을 위해 시각적 파라미터를 조정하는 방법을 이해하게 됩니다. + +## Prerequisites + +시작하기 전에 다음이 설치되어 있는지 확인하세요: + +* .NET 6.0 SDK 이상 +* Visual Studio 2022 (또는 C#를 지원하는 IDE) +* 활성화된 Aspose.BarCode for .NET 라이선스 (개발용 무료 체험판 사용 가능) + +이 튜토리얼은 C# 콘솔 프로젝트에 대한 기본적인 이해를 전제로 합니다. + +## Step 1: Create a new console project and add the BarCode package + +터미널을 열고 다음 명령을 실행합니다: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +`dotnet add package` 명령은 최신 Aspose.BarCode 라이브러리를 다운로드하며, 여기에는 **pdf417 생성 방법**에 필요한 클래스가 포함됩니다. + +## Step 2: Write the complete program + +`Program.cs` 파일을 만들고(기존 파일을 교체) 아래 코드를 붙여넣으세요. 이 프로그램은 **code128이 포함된 바코드 생성기**를 시연하고 여러 방법으로 **바코드 이미지를 저장하는 방법**을 보여줍니다. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Why this code works + +* **Single generator instance** – `BarcodeGenerator`를 재사용하면 메모리 할당을 반복하지 않아 모드 간 설정이 일관됩니다. +* **XDimension** – 픽셀 크기를 2로 설정하면 파일 크기를 크게 늘리지 않으면서도 선명하고 읽기 쉬운 이미지를 얻을 수 있습니다. +* **IsCode128Emulation** – PDF417 심볼 내부에 Code 128 스타일 바 패턴을 활성화하여 일부 스캐너가 더 신뢰성 있게 해석하도록 합니다. +* **Save method** – 보이는 `Save` 오버로드는 **바코드 이미지를 저장하는 방법**의 정석이며, 지정한 형식으로 이미지를 파일 시스템에 직접 씁니다. + +## Step 3: Run the program and verify the output + +프로젝트를 빌드하고 실행합니다: + +```bash +dotnet run +``` + +콘솔에 확인 메시지가 출력된 후 `outputPath`에 지정한 폴더를 열면 네 개의 PNG 파일이 보일 것입니다: + +* `MicroPdf417_Code128_908.png` – FNC1 + 영숫자 표시기 +* `MicroPdf417_Code128_909.png` – FNC1 + 숫자 표시기 +* `MicroPdf417_Code128_910.png` – 순수 Code 128 페이로드 + +각 이미지는 표준 바코드 리더기로 스캔 가능한 MicroPdf417 심볼을 포함합니다. 스캐너가 파일을 읽지 못한다면 `XDimension.Pixels`를 늘리거나 `Pdf417.Columns`를 조정해 대상 장치의 해상도에 맞추세요. + +## Step 4: Common variations and edge cases + +### Changing the image format + +`BarCodeImageFormat` 열거형은 PNG, JPEG, BMP, TIFF를 지원합니다. 웹 전송을 위해 파일 크기를 줄여야 하면 `BarCodeImageFormat.Png`를 `BarCodeImageFormat.Jpeg`로 교체하세요. + +### Generating a full‑size PDF417 instead of MicroPdf417 + +더 큰 PDF417 표준이 필요하면 `EncodeTypes.Pdf417`로 생성자를 호출합니다: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +ISO/IEC 15417 사양을 충족하도록 `Pdf417.Rows`와 `Pdf417.Columns`를 조정하는 것을 잊지 마세요. + +### Handling special characters + +응용 프로그램 식별자를 위해 그룹 구분자(`\u001d`)가 필요합니다. 데이터에 다른 제어 문자가 포함된 경우 Unicode 표기법(예: 파일 구분자 `\u001c`)으로 이스케이프하여 런타임 오류를 방지하세요. + +### License considerations + +라이선스 없이 코드를 실행하면 생성된 이미지에 워터마크가 표시됩니다. `Main` 초기에 라이선스를 적용하세요: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Step 5: Tips for production use + +* **Batch processing** – CSV 또는 데이터베이스에서 행을 읽어 저장 로직을 루프에 감싸고, 성능을 위해 동일한 `BarcodeGenerator` 인스턴스를 재사용하세요. +* **Thread safety** – `BarcodeGenerator`는 스레드 안전하지 않습니다. 병렬 처리 시 스레드당 별도 인스턴스를 생성하세요. +* **Error handling** – 특히 네트워크 공유에 쓸 때 I/O 예외를 포착하도록 `Save` 호출을 `try…catch` 블록으로 감싸세요. + +## Conclusion + +이제 Aspose.BarCode를 사용해 C#에서 **바코드 이미지를 저장하는 방법**, **pdf417 심볼을 Code 128 에뮬레이션과 함께 생성하는 방법**, 그리고 여러 모드에 대해 **code128이 포함된 바코드 생성기**를 구성하는 방법을 알게 되었습니다. 완전하고 실행 가능한 예제는 프로젝트 설정부터 최종 PNG 파일까지 모든 단계를 보여줍니다. + +다음으로 **PDF 문서에 바코드 삽입**, **맞춤 색상의 QR 코드 생성**, **ASP.NET Core API에 바코드 생성 통합**과 같은 관련 주제를 살펴보세요. 이러한 확장은 여기서 다룬 원리를 기반으로 하며 다양한 스캔 워크플로를 자동화할 수 있게 해줍니다. + +## What Should You Learn Next? + +다음 튜토리얼은 이 가이드에서 시연한 기술을 기반으로 하여 밀접하게 관련된 주제를 다룹니다. 각 자료에는 단계별 설명과 완전한 코드 예제가 포함되어 있어 추가 API 기능을 마스터하고 프로젝트에 다양한 구현 방식을 적용하는 데 도움이 됩니다. + +- [PDF417 바코드 생성 – Compact PDF417 인코딩](/barcode/english/net/compact-pdf417-encoding/) +- [Aspose.BarCode를 사용한 DataMatrix C40으로 PNG 저장](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [바코드 생성 – 일차원 바코드 유형](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/korean/net/one-dimensional-barcode-types/_index.md b/barcode/korean/net/one-dimensional-barcode-types/_index.md index 5196c2e2a..1064e6e1e 100644 --- a/barcode/korean/net/one-dimensional-barcode-types/_index.md +++ b/barcode/korean/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ Aspose.BarCode를 사용하여 .NET에서 Databar GS1 인코딩 바코드를 만 .NET용 Aspose.BarCode를 사용하여 1차원 바코드를 생성하는 동안 예외를 처리하는 방법을 알아보세요. 이 단계별 가이드는 오류 방지 바코드 솔루션을 보장합니다. 지금 시작하세요! ### [1차원 광폭-협폭 구성](./one-dimensional-wide-narrow-ratio-configuration/) .NET용 Aspose.BarCode를 사용하여 맞춤형 바코드를 쉽게 생성하세요. 1차원 광폭-협폭 비율 구성을 위한 단계별 가이드입니다. +### [C#에서 바코드 설정 방법 – 완전한 Aspose.BarCode 가이드](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Aspose.BarCode를 사용하여 C#에서 바코드를 설정하고 활용하는 전체 가이드를 확인하세요. ## 결론 @@ -89,4 +91,4 @@ Aspose.BarCode를 사용하여 .NET에서 Databar GS1 인코딩 바코드를 만 {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/korean/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/korean/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..a64672ac0 --- /dev/null +++ b/barcode/korean/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,161 @@ +--- +category: general +date: 2026-08-06 +description: C#에서 Aspose.BarCode를 사용하여 바코드를 설정하는 방법. 매크로 문자를 변경하고 단계별 코드로 바코드 이미지를 + 생성하는 방법을 배워보세요. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: ko +lastmod: 2026-08-06 +og_description: C#에서 Aspose.BarCode를 사용하여 바코드를 설정하는 방법. 이 가이드는 매크로 문자를 변경하고 C#으로 바코드 + 이미지를 빠르게 생성하는 방법을 보여줍니다. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: C#에서 바코드 설정 방법 – Aspose.BarCode 튜토리얼 +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: C#에서 바코드 설정 방법 – 완전한 Aspose.BarCode 가이드 +url: /ko/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# C#에서 바코드 설정하기 – 완전한 Aspose.BarCode 가이드 + +.NET 애플리케이션에서 **how to set barcode**가 필요하다면, 이 튜토리얼은 Aspose.BarCode를 사용한 정확한 단계들을 보여줍니다. 매크로 문자를 변경하고, 시각 매개변수를 조정하며, 디스크에 직접 저장할 수 있는 **create barcode image C#** 파일을 만드는 방법을 확인할 수 있습니다. + +이 가이드는 라이브러리 설치부터 서로 다른 매크로 값을 가진 두 개의 MicroPDF417 바코드 생성까지 모든 과정을 다룹니다. 별도의 외부 문서는 필요하지 않으며, 코드를 복사해 실행하고 PNG 출력 결과를 즉시 확인할 수 있습니다. + +## 필수 조건 + +시작하기 전에 다음이 준비되어 있어야 합니다: + +* .NET 6.0 이상 (예제는 콘솔 프로젝트 사용) +* Visual Studio 2022 또는 기타 C# IDE +* 활성화된 Aspose.BarCode 라이선스 (무료 평가판으로 테스트 가능) +* C# 구문에 대한 기본 지식 + +또한 NuGet 패키지가 필요합니다: + +```bash +dotnet add package Aspose.BarCode +``` + +## 바코드 매개변수 설정 방법 – 단계 1: 생성기 만들기 + +첫 번째 작업은 원하는 심볼과 데이터를 사용해 `BarcodeGenerator` 인스턴스를 생성하는 것입니다. `EncodeTypes.MicroPdf417`을 사용하면 Aspose.BarCode가 압축된 PDF417 변형을 생성합니다. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Why this matters:** `BarcodeGenerator`는 핵심 객체이며, 이후 모든 설정은 해당 객체의 `Parameters` 속성을 통해 변경됩니다. 올바른 `EncodeTypes`를 선택하면 바코드가 MicroPDF417 사양을 따르게 됩니다. + +## 매크로 문자 변경 방법 – 단계 2: 시각 매개변수 조정 + +매크로 문자는 여러 PDF417 심볼을 연결할 수 있게 해 주는 선택적 제어 코드입니다. 예제에서는 `Macro05`와 `Macro06` 사이를 전환합니다. 또한 모듈 폭(`XDimension`)과 열 수를 설정해 바코드 크기를 제어합니다. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Why you change the macro:** 매크로 문자는 스캐너에 해당 바코드가 더 큰 데이터 세트의 일부임을 알립니다. 매크로를 전환함으로써 동일한 데이터를 서로 다른 매크로 식별자와 연결할 수 있음을 보여줍니다. + +## 바코드 설정 방법 – 단계 3: 다른 매크로로 두 번째 바코드 생성 + +이제 동일한 `generator` 인스턴스를 재사용하고 매크로 값만 교체합니다. 객체를 새로 만들 필요가 없으며, **how to set barcode** 매개변수를 런타임에 변경할 수 있음을 보여줍니다. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Expected output + +프로그램을 실행하면 프로젝트 폴더에 두 개의 PNG 파일이 생성됩니다: + +* `MicroPdf417_Macro05.png` – Macro05가 적용된 바코드 +* `MicroPdf417_Macro06.png` – Macro06가 적용된 바코드 + +두 이미지 모두 `12345ABC`를 인코딩한 압축된 MicroPDF417 심볼을 표시합니다. PNG 파일을 이미지 뷰어로 열어 시각적 품질을 확인할 수 있습니다. + +## Barcode generator C# 모범 사례 + +* **Reuse the generator:** 기존 인스턴스의 `Parameters`를 변경하는 것이 각 바코드마다 새 생성기를 만드는 것보다 효율적입니다. +* **Set X‑dimension early:** 모듈 폭은 전체 이미지 크기에 영향을 미치므로 저장하기 전에 먼저 조정하십시오. +* **Validate macro usage:** 모든 스캐너가 매크로 문자를 지원하는 것은 아닙니다. 프로덕션에 적용하기 전 대상 하드웨어에서 테스트하세요. +* **Dispose resources:** `BarcodeGenerator`는 `IDisposable`을 구현합니다. 장기 실행 서비스에서는 `using` 블록으로 감싸거나 사용이 끝난 후 `Dispose()`를 호출하십시오. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Create barcode image C# – 문제 해결 팁 + +| 증상 | 가능한 원인 | 해결 방법 | +|------|------------|----------| +| 빈 PNG 파일 | `XDimension`이 0이거나 너무 큰 값으로 설정됨 | 적절한 픽셀 폭(1‑5) 사용 | +| 스캐너가 바코드를 읽지 못함 | 스캐너에 맞지 않는 매크로 문자 사용 | 스캐너 문서를 확인하고 필요 없으면 `MacroNone` 사용 | +| 예외 `ArgumentOutOfRangeException` | 열 수가 허용 범위(1‑30) 밖임 | `Columns` 값을 1~30 사이로 유지 | + +## 결론 + +이제 Aspose.BarCode를 사용해 **how to set barcode** 속성, **how to change macro** 문자, 그리고 **create barcode image C#** 파일을 만드는 방법을 알게 되었습니다. 완전하고 실행 가능한 예제는 생성기 생성부터 이미지 내보내기까지 전체 워크플로우를 보여줍니다. + +다음으로 다른 심볼(`EncodeTypes.QR`, `EncodeTypes.Code128`)을 탐색하거나 Aspose.PDF를 사용해 바코드를 PDF에 직접 삽입해 보세요. 두 주제 모두 더 넓은 **barcode generator c#** 생태계에 속하며 최소한의 코드 변경으로 프로젝트에 추가할 수 있습니다. + +행복한 코딩 되시길 바라며, 다양한 매크로 값, 차원, 출력 형식을 자유롭게 실험해 보세요! + +## 다음에 배울 내용은? + +다음 튜토리얼들은 이 가이드에서 시연한 기술을 기반으로 하는 밀접한 주제를 다룹니다. 각 리소스는 완전한 코드 예제와 단계별 설명을 포함하고 있어 추가 API 기능을 마스터하고 프로젝트에 적용할 수 있는 대체 구현 방식을 탐색하는 데 도움이 됩니다. + +- [Aspose.BarCode for .NET를 사용하여 Code 16K용 바코드 조용 영역 만들기](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [Aspose.BarCode for .NET를 사용하여 dotcode 확장 코드텍스트 만들기](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [ITF-14 바코드 사용자 정의를 위한 테두리 설정 방법](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/polish/net/compact-pdf417-encoding/_index.md b/barcode/polish/net/compact-pdf417-encoding/_index.md index 90d161b27..3d737a1cb 100644 --- a/barcode/polish/net/compact-pdf417-encoding/_index.md +++ b/barcode/polish/net/compact-pdf417-encoding/_index.md @@ -86,7 +86,9 @@ Poza podstawami, oto kilka praktycznych wskazówek, które usprawnią Twój prze ### [Tworzenie kodów Compact PDF417](./compact-pdf417-basic-configuration/) -Dowiedz się, jak generować kody Compact PDF417 przy użyciu Aspose.BarCode dla .NET. Kompleksowy przewodnik z instrukcjami krok po kroku i przykładami kodu. +### [Generowanie kodu kreskowego PDF417 w C# – przewodnik po generatorze kodów](./generate-pdf417-barcode-in-c-barcode-generator-guide/) + +### [Jak zapisywać obrazy kodów kreskowych w C# – kompletny przewodnik](./how-to-save-barcode-images-in-c-complete-guide/) ## Najczęściej zadawane pytania @@ -116,4 +118,4 @@ Dowiedz się, jak generować kody Compact PDF417 przy użyciu Aspose.BarCode dla {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/polish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/polish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..820142080 --- /dev/null +++ b/barcode/polish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,113 @@ +--- +category: general +date: 2026-08-06 +description: Generuj kod kreskowy PDF417 w C# za pomocą generatora kodów kreskowych + – samouczek PDF417 w C#. Dowiedz się, jak generować kod PDF417, ustawić tryb binarny + i zapisać jako PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: pl +lastmod: 2026-08-06 +og_description: Generuj kod kreskowy PDF417 w C# przy użyciu BarcodeGenerator. Dowiedz + się, jak ustawić kodowanie binarne, skonfigurować opcje PDF417 i zapisać kod kreskowy + jako obraz PNG. +og_image_alt: Generate PDF417 barcode example +og_title: Generowanie kodu kreskowego PDF417 w C# – pełny przewodnik po generatorze + kodów kreskowych +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: Generowanie kodu PDF417 w C# – przewodnik po generatorze kodów kreskowych +url: /pl/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Generowanie kodu kreskowego PDF417 w C# – przewodnik po generatorze kodów kreskowych + +Jeśli potrzebujesz **generować kod kreskowy PDF417** w aplikacji .NET, ten przewodnik pokaże Ci dokładnie, jak to zrobić. Korzystając z biblioteki Aspose.BarCode możesz kodować dane binarne, przełączyć enkoder PDF417 w tryb binarny i wygenerować obraz PNG o wysokiej rozdzielczości w zaledwie kilku linijkach C#. + +Ten samouczek obejmuje wszystko, od instalacji pakietu NuGet po dostosowanie ustawień PDF417 oraz obsługę przypadków brzegowych, takich jak puste dane czy nieobsługiwane znaki. Po zakończeniu przewodnika będziesz mieć kompletny, działający przykład, który możesz wstawić do dowolnego projektu C#. + +**Czego się nauczysz** + +* Zainstaluj i odwołaj się do pakietu generatora kodów kreskowych C# PDF417. +* Przygotuj dane binarne do kodowania. +* Skonfiguruj `BarcodeGenerator` do binarnego kodowania PDF417. +* Zapisz wygenerowany kod kreskowy jako plik PNG i zweryfikuj wynik. + +> **Wymagania wstępne** – .NET 6.0 lub nowszy, Visual Studio 2022 (lub dowolne IDE, które preferujesz) oraz połączenie internetowe, aby pobrać pakiet NuGet. + +--- + +## Krok 1: Zainstaluj pakiet NuGet Aspose.BarCode + +Najbardziej niezawodny sposób pracy z kodami kreskowymi PDF417 w C# to biblioteka **Aspose.BarCode**, która w pełni obsługuje kodowanie binarne. + +```bash +dotnet add package Aspose.BarCode +``` + +*Dlaczego ten krok?* +Klasa `BarcodeGenerator` znajduje się w przestrzeni nazw `Aspose.BarCode`. Dodanie pakietu zapewnia dostępność wszystkich wymaganych plików DLL w czasie kompilacji oraz zapewnia najnowsze poprawki błędów i ulepszenia wydajności. + +--- + +## Krok 2: Utwórz nowy projekt konsolowy (opcjonalnie, ale zalecane) + +Jeśli testujesz kod w izolacji, rozpocznij od nowej aplikacji konsolowej: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Dodaj pakiet do projektu (powtórz polecenie z Kroku 1, jeśli jeszcze tego nie zrobiłeś). + +--- + +## Krok 3: Przygotuj dane binarne do kodowania + +PDF417 może kodować surowe bajty, gdy ustawisz tryb kodowania na **Binary**. Poniżej znajduje się prosta tablica bajtów, która demonstruje ten proces. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Dlaczego dane binarne?* +Tryb binarny pozwala przechowywać dowolną sekwencję bajtów — przydatny do osadzania plików, kluczy szyfrujących lub własnych ładunków, które nie są zwykłym tekstem. + +--- + +## Krok 4: Zainicjalizuj generator kodów kreskowych i skonfiguruj PDF417 w trybie binarnym + + + +## Co powinieneś nauczyć się dalej? + +Poniższe samouczki obejmują ściśle powiązane tematy, które rozwijają techniki przedstawione w tym przewodniku. Każdy zasób zawiera kompletne, działające przykłady kodu wraz z wyjaśnieniami krok po kroku, aby pomóc Ci opanować dodatkowe funkcje API i odkrywać alternatywne podejścia implementacyjne w własnych projektach. + +- [Jak utworzyć kod kreskowy – Compact PDF417 z Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [Jak generować kody kreskowe PDF417 – Compact PDF417 Encoding](/barcode/english/net/compact-pdf417-encoding/) +- [Jak generować kod kreskowy Aztec z niestandardowym współczynnikiem proporcji przy użyciu Aspose.BarCode dla .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/polish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/polish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..79025f69d --- /dev/null +++ b/barcode/polish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,234 @@ +--- +category: general +date: 2026-08-06 +description: Jak zapisać obrazy kodów kreskowych w C# przy użyciu MicroPdf417 z emulacją + Code 128. Dowiedz się, jak generować kody kreskowe PDF417 i dostosowywać ustawienia. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: pl +lastmod: 2026-08-06 +og_description: Jak szybko zapisać obrazy kodów kreskowych w C# przy użyciu MicroPdf417 + i emulacji Code 128. Skorzystaj z tego przewodnika, aby generować kody PDF417 i + dostosowywać wyjście. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: Jak zapisać obrazy kodów kreskowych w C# – przewodnik krok po kroku +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: Jak zapisać obrazy kodów kreskowych w C# – kompletny przewodnik +url: /pl/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Jak zapisać obrazy kodów kreskowych w C# – kompletny przewodnik + +Jeśli potrzebujesz **how to save barcode** obrazów w aplikacji .NET, ten tutorial pokazuje gotowe rozwiązanie. Nauczysz się generować kody kreskowe PDF417, stosować emulację Code 128 i zapisywać powstałe pliki PNG na dysku. + +Przykład używa biblioteki Aspose.BarCode for .NET, która obsługuje MicroPdf417, Code 128 i wiele innych standardów. Po zakończeniu przewodnika będziesz w stanie tworzyć pliki kodów kreskowych dla trybów 908, 909, 910 i 911 oraz zrozumiesz, jak dostosować parametry wizualne dla optymalnego skanowania. + +## Wymagania wstępne + +* .NET 6.0 SDK lub nowszy zainstalowany +* Visual Studio 2022 (lub dowolne IDE obsługujące C#) +* Aktywna licencja Aspose.BarCode for .NET (bezpłatna wersja próbna działa w środowisku deweloperskim) + +Tutorial zakłada podstawową znajomość projektów konsolowych C#. + +## Krok 1: Utwórz nowy projekt konsolowy i dodaj pakiet BarCode + +Otwórz terminal i uruchom następujące polecenia: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +Polecenie `dotnet add package` pobiera najnowszą bibliotekę Aspose.BarCode, która zawiera klasy potrzebne do **how to generate pdf417** kodów kreskowych. + +## Krok 2: Napisz kompletny program + +Utwórz plik o nazwie `Program.cs` (zastąp istniejący) i wklej poniższy kod. Program demonstruje **barcode generator with code128** emulację i pokazuje kilka sposobów na **how to save barcode** obrazy. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Dlaczego ten kod działa + +* **Single generator instance** – Ponowne użycie `BarcodeGenerator` unika wielokrotnej alokacji pamięci i utrzymuje spójną konfigurację we wszystkich trybach. +* **XDimension** – Ustawienie rozmiaru piksela na 2 daje wyraźny, czytelny obraz bez zwiększania rozmiaru pliku. +* **IsCode128Emulation** – Włącza wzorce pasków w stylu Code 128 wewnątrz symbolu PDF417, które niektóre skanery odczytują bardziej niezawodnie. +* **Save method** – Przeciążenie `Save`, które widzisz, jest kanonicznym sposobem na **how to save barcode** pliki; zapisuje obraz bezpośrednio do systemu plików w wybranym formacie. + +## Krok 3: Uruchom program i zweryfikuj wynik + +Zbuduj i uruchom projekt: + +```bash +dotnet run +``` + +Po wyświetleniu komunikatów potwierdzających w konsoli, otwórz folder ustawiony w `outputPath`. Powinieneś zobaczyć cztery pliki PNG: + +* `MicroPdf417_Code128_908.png` – wskaźnik FNC1 + alfanumeryczny +* `MicroPdf417_Code128_909.png` – wskaźnik FNC1 + numeryczny +* `MicroPdf417_Code128_910.png` – czysty ładunek Code 128 + +Każdy obraz zawiera symbol MicroPdf417, który może być skanowany przez standardowe czytniki kodów kreskowych. Jeśli skaner nie odczyta pliku, rozważ zwiększenie `XDimension.Pixels` lub dostosowanie `Pdf417.Columns`, aby dopasować rozdzielczość do docelowego urządzenia. + +## Krok 4: Typowe warianty i przypadki brzegowe + +### Zmiana formatu obrazu + +Enum `BarCodeImageFormat` obsługuje PNG, JPEG, BMP i TIFF. Zastąp `BarCodeImageFormat.Png` przez `BarCodeImageFormat.Jpeg`, jeśli potrzebujesz mniejszego rozmiaru pliku do dostarczania w sieci. + +### Generowanie pełnowymiarowego PDF417 zamiast MicroPdf417 + +Jeśli Twój przypadek użycia wymaga większego standardu PDF417, utwórz generator z `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +Pamiętaj, aby dostosować `Pdf417.Rows` i `Pdf417.Columns` do specyfikacji ISO/IEC 15417. + +### Obsługa znaków specjalnych + +Separator grup (`\u001d`) jest wymagany dla identyfikatorów aplikacji. Jeśli Twoje dane zawierają inne znaki kontrolne, należy je uciec przy użyciu notacji Unicode (np. `\u001c` dla separatora plików), aby uniknąć błędów w czasie wykonywania. + +### Kwestie licencyjne + +Uruchomienie kodu bez licencji powoduje nałożenie znaku wodnego na wygenerowane obrazy. Zastosuj swoją licencję wcześnie w metodzie `Main`: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Krok 5: Wskazówki do użycia w produkcji + +* **Batch processing** – Owiń logikę zapisu w pętli, która odczytuje wiersze z pliku CSV lub bazy danych; ponownie używaj tej samej instancji `BarcodeGenerator` dla lepszej wydajności. +* **Thread safety** – `BarcodeGenerator` nie jest bezpieczny wątkowo. Utwórz osobną instancję na każdy wątek, jeśli równolegle tworzysz kody kreskowe. +* **Error handling** – Umieść wywołania `Save` w blokach `try…catch`, aby przechwycić wyjątki I/O, szczególnie przy zapisie na udziały sieciowe. + +## Zakończenie + +Teraz wiesz, jak **how to save barcode** obrazy w C# przy użyciu Aspose.BarCode, jak **how to generate pdf417** symbole z emulacją Code 128 oraz jak skonfigurować **barcode generator with code128** dla wielu trybów. Kompletny, działający przykład demonstruje każdy krok od konfiguracji projektu po końcowe pliki PNG. + +Następnie, zapoznaj się z powiązanymi tematami, takimi jak **embedding barcodes in PDF documents**, **creating QR codes with custom colors**, lub **integrating barcode generation into ASP.NET Core APIs**. Te rozszerzenia opierają się na tych samych zasadach omówionych tutaj i pozwalają zautomatyzować szeroki zakres procesów skanowania. + +## Co powinieneś nauczyć się dalej? + +Poniższe tutoriale obejmują ściśle powiązane tematy, które rozwijają techniki przedstawione w tym przewodniku. Każde źródło zawiera kompletne działające przykłady kodu z wyjaśnieniami krok po kroku, aby pomóc Ci opanować dodatkowe funkcje API i zbadać alternatywne podejścia implementacyjne w własnych projektach. + +- [Jak generować kody kreskowe PDF417 – kompaktowe kodowanie PDF417](/barcode/english/net/compact-pdf417-encoding/) +- [Jak zapisać PNG przy użyciu DataMatrix C40 z Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [Jak generować kody kreskowe – jednowymiarowe typy kodów kreskowych](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/polish/net/one-dimensional-barcode-types/_index.md b/barcode/polish/net/one-dimensional-barcode-types/_index.md index 8fef375f6..651b36922 100644 --- a/barcode/polish/net/one-dimensional-barcode-types/_index.md +++ b/barcode/polish/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ zarabiaj, jak generować kody kreskowe w .NET za pomocą Aspose.BarCode dla .NET Dowiedz się, jak obsługiwać wyjątki podczas generowania jednowymiarowych kodów kreskowych przy użyciu Aspose.BarCode dla .NET. Ten przewodnik krok po kroku zapewnia rozwiązania odporne na błędy w zakresie kodów kreskowych. Zacznij teraz! ### [Konfiguracja jednowymiarowego szerokiego i wąskiego współczynnika](./one-dimensional-wide-narrow-ratio-configuration/) Z łatwością generuj niestandardowe kody kreskowe za pomocą Aspose.BarCode dla .NET. Przewodnik krok po kroku dotyczący konfiguracji jednowymiarowego współczynnika szerokiego i wąskiego. +### [Jak ustawić kod kreskowy w C# – kompletny przewodnik Aspose.BarCode](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Pełny przewodnik, jak w C# ustawić kod kreskowy przy użyciu Aspose.BarCode. ## Wniosek @@ -89,4 +91,4 @@ Dzięki temu artykułowi nie tylko zdobędziesz wiedzę na temat różnych typó {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/polish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/polish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..79dc4cff4 --- /dev/null +++ b/barcode/polish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,161 @@ +--- +category: general +date: 2026-08-06 +description: Jak ustawić kod kreskowy przy użyciu Aspose.BarCode w C#. Dowiedz się, + jak zmienić znaki makro i utworzyć obraz kodu kreskowego w C# krok po kroku. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: pl +lastmod: 2026-08-06 +og_description: Jak ustawić kod kreskowy za pomocą Aspose.BarCode w C#. Ten przewodnik + pokazuje, jak szybko zmienić znaki makro i utworzyć obraz kodu kreskowego w C#. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: Jak ustawić kod kreskowy w C# – poradnik Aspose.BarCode +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: Jak ustawić kod kreskowy w C# – kompletny przewodnik Aspose.BarCode +url: /pl/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Jak ustawić kod kreskowy w C# – kompletny przewodnik Aspose.BarCode + +Jeśli potrzebujesz **jak ustawić kod kreskowy** w aplikacji .NET, ten tutorial pokaże Ci dokładne kroki przy użyciu Aspose.BarCode. Zobaczysz, jak zmienić znaki makro, dostosować parametry wizualne oraz **tworzyć pliki obrazu kodu kreskowego C#**, które można od razu zapisać na dysku. + +Przewodnik obejmuje wszystko, od instalacji biblioteki po generowanie dwóch kodów MicroPDF417 z różnymi wartościami makro. Nie potrzebujesz dodatkowej dokumentacji – możesz skopiować kod, uruchomić go i od razu zweryfikować wynikowy plik PNG. + +## Wymagania wstępne + +Zanim rozpoczniesz, upewnij się, że masz: + +* .NET 6.0 lub nowszy (przykład używa projektu konsolowego) +* Visual Studio 2022 lub dowolne IDE dla C# +* Aktywną licencję Aspose.BarCode (darmowa wersja ewaluacyjna wystarczy do testów) +* Podstawową znajomość składni C# + +Będziesz także potrzebował pakietu NuGet: + +```bash +dotnet add package Aspose.BarCode +``` + +## Jak ustawić parametry kodu kreskowego – krok 1: utwórz generator + +Pierwszym działaniem jest utworzenie instancji `BarcodeGenerator` z żądaną symbologią i danymi. Użycie `EncodeTypes.MicroPdf417` informuje Aspose.BarCode, aby wygenerował kompaktową odmianę PDF417. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Dlaczego to ważne:** `BarcodeGenerator` jest centralnym obiektem; wszystkie późniejsze ustawienia modyfikują jego właściwość `Parameters`. Wybranie właściwego `EncodeTypes` zapewnia, że kod kreskowy spełnia specyfikację MicroPDF417. + +## Jak zmienić znaki makro – krok 2: dostosuj parametry wizualne + +Znaki makro są opcjonalnymi kodami kontrolnymi, które pozwalają łączyć wiele symboli PDF417. Przykład przełącza się między `Macro05` a `Macro06`. Ustawiasz także szerokość modułu (`XDimension`) oraz liczbę kolumn, aby kontrolować rozmiar kodu kreskowego. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Dlaczego zmieniasz makro:** Znak makro informuje skaner, że ten kod kreskowy jest częścią większego zestawu danych. Przełączenie go pokazuje, jak te same dane mogą być powiązane z różnymi identyfikatorami makro. + +## Jak ustawić kod kreskowy – krok 3: wygeneruj drugi kod kreskowy z innym makrem + +Teraz ponownie używamy tej samej instancji `generator`, zmieniając jedynie wartość makra. Dzięki temu nie musimy tworzyć nowego obiektu i pokazujemy, że **jak ustawić kod kreskowy** można zrobić w czasie działania aplikacji. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Oczekiwany wynik + +Uruchomienie programu tworzy dwa pliki PNG w folderze projektu: + +* `MicroPdf417_Macro05.png` – kod kreskowy z Macro05 +* `MicroPdf417_Macro06.png` – kod kreskowy z Macro06 + +Oba obrazy wyświetlają kompaktowy symbol MicroPDF417, który koduje `12345ABC`. Możesz otworzyć pliki PNG dowolnym przeglądarką obrazów, aby zweryfikować jakość wizualną. + +## Najlepsze praktyki generatora kodów kreskowych w C# + +* **Ponowne użycie generatora:** Zmiana `Parameters` w istniejącej instancji jest bardziej wydajna niż tworzenie nowego generatora dla każdego kodu. +* **Ustaw X‑dimension wcześnie:** Szerokość modułu wpływa na ogólny rozmiar obrazu; dostosuj ją przed zapisem. +* **Waliduj użycie makra:** Nie wszystkie skanery obsługują znaki makro. Przetestuj je na docelowym sprzęcie, jeśli planujesz używać ich w produkcji. +* **Zwolnij zasoby:** `BarcodeGenerator` implementuje `IDisposable`. W usługach działających długo, otocz go blokiem `using` lub wywołaj `Dispose()` po zakończeniu. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Tworzenie obrazu kodu kreskowego w C# – wskazówki rozwiązywania problemów + +| Objaw | Prawdopodobna przyczyna | Rozwiązanie | +|---------------------------------------|---------------------------------------------|-------------| +| Pusty plik PNG | `XDimension` ustawiony na 0 lub bardzo dużą wartość | Użyj rozsądnej szerokości w pikselach (1‑5) | +| Kod kreskowy nieczytelny dla skanera | Nieprawidłowy znak makro dla skanera | Sprawdź dokumentację skanera; użyj `MacroNone`, jeśli nie jest potrzebny | +| Wyjątek `ArgumentOutOfRangeException` | Liczba kolumn poza dopuszczalnym zakresem (1‑30) | Trzymaj `Columns` w przedziale od 1 do 30 | + +## Zakończenie + +Teraz wiesz **jak ustawić właściwości kodu kreskowego**, **jak zmienić znaki makro** oraz **jak tworzyć pliki obrazu kodu kreskowego C#** przy użyciu Aspose.BarCode. Kompletny, gotowy do uruchomienia przykład demonstruje pełny przepływ od utworzenia generatora po eksport obrazu. + +Następnie, eksploruj inne symbologie (`EncodeTypes.QR`, `EncodeTypes.Code128`) lub osadź kod kreskowy bezpośrednio w plikach PDF przy użyciu Aspose.PDF. Oba tematy należą do szerszego ekosystemu **barcode generator c#** i mogą zostać dodane do tego projektu przy minimalnych zmianach kodu. + +Miłego kodowania i zachęcamy do eksperymentowania z różnymi wartościami makro, wymiarami i formatami wyjściowymi! + +## Co powinieneś nauczyć się dalej? + +Poniższe tutoriale obejmują ściśle powiązane tematy, które rozwijają techniki przedstawione w tym przewodniku. Każdy zasób zawiera kompletne działające przykłady kodu wraz z wyjaśnieniami krok po kroku, aby pomóc Ci opanować dodatkowe funkcje API i odkrywać alternatywne podejścia implementacyjne w własnych projektach. + +- [Jak utworzyć strefę ciszy kodu kreskowego dla Code 16K przy użyciu Aspose.BarCode dla .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [Jak utworzyć rozszerzony tekst kodu dotcode przy użyciu Aspose.BarCode dla .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [Jak ustawić obramowanie dla dostosowywania kodu kreskowego ITF-14](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/portuguese/net/compact-pdf417-encoding/_index.md b/barcode/portuguese/net/compact-pdf417-encoding/_index.md index 9b00326c0..dd59f435e 100644 --- a/barcode/portuguese/net/compact-pdf417-encoding/_index.md +++ b/barcode/portuguese/net/compact-pdf417-encoding/_index.md @@ -85,6 +85,12 @@ Beyond the basics, here are some practical tips to streamline your workflow: ### [Criando Códigos de Barras Compact PDF417](./compact-pdf417-basic-configuration/) Learn how to generate Compact PDF417 barcodes using Aspose.BarCode for .NET. Comprehensive guide with step-by-step instructions and code examples. +### [Gerar código de barras PDF417 em C# – guia do gerador de código de barras](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +Aprenda a gerar códigos de barras PDF417 em C# usando o gerador de códigos de barras da Aspose. + +### [Como salvar imagens de código de barras em C# – guia completo](./how-to-save-barcode-images-in-c-complete-guide/) +Aprenda a salvar imagens de códigos de barras gerados em C# usando Aspose.BarCode, com exemplos de PNG, JPEG e opções avançadas. + ## Perguntas Frequentes **Q: Qual é a quantidade máxima de dados que posso armazenar em um código de barras Compact PDF417?** @@ -113,4 +119,4 @@ A: Não são necessárias fontes externas; a biblioteca lida com toda a renderiz {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/portuguese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/portuguese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..e2464bca4 --- /dev/null +++ b/barcode/portuguese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,113 @@ +--- +category: general +date: 2026-08-06 +description: Gere código de barras PDF417 em C# com um gerador de código de barras + C# tutorial PDF417. Aprenda como gerar código de barras PDF417, definir modo binário + e salvar como PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: pt +lastmod: 2026-08-06 +og_description: Gere código de barras PDF417 em C# usando BarcodeGenerator. Aprenda + a definir a codificação binária, configurar as opções do PDF417 e salvar o código + de barras como uma imagem PNG. +og_image_alt: Generate PDF417 barcode example +og_title: Gerar código de barras PDF417 em C# – guia completo de geração de códigos + de barras +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: Gerar código de barras PDF417 em C# – guia de geração de código de barras +url: /pt/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Gerar código de barras PDF417 em C# – guia do gerador de códigos de barras + +Se você precisa **gerar código de barras PDF417** em uma aplicação .NET, este guia mostra exatamente como. Usando a biblioteca Aspose.BarCode você pode codificar dados binários, mudar o codificador PDF417 para modo binário e gerar uma imagem PNG de alta resolução em apenas algumas linhas de C#. + +Este tutorial cobre tudo, desde a instalação do pacote NuGet até a personalização das configurações do PDF417 e o tratamento de casos especiais, como dados vazios ou caracteres não suportados. Ao final do guia você terá um exemplo completo e executável que pode ser inserido em qualquer projeto C#. + +**O que você aprenderá** + +* Instalar e referenciar o pacote C# PDF417 do gerador de códigos de barras. +* Preparar dados binários para codificação. +* Configurar o `BarcodeGenerator` para codificação PDF417 binária. +* Salvar o código de barras gerado como um arquivo PNG e verificar o resultado. + +> **Pré-requisitos** – .NET 6.0 ou superior, Visual Studio 2022 (ou qualquer IDE de sua preferência) e conexão à internet para baixar o pacote NuGet. + +--- + +## Etapa 1: Instalar o pacote NuGet Aspose.BarCode + +A forma mais confiável de trabalhar com códigos de barras PDF417 em C# é a biblioteca **Aspose.BarCode**, que oferece suporte total à codificação binária. + +```bash +dotnet add package Aspose.BarCode +``` + +*Por que esta etapa?* +A classe `BarcodeGenerator` está no namespace `Aspose.BarCode`. Adicionar o pacote garante que todas as DLLs necessárias estejam disponíveis em tempo de compilação e que você receba as correções de bugs e melhorias de desempenho mais recentes. + +--- + +## Etapa 2: Criar um novo projeto de console (opcional, mas recomendado) + +Se você estiver testando o código isoladamente, inicie um novo aplicativo de console: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Adicione o pacote ao projeto (repita o comando da Etapa 1 caso ainda não o tenha feito). + +--- + +## Etapa 3: Preparar dados binários para codificar + +O PDF417 pode codificar bytes brutos quando você define o modo de codificação como **Binary**. Abaixo está um array de bytes simples que demonstra o processo. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Por que dados binários?* +O modo binário permite armazenar qualquer sequência de bytes — útil para incorporar arquivos, chaves de criptografia ou cargas úteis personalizadas que não são texto simples. + +--- + +## Etapa 4: Inicializar o gerador de código de barras e configurar o PDF417 para modo binário + + + +## O que você deve aprender a seguir? + +Os tutoriais a seguir cobrem tópicos estreitamente relacionados que se baseiam nas técnicas demonstradas neste guia. Cada recurso inclui exemplos de código completos e funcionais com explicações passo a passo para ajudá-lo a dominar recursos adicionais da API e explorar abordagens de implementação alternativas em seus próprios projetos. + +- [Como criar código de barras – PDF417 compacto com Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [Como gerar códigos de barras PDF417 – Codificação PDF417 Compacta](/barcode/english/net/compact-pdf417-encoding/) +- [Como gerar código de barras Aztec com proporção de aspecto personalizada usando Aspose.BarCode para .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/portuguese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/portuguese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..c7d3cf488 --- /dev/null +++ b/barcode/portuguese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,234 @@ +--- +category: general +date: 2026-08-06 +description: Como salvar imagens de código de barras em C# usando MicroPdf417 com + emulação Code 128. Aprenda a gerar códigos de barras PDF417 e personalizar as configurações. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: pt +lastmod: 2026-08-06 +og_description: Como salvar imagens de código de barras em C# rapidamente com MicroPdf417 + e emulação Code 128. Siga este guia para gerar códigos de barras PDF417 e personalizar + a saída. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: Como salvar imagens de código de barras em C# – guia passo a passo +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: Como salvar imagens de código de barras em C# – guia completo +url: /pt/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Como salvar imagens de código de barras em C# – guia completo + +Se você precisa **how to save barcode** imagens em uma aplicação .NET, este tutorial mostra uma solução pronta‑para‑executar. Você aprenderá como gerar códigos de barras PDF417, aplicar emulação Code 128 e gravar os arquivos PNG resultantes no disco. + +O exemplo usa a biblioteca Aspose.BarCode for .NET, que suporta MicroPdf417, Code 128 e muitos outros padrões. Ao final do guia, você poderá produzir arquivos de código de barras para os Modos 908, 909, 910 e 911, e entenderá como ajustar parâmetros visuais para uma leitura ótima. + +## Pré-requisitos + +* .NET 6.0 SDK ou posterior instalado +* Visual Studio 2022 (ou qualquer IDE que suporte C#) +* Uma licença ativa do Aspose.BarCode for .NET (uma avaliação gratuita funciona para desenvolvimento) + +O tutorial assume familiaridade básica com projetos de console C#. + +## Etapa 1: Crie um novo projeto de console e adicione o pacote BarCode + +Abra um terminal e execute os seguintes comandos: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +O comando `dotnet add package` baixa a biblioteca mais recente do Aspose.BarCode, que contém as classes necessárias para **how to generate pdf417** códigos de barras. + +## Etapa 2: Escreva o programa completo + +Crie um arquivo chamado `Program.cs` (substitua o existente) e cole o código abaixo. O programa demonstra uma **barcode generator with code128** emulação e mostra várias maneiras de **how to save barcode** imagens. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Por que este código funciona + +* **Single generator instance** – Reutilizar `BarcodeGenerator` evita alocação repetida de memória e mantém a configuração consistente entre os modos. +* **XDimension** – Definir o tamanho do pixel para 2 produz uma imagem clara e legível sem inflar o tamanho do arquivo. +* **IsCode128Emulation** – Habilita padrões de barras no estilo Code 128 dentro de um símbolo PDF417, que alguns leitores interpretam de forma mais confiável. +* **Save method** – A sobrecarga `Save` que você vê é a forma canônica de **how to save barcode** arquivos; ela grava a imagem diretamente no sistema de arquivos no formato especificado. + +## Etapa 3: Execute o programa e verifique a saída + +Compile e execute o projeto: + +```bash +dotnet run +``` + +Depois que o console imprimir as mensagens de confirmação, abra a pasta que você definiu em `outputPath`. Você deverá ver quatro arquivos PNG: + +* `MicroPdf417_Code128_908.png` – Indicador FNC1 + alfanumérico +* `MicroPdf417_Code128_909.png` – Indicador FNC1 + numérico +* `MicroPdf417_Code128_910.png` – carga útil puro Code 128 + +Cada imagem contém um símbolo MicroPdf417 que pode ser lido por leitores de código de barras padrão. Se um leitor não conseguir ler um arquivo, considere aumentar `XDimension.Pixels` ou ajustar `Pdf417.Columns` para corresponder à resolução do dispositivo alvo. + +## Etapa 4: Variações comuns e casos extremos + +### Alterando o formato da imagem + +O enum `BarCodeImageFormat` suporta PNG, JPEG, BMP e TIFF. Substitua `BarCodeImageFormat.Png` por `BarCodeImageFormat.Jpeg` se precisar de um tamanho de arquivo menor para entrega na web. + +### Gerando um PDF417 em tamanho completo em vez de MicroPdf417 + +Se seu caso de uso requer o padrão PDF417 maior, instancie o gerador com `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +Lembre-se de ajustar `Pdf417.Rows` e `Pdf417.Columns` para atender às especificações ISO/IEC 15417. + +### Tratamento de caracteres especiais + +O separador de grupo (`\u001d`) é necessário para Identificadores de Aplicação. Se seus dados contiverem outros caracteres de controle, escape-os usando notação Unicode (por exemplo, `\u001c` para separador de arquivo) para evitar erros em tempo de execução. + +### Considerações de licença + +Executar o código sem licença gera uma marca d'água nas imagens geradas. Aplique sua licença logo no início de `Main`: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Etapa 5: Dicas para uso em produção + +* **Batch processing** – Envolva a lógica de gravação em um loop que lê linhas de um CSV ou banco de dados; reutilize a mesma instância `BarcodeGenerator` para melhorar o desempenho. +* **Thread safety** – `BarcodeGenerator` não é thread‑safe. Crie uma instância separada por thread se você paralelizar a criação de códigos de barras. +* **Error handling** – Envolva as chamadas `Save` em blocos `try…catch` para capturar exceções de I/O, especialmente ao gravar em compartilhamentos de rede. + +## Conclusão + +Agora você sabe como **how to save barcode** imagens em C# usando Aspose.BarCode, como **how to generate pdf417** símbolos com emulação Code 128, e como configurar um **barcode generator with code128** para múltiplos modos. O exemplo completo e executável demonstra cada passo, desde a configuração do projeto até os arquivos PNG finais. + +Em seguida, explore tópicos relacionados como **embedding barcodes in PDF documents**, **creating QR codes with custom colors**, ou **integrating barcode generation into ASP.NET Core APIs**. Essas extensões se baseiam nos mesmos princípios abordados aqui e permitem automatizar uma ampla gama de fluxos de trabalho de leitura. + +## O que você deve aprender a seguir? + +Os tutoriais a seguir abordam tópicos intimamente relacionados que se baseiam nas técnicas demonstradas neste guia. Cada recurso inclui exemplos de código completos e funcionais com explicações passo a passo para ajudá-lo a dominar recursos adicionais da API e explorar abordagens alternativas de implementação em seus próprios projetos. + +- [Como gerar códigos de barras PDF417 – Codificação PDF417 Compacta](/barcode/english/net/compact-pdf417-encoding/) +- [Como salvar PNG usando DataMatrix C40 com Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [Como gerar código de barras – Tipos de códigos de barras unidimensionais](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/portuguese/net/one-dimensional-barcode-types/_index.md b/barcode/portuguese/net/one-dimensional-barcode-types/_index.md index 5c81ef2a1..68983a34b 100644 --- a/barcode/portuguese/net/one-dimensional-barcode-types/_index.md +++ b/barcode/portuguese/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ aprenda como gerar códigos de barras em .NET com Aspose.BarCode for .NET. Este Aprenda como lidar com exceções ao gerar códigos de barras unidimensionais usando Aspose.BarCode for .NET. Este guia passo a passo garante soluções de código de barras tolerantes a erros. Comece agora! ### [Configuração de relação ampla-estreita unidimensional](./one-dimensional-wide-narrow-ratio-configuration/) Gere códigos de barras personalizados facilmente com Aspose.BarCode for .NET. Guia passo a passo para configuração unidimensional de proporção larga-estreita. +### [Como definir código de barras em C# – guia completo Aspose.BarCode](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Aprenda a configurar códigos de barras em C# usando Aspose.BarCode com este guia passo a passo. ## Conclusão @@ -89,4 +91,4 @@ Com este artigo, você não apenas obterá conhecimento sobre vários tipos de c {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/portuguese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/portuguese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..8ff7162dc --- /dev/null +++ b/barcode/portuguese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,163 @@ +--- +category: general +date: 2026-08-06 +description: Como definir o código de barras usando Aspose.BarCode em C#. Aprenda + a alterar caracteres macro e criar imagem de código de barras em C# com código passo + a passo. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: pt +lastmod: 2026-08-06 +og_description: Como definir código de barras com Aspose.BarCode em C#. Este guia + mostra como alterar caracteres macro e criar rapidamente uma imagem de código de + barras em C#. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: Como definir código de barras em C# – tutorial Aspose.BarCode +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: Como definir código de barras em C# – guia completo do Aspose.BarCode +url: /pt/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Como definir código de barras em C# – guia completo do Aspose.BarCode + +Se você precisa **definir código de barras** em uma aplicação .NET, este tutorial mostra os passos exatos usando Aspose.BarCode. Você verá como alterar caracteres macro, ajustar parâmetros visuais e **criar arquivos de imagem de código de barras C#** que podem ser salvos diretamente no disco. + +O guia cobre tudo, desde a instalação da biblioteca até a geração de dois códigos MicroPDF417 com valores macro diferentes. Nenhuma documentação externa é necessária—você pode copiar o código, executá‑lo e verificar a saída PNG imediatamente. + +## Pré‑requisitos + +Antes de começar, certifique‑se de que você tem: + +* .NET 6.0 ou superior (o exemplo usa um projeto de console) +* Visual Studio 2022 ou qualquer IDE C# +* Uma licença ativa do Aspose.BarCode (uma avaliação gratuita funciona para testes) +* Conhecimento básico de sintaxe C# + +Você também precisará do pacote NuGet: + +```bash +dotnet add package Aspose.BarCode +``` + +## Como definir parâmetros do código de barras – passo 1: criar o gerador + +A primeira ação é instanciar um `BarcodeGenerator` com a simbologia e os dados desejados. Usar `EncodeTypes.MicroPdf417` indica ao Aspose.BarCode que ele deve produzir uma variante compacta do PDF417. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Por que isso importa:** `BarcodeGenerator` é o objeto central; todas as configurações posteriores modificam sua propriedade `Parameters`. Selecionar o `EncodeTypes` correto garante que o código de barras siga a especificação MicroPDF417. + +## Como alterar caracteres macro – passo 2: ajustar parâmetros visuais + +Os caracteres macro são códigos de controle opcionais que permitem concatenar vários símbolos PDF417. O exemplo alterna entre `Macro05` e `Macro06`. Você também define a largura do módulo (`XDimension`) e o número de colunas para controlar o tamanho do código de barras. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Por que você altera o macro:** O caractere macro informa ao scanner que este código de barras faz parte de um conjunto de dados maior. Alterná‑lo demonstra como os mesmos dados podem ser vinculados a diferentes identificadores macro. + +## Como definir código de barras – passo 3: gerar um segundo código com macro diferente + +Agora reutilizamos a mesma instância `generator`, apenas trocando o valor do macro. Isso evita recriar o objeto e demonstra que **definir código de barras** pode ser feito em tempo de execução. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Saída esperada + +Ao executar o programa, são criados dois arquivos PNG na pasta do projeto: + +* `MicroPdf417_Macro05.png` – código de barras com Macro05 +* `MicroPdf417_Macro06.png` – código de barras com Macro06 + +Ambas as imagens exibem um símbolo compacto MicroPDF417 que codifica `12345ABC`. Você pode abrir os arquivos PNG com qualquer visualizador de imagens para verificar a qualidade visual. + +## Boas práticas para o gerador de código de barras C# + +* **Reutilize o gerador:** Alterar `Parameters` em uma instância existente é mais eficiente do que criar um novo gerador para cada código. +* **Defina a X‑dimension cedo:** A largura do módulo influencia o tamanho geral da imagem; ajuste‑a antes de salvar. +* **Valide o uso de macro:** Nem todos os scanners suportam caracteres macro. Teste com o hardware alvo se pretender usá‑los em produção. +* **Libere recursos:** `BarcodeGenerator` implementa `IDisposable`. Em um serviço de longa duração, envolva‑o em um bloco `using` ou chame `Dispose()` quando terminar. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Criar imagem de código de barras C# – dicas de solução de problemas + +| Sintoma | Causa provável | Solução | +|--------------------------------------|---------------------------------------------|---------| +| Arquivo PNG em branco | `XDimension` definido como 0 ou valor muito alto | Use uma largura de pixel razoável (1‑5) | +| Código de barras ilegível pelo scanner | Caractere macro incorreto para o scanner | Verifique a documentação do scanner; use `MacroNone` se não for necessário | +| Exceção `ArgumentOutOfRangeException` | Contagem de colunas fora do intervalo permitido (1‑30) | Mantenha `Columns` entre 1 e 30 | + +## Conclusão + +Agora você sabe **como definir código de barras**, **como alterar caracteres macro** e como **criar arquivos de imagem de código de barras C#** usando Aspose.BarCode. O exemplo completo e executável demonstra todo o fluxo de trabalho, desde a criação do gerador até a exportação da imagem. + +Em seguida, explore outras simbologias (`EncodeTypes.QR`, `EncodeTypes.Code128`) ou incorpore o código de barras diretamente em PDFs com Aspose.PDF. Ambos os tópicos fazem parte do ecossistema mais amplo de **gerador de código de barras c#** e podem ser adicionados a este projeto com alterações mínimas de código. + +Boa codificação e sinta‑se à vontade para experimentar diferentes valores macro, dimensões e formatos de saída! + +## O que você deve aprender a seguir? + +Os tutoriais a seguir abordam tópicos intimamente relacionados que ampliam as técnicas demonstradas neste guia. Cada recurso inclui exemplos de código completos e funcionais com explicações passo a passo para ajudá‑lo a dominar recursos adicionais da API e explorar abordagens alternativas de implementação em seus próprios projetos. + +- [How to create barcode quiet zone for Code 16K using Aspose.BarCode for .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [How to create dotcode extended codetext with Aspose.BarCode for .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [How to Set Border for ITF-14 Barcode Customization](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/russian/net/compact-pdf417-encoding/_index.md b/barcode/russian/net/compact-pdf417-encoding/_index.md index 18a43fe66..acbf3aa16 100644 --- a/barcode/russian/net/compact-pdf417-encoding/_index.md +++ b/barcode/russian/net/compact-pdf417-encoding/_index.md @@ -84,6 +84,10 @@ Aspose.BarCode позволяет задать свойство `Pdf417ErrorCorr ## Руководства по Compact PDF417 Encoding ### [Creating Compact PDF417 Barcodes](./compact-pdf417-basic-configuration/) Узнайте, как генерировать Compact PDF417 штрих‑коды с помощью Aspose.BarCode для .NET. Полное руководство с пошаговыми инструкциями и примерами кода. +### [Генерация PDF417 штрих‑кода в C# – руководство по генератору штрих‑кодов](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +Подробное руководство по созданию PDF417 штрих‑кода в C# с использованием Aspose.BarCode. +### [Как сохранять изображения штрих‑кодов в C# – полное руководство](./how-to-save-barcode-images-in-c-complete-guide/) +Подробное руководство по сохранению сгенерированных штрих‑кодов в различных форматах изображений с помощью Aspose.BarCode для .NET. ## Часто задаваемые вопросы @@ -113,4 +117,4 @@ Aspose.BarCode позволяет задать свойство `Pdf417ErrorCorr {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/russian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/russian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..77dd28bc0 --- /dev/null +++ b/barcode/russian/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,112 @@ +--- +category: general +date: 2026-08-06 +description: Создайте штрих‑код PDF417 на C# с помощью генератора штрих‑кодов. Учебник + C# PDF417. Узнайте, как генерировать штрих‑код PDF417, установить бинарный режим + и сохранить его в PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: ru +lastmod: 2026-08-06 +og_description: Создайте штрих‑код PDF417 на C# с помощью BarcodeGenerator. Узнайте, + как задать двоичное кодирование, настроить параметры PDF417 и сохранить штрих‑код + в виде PNG‑изображения. +og_image_alt: Generate PDF417 barcode example +og_title: Генерация штрихкода PDF417 в C# – полное руководство по генератору штрихкодов +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: Создание штрихкода PDF417 в C# – руководство по генератору штрихкодов +url: /ru/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Генерация штрих‑кода PDF417 в C# – руководство по генератору штрих‑кодов + +Если вам нужно **создать штрих‑код PDF417** в .NET‑приложении, это руководство покажет, как это сделать. С помощью библиотеки Aspose.BarCode вы можете кодировать бинарные данные, переключить кодировщик PDF417 в бинарный режим и вывести изображение PNG высокого разрешения всего в несколько строк кода C#. + +В этом учебнике рассматривается всё: от установки пакета NuGet до настройки параметров PDF417 и обработки граничных случаев, таких как пустые данные или неподдерживаемые символы. К концу руководства у вас будет полностью готовый, исполняемый пример, который можно добавить в любой проект C#. + +**Что вы узнаете** + +* Установить и подключить пакет генератора штрих‑кодов C# PDF417. +* Подготовить бинарные данные для кодирования. +* Настроить `BarcodeGenerator` для бинарного кодирования PDF417. +* Сохранить сгенерированный штрих‑код в файл PNG и проверить результат. + +> **Требования** – .NET 6.0 или новее, Visual Studio 2022 (или любая предпочитаемая IDE) и подключение к интернету для загрузки пакета NuGet. + +--- + +## Шаг 1: Установите пакет NuGet Aspose.BarCode + +Самый надёжный способ работать со штрих‑кодами PDF417 в C# — библиотека **Aspose.BarCode**, полностью поддерживающая бинарное кодирование. + +```bash +dotnet add package Aspose.BarCode +``` + +*Зачем этот шаг?* +`Класс `BarcodeGenerator` находится в пространстве имён `Aspose.BarCode`. Добавление пакета гарантирует, что все необходимые DLL‑файлы будут доступны во время компиляции, а также обеспечивает получение последних исправлений ошибок и улучшений производительности. + +--- + +## Шаг 2: Создайте новый консольный проект (необязательно, но рекомендуется) + +Если вы тестируете код в изоляции, создайте новый консольный проект: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Добавьте пакет в проект (повторите команду из Шага 1, если вы ещё этого не сделали). + +--- + +## Шаг 3: Подготовьте бинарные данные для кодирования + +PDF417 может кодировать необработанные байты, если установить режим кодирования в **Binary**. Ниже приведён простой массив байтов, демонстрирующий процесс. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Зачем бинарные данные?* +Бинарный режим позволяет хранить любую последовательность байтов — полезно для встраивания файлов, ключей шифрования или пользовательских полезных нагрузок, которые не являются обычным текстом. + +--- + +## Шаг 4: Инициализируйте генератор штрих‑кода и настройте PDF417 для бинарного режима + + + +## Что стоит изучить дальше? + +Следующие учебники охватывают тесно связанные темы, которые опираются на техники, продемонстрированные в этом руководстве. Каждый ресурс содержит полностью рабочие примеры кода с пошаговыми объяснениями, помогающими освоить дополнительные возможности API и исследовать альтернативные подходы к реализации в ваших проектах. + +- [Как создать штрих‑код – Compact PDF417 с Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [Как генерировать штрих‑коды PDF417 – Compact PDF417 Encoding](/barcode/english/net/compact-pdf417-encoding/) +- [Как генерировать Aztec‑штрих‑код с пользовательским соотношением сторон, используя Aspose.BarCode для .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/russian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/russian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..19a97d5d3 --- /dev/null +++ b/barcode/russian/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,234 @@ +--- +category: general +date: 2026-08-06 +description: Как сохранять изображения штрихкодов в C# с помощью MicroPdf417 с эмуляцией + Code 128. Узнайте, как генерировать штрихкоды PDF417 и настраивать параметры. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: ru +lastmod: 2026-08-06 +og_description: Как быстро сохранять изображения штрихкодов в C# с помощью MicroPdf417 + и эмуляции Code 128. Следуйте этому руководству, чтобы генерировать штрихкоды PDF417 + и настраивать вывод. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: Как сохранить изображения штрихкодов в C# — пошаговое руководство +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: Как сохранять изображения штрихкодов в C# – полное руководство +url: /ru/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Как сохранять изображения штрих‑кодов в C# – полное руководство + +Если вам нужно **how to save barcode** изображения в приложении .NET, этот учебник покажет готовое решение. Вы узнаете, как генерировать штрих‑коды PDF417, применять эмуляцию Code 128 и записывать полученные PNG‑файлы на диск. + +В примере используется библиотека Aspose.BarCode for .NET, которая поддерживает MicroPdf417, Code 128 и многие другие стандарты. К концу руководства вы сможете создавать файлы штрих‑кодов для режимов 908, 909, 910 и 911, а также поймёте, как настраивать визуальные параметры для оптимального сканирования. + +## Требования + +* .NET 6.0 SDK или более поздняя версия, установленная +* Visual Studio 2022 (или любая IDE, поддерживающая C#) +* Действующая лицензия Aspose.BarCode for .NET (бесплатная пробная версия подходит для разработки) + +В учебнике предполагается базовое знакомство с консольными проектами C#. + +## Шаг 1: Создать новый консольный проект и добавить пакет BarCode + +Откройте терминал и выполните следующие команды: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +Команда `dotnet add package` загружает последнюю библиотеку Aspose.BarCode, содержащую классы, необходимые для **how to generate pdf417** штрих‑кодов. + +## Шаг 2: Написать полную программу + +Создайте файл с именем `Program.cs` (замените существующий) и вставьте приведённый ниже код. Программа демонстрирует **barcode generator with code128** эмуляцию и показывает несколько способов **how to save barcode** изображений. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Почему этот код работает + +* **Single generator instance** – Повторное использование `BarcodeGenerator` избегает повторных выделений памяти и сохраняет конфигурацию одинаковой для всех режимов. +* **XDimension** – Установка размера пикселя в 2 даёт чёткое, легко читаемое изображение без увеличения размера файла. +* **IsCode128Emulation** – Включает штрих‑паттерны в стиле Code 128 внутри символа PDF417, которые некоторые сканеры читают надёжнее. +* **Save method** – Перегрузка `Save`, которую вы видите, является каноническим способом **how to save barcode** файлов; она записывает изображение напрямую в файловую систему в указанном формате. + +## Шаг 3: Запустить программу и проверить результат + +Соберите и запустите проект: + +```bash +dotnet run +``` + +После того как консоль выведет сообщения подтверждения, откройте папку, указанную в `outputPath`. Вы должны увидеть четыре PNG‑файла: + +* `MicroPdf417_Code128_908.png` – индикатор FNC1 + буквенно‑цифровой +* `MicroPdf417_Code128_909.png` – индикатор FNC1 + числовой +* `MicroPdf417_Code128_910.png` – чистый payload Code 128 + +Каждое изображение содержит символ MicroPdf417, который может быть считан стандартными считывателями штрих‑кодов. Если сканер не может прочитать файл, попробуйте увеличить `XDimension.Pixels` или скорректировать `Pdf417.Columns` в соответствии с разрешением целевого устройства. + +## Шаг 4: Распространённые варианты и граничные случаи + +### Изменение формата изображения + +Перечисление `BarCodeImageFormat` поддерживает PNG, JPEG, BMP и TIFF. Замените `BarCodeImageFormat.Png` на `BarCodeImageFormat.Jpeg`, если нужен меньший размер файла для веб‑доставки. + +### Генерация полноразмерного PDF417 вместо MicroPdf417 + +Если ваш сценарий требует более крупного стандарта PDF417, создайте генератор с `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +Не забудьте настроить `Pdf417.Rows` и `Pdf417.Columns` в соответствии со спецификациями ISO/IEC 15417. + +### Обработка специальных символов + +Разделитель групп (`\u001d`) требуется для идентификаторов приложений. Если ваши данные содержат другие управляющие символы, экранируйте их с помощью Unicode‑нотации (например, `\u001c` для разделителя файлов), чтобы избежать ошибок выполнения. + +### Лицензионные нюансы + +Запуск кода без лицензии добавляет водяной знак к сгенерированным изображениям. Примените вашу лицензию в начале `Main`: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Шаг 5: Советы для продакшн‑использования + +* **Batch processing** – Оберните логику сохранения в цикл, читающий строки из CSV‑файла или базы данных; повторно используйте один экземпляр `BarcodeGenerator` для повышения производительности. +* **Thread safety** – `BarcodeGenerator` не является потокобезопасным. Создавайте отдельный экземпляр на каждый поток, если параллелите создание штрих‑кодов. +* **Error handling** – Поместите вызовы `Save` в блоки `try…catch` для отлова исключений ввода‑вывода, особенно при записи на сетевые ресурсы. + +## Заключение + +Теперь вы знаете, как **how to save barcode** изображения в C# с использованием Aspose.BarCode, как **how to generate pdf417** символы с эмуляцией Code 128, и как настроить **barcode generator with code128** для нескольких режимов. Полный, готовый к запуску пример демонстрирует каждый шаг от настройки проекта до финальных PNG‑файлов. + +Далее изучайте связанные темы, такие как **embedding barcodes in PDF documents**, **creating QR codes with custom colors**, или **integrating barcode generation into ASP.NET Core APIs**. Эти расширения опираются на те же принципы, рассмотренные здесь, и позволяют автоматизировать широкий спектр процессов сканирования. + +## Что стоит изучить дальше? + +Следующие учебники охватывают тесно связанные темы, построенные на техниках, продемонстрированных в этом руководстве. Каждый ресурс содержит полностью работающие примеры кода с пошаговыми объяснениями, помогающими освоить дополнительные возможности API и исследовать альтернативные подходы к реализации в ваших проектах. + +- [How to Generate PDF417 Barcodes – Compact PDF417 Encoding](/barcode/english/net/compact-pdf417-encoding/) +- [How to Save PNG using DataMatrix C40 with Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [How to Generate Barcode - One-Dimensional Barcode Types](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/russian/net/one-dimensional-barcode-types/_index.md b/barcode/russian/net/one-dimensional-barcode-types/_index.md index 8a11b64f3..90b8237e6 100644 --- a/barcode/russian/net/one-dimensional-barcode-types/_index.md +++ b/barcode/russian/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ url: /ru/net/one-dimensional-barcode-types/ Узнайте, как обрабатывать исключения при создании одномерных штрих-кодов с помощью Aspose.BarCode для .NET. Это пошаговое руководство обеспечивает устойчивые к ошибкам решения в области штрих-кодов. Начать сейчас! ### [Одномерная конфигурация с широким и узким соотношением](./one-dimensional-wide-narrow-ratio-configuration/) Легко создавайте индивидуальные штрих-коды с помощью Aspose.BarCode для .NET. Пошаговое руководство по одномерной конфигурации с широким и узким соотношением сторон. +### [Как установить штрих-код в C# – полное руководство Aspose.BarCode](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Узнайте, как установить штрих-код в C# с полным руководством Aspose.BarCode. ## Заключение @@ -89,4 +91,4 @@ url: /ru/net/one-dimensional-barcode-types/ {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/russian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/russian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..9f602a2cb --- /dev/null +++ b/barcode/russian/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,160 @@ +--- +category: general +date: 2026-08-06 +description: Как установить штрих‑код с помощью Aspose.BarCode в C#. Узнайте, как + изменить макросимволы и создать изображение штрих‑кода в C# с пошаговым кодом. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: ru +lastmod: 2026-08-06 +og_description: Как установить штрих‑код с помощью Aspose.BarCode в C#. Это руководство + показывает, как быстро изменить макросимволы и создать изображение штрих‑кода в + C#. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: Как установить штрих‑код в C# – учебник Aspose.BarCode +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: Как установить штрих‑код в C# – полное руководство по Aspose.BarCode +url: /ru/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Как установить штрих‑код в C# – полное руководство по Aspose.BarCode + +Если вам нужно **how to set barcode** в приложении .NET, это руководство покажет точные шаги с использованием Aspose.BarCode. Вы увидите, как изменить макросимволы, настроить визуальные параметры и **create barcode image C#** файлы, которые можно сразу сохранить на диск. + +Руководство охватывает всё от установки библиотеки до генерации двух штрих‑кодов MicroPDF417 с разными значениями макросимволов. Внешняя документация не требуется — вы можете скопировать код, запустить его и сразу проверить PNG‑вывод. + +## Требования + +* .NET 6.0 или новее (пример использует консольный проект) +* Visual Studio 2022 или любой IDE для C# +* Активная лицензия Aspose.BarCode (бесплатная оценочная версия подходит для тестирования) +* Базовые знания синтаксиса C# + +Вам также понадобится пакет NuGet: + +```bash +dotnet add package Aspose.BarCode +``` + +## Как задать параметры штрих‑кода – шаг 1: создать генератор + +Первое действие — создать экземпляр `BarcodeGenerator` с нужной символьной системой и данными. Использование `EncodeTypes.MicroPdf417` указывает Aspose.BarCode генерировать компактный вариант PDF417. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Почему это важно:** `BarcodeGenerator` — центральный объект; все последующие настройки изменяют его свойство `Parameters`. Выбор правильного `EncodeTypes` гарантирует, что штрих‑код соответствует спецификации MicroPDF417. + +## Как изменить макросимволы – шаг 2: настроить визуальные параметры + +Макросимволы — это необязательные управляющие коды, позволяющие объединять несколько символов PDF417. В примере переключаются между `Macro05` и `Macro06`. Вы также задаёте ширину модуля (`XDimension`) и количество колонок для управления размером штрих‑кода. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Зачем менять макросимвол:** Макросимвол сообщает сканеру, что этот штрих‑код является частью более крупного набора данных. Переключение демонстрирует, как одни и те же данные могут быть связаны с разными идентификаторами макросимволов. + +## Как задать штрих‑код – шаг 3: сгенерировать второй штрих‑код с другим макросимволом + +Теперь мы повторно используем тот же экземпляр `generator`, меняя только значение макросимвола. Это избавляет от необходимости создавать объект заново и демонстрирует, что параметры **how to set barcode** можно изменять во время выполнения. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Ожидаемый результат + +Запуск программы создаёт два PNG‑файла в папке проекта: + +* `MicroPdf417_Macro05.png` – штрих‑код с Macro05 +* `MicroPdf417_Macro06.png` – штрих‑код с Macro06 + +Оба изображения показывают компактный символ MicroPDF417, кодирующий `12345ABC`. Вы можете открыть PNG‑файлы в любом просмотрщике изображений, чтобы проверить визуальное качество. + +## Лучшие практики генератора штрих‑кодов в C# + +* **Reuse the generator:** Изменение `Parameters` у уже существующего экземпляра более эффективно, чем создание нового генератора для каждого штрих‑кода. +* **Set X‑dimension early:** Ширина модуля влияет на общий размер изображения; настройте её перед сохранением. +* **Validate macro usage:** Не все сканеры поддерживают макросимволы. Проверьте работу с целевым оборудованием, если планируете использовать их в продакшене. +* **Dispose resources:** `BarcodeGenerator` реализует `IDisposable`. В длительно работающем сервисе оберните его в блок `using` или вызовите `Dispose()` после завершения. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Создание изображения штрих‑кода в C# – советы по устранению неполадок + +| Симптом | Вероятная причина | Решение | +|--------------------------------------|-----------------------------------------------|---------| +| Пустой PNG‑файл | `XDimension` установлен в 0 или слишком велик | Установите разумную ширину пикселя (1‑5) | +| Штрих‑код не читается сканером | Неправильный макросимвол для сканера | Проверьте документацию сканера; используйте `MacroNone`, если не требуется | +| Исключение `ArgumentOutOfRangeException` | Количество колонок выходит за допустимый диапазон (1‑30) | Держите `Columns` в диапазоне от 1 до 30 | + +## Заключение + +Теперь вы знаете, как задавать свойства **how to set barcode**, как менять **how to change macro** символы и как **create barcode image C#** файлы с помощью Aspose.BarCode. Полный, исполняемый пример демонстрирует весь процесс от создания генератора до экспорта изображения. + +Далее изучайте другие символьные системы (`EncodeTypes.QR`, `EncodeTypes.Code128`) или внедряйте штрих‑код непосредственно в PDF‑файлы с помощью Aspose.PDF. Оба направления относятся к более широкой экосистеме **barcode generator c#** и могут быть добавлены в этот проект с минимальными изменениями кода. + +Удачной разработки, и не стесняйтесь экспериментировать с различными значениями макросимволов, размерами и форматами вывода! + +## Что стоит изучить дальше? + +Следующие руководства охватывают тесно связанные темы, построенные на техниках, продемонстрированных в этом руководстве. Каждый ресурс содержит полностью рабочие примеры кода с пошаговыми объяснениями, помогающими освоить дополнительные возможности API и исследовать альтернативные подходы к реализации в ваших проектах. + +- [Как создать тихую зону штрих‑кода для Code 16K с помощью Aspose.BarCode для .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [Как создать расширенный код текста dotcode с Aspose.BarCode для .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [Как установить границу для настройки штрих‑кода ITF-14](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/spanish/net/compact-pdf417-encoding/_index.md b/barcode/spanish/net/compact-pdf417-encoding/_index.md index 6c5e3bd09..aad6a97c7 100644 --- a/barcode/spanish/net/compact-pdf417-encoding/_index.md +++ b/barcode/spanish/net/compact-pdf417-encoding/_index.md @@ -85,6 +85,10 @@ Más allá de lo básico, aquí tienes algunos consejos prácticos para optimiza ## Tutoriales de codificación Compact PDF417 ### [Crear códigos de barras Compact PDF417](./compact-pdf417-basic-configuration/) Aprende a generar códigos de barras Compact PDF417 usando Aspose.BarCode para .NET. Guía completa con instrucciones paso a paso y ejemplos de código. +### [Generar código de barras PDF417 en C# – guía del generador de códigos de barras](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +Aprende a generar códigos de barras PDF417 en C# usando Aspose.BarCode, con ejemplos paso a paso y configuración del generador. +### [Cómo guardar imágenes de códigos de barras en C# – guía completa](./how-to-save-barcode-images-in-c-complete-guide/) +Aprende a guardar imágenes de códigos de barras generadas en C# usando Aspose.BarCode, con ejemplos paso a paso y opciones de formato. ## Preguntas frecuentes @@ -114,4 +118,4 @@ R: No se requieren fuentes externas; la biblioteca maneja todo el renderizado in {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/spanish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/spanish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..73ee26273 --- /dev/null +++ b/barcode/spanish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,113 @@ +--- +category: general +date: 2026-08-06 +description: Genera código de barras PDF417 en C# con un generador de códigos de barras. + Tutorial de PDF417 en C#. Aprende a generar código de barras PDF417, establecer + el modo binario y guardarlo como PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: es +lastmod: 2026-08-06 +og_description: Genera código de barras PDF417 en C# usando BarcodeGenerator. Aprende + a establecer la codificación binaria, configurar las opciones de PDF417 y guardar + el código de barras como una imagen PNG. +og_image_alt: Generate PDF417 barcode example +og_title: Generar código de barras PDF417 en C# – guía completa del generador de códigos + de barras +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: Generar código de barras PDF417 en C# – guía del generador de códigos de barras +url: /es/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Generar código de barras PDF417 en C# – guía del generador de códigos de barras + +Si necesitas **generar un código de barras PDF417** en una aplicación .NET, esta guía te muestra exactamente cómo hacerlo. Usando la biblioteca Aspose.BarCode puedes codificar datos binarios, cambiar el codificador PDF417 al modo binario y generar una imagen PNG de alta resolución en solo unas pocas líneas de C#. + +Este tutorial cubre todo, desde la instalación del paquete NuGet hasta la personalización de la configuración de PDF417 y el manejo de casos extremos como datos vacíos o caracteres no compatibles. Al final de la guía tendrás un ejemplo completo y ejecutable que podrás incorporar en cualquier proyecto C#. + +**Lo que aprenderás** + +* Instalar y referenciar el paquete C# PDF417 del generador de códigos de barras. +* Preparar datos binarios para la codificación. +* Configurar el `BarcodeGenerator` para la codificación PDF417 binaria. +* Guardar el código de barras generado como un archivo PNG y verificar el resultado. + +> **Prerequisites** – .NET 6.0 o posterior, Visual Studio 2022 (o cualquier IDE que prefieras), y una conexión a internet para descargar el paquete NuGet. + +--- + +## Paso 1: Instalar el paquete NuGet Aspose.BarCode + +La forma más fiable de trabajar con códigos de barras PDF417 en C# es la biblioteca **Aspose.BarCode**, que soporta completamente la codificación binaria. + +```bash +dotnet add package Aspose.BarCode +``` + +*¿Por qué este paso?* +La clase `BarcodeGenerator` se encuentra en el espacio de nombres `Aspose.BarCode`. Añadir el paquete garantiza que todas las DLL necesarias estén disponibles en tiempo de compilación y que obtengas las últimas correcciones de errores y mejoras de rendimiento. + +--- + +## Paso 2: Crear un nuevo proyecto de consola (opcional pero recomendado) + +Si estás probando el código de forma aislada, inicia una nueva aplicación de consola: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Añade el paquete al proyecto (repite el comando del Paso 1 si aún no lo has hecho). + +--- + +## Paso 3: Preparar datos binarios para codificar + +PDF417 puede codificar bytes sin procesar cuando estableces el modo de codificación a **Binary**. A continuación se muestra una matriz de bytes simple que demuestra el proceso. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*¿Por qué datos binarios?* +El modo binario te permite almacenar cualquier secuencia de bytes—útil para incrustar archivos, claves de cifrado o cargas útiles personalizadas que no son texto plano. + +--- + +## Paso 4: Inicializar el generador de códigos de barras y configurar PDF417 para el modo binario + + + +## ¿Qué deberías aprender a continuación? + +Los siguientes tutoriales cubren temas estrechamente relacionados que se basan en las técnicas demostradas en esta guía. Cada recurso incluye ejemplos de código completos y funcionales con explicaciones paso a paso para ayudarte a dominar funciones adicionales de la API y explorar enfoques de implementación alternativos en tus propios proyectos. + +- [Cómo crear códigos de barras – PDF417 compacto con Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [Cómo generar códigos de barras PDF417 – Codificación PDF417 compacto](/barcode/english/net/compact-pdf417-encoding/) +- [Cómo generar códigos de barras Aztec con relación de aspecto personalizada usando Aspose.BarCode para .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/spanish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/spanish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..867338f1e --- /dev/null +++ b/barcode/spanish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,237 @@ +--- +category: general +date: 2026-08-06 +description: Cómo guardar imágenes de códigos de barras en C# usando MicroPdf417 con + emulación de Code 128. Aprende a generar códigos de barras PDF417 y personalizar + la configuración. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: es +lastmod: 2026-08-06 +og_description: Cómo guardar imágenes de códigos de barras en C# rápidamente con MicroPdf417 + y emulación de Code 128. Sigue esta guía para generar códigos de barras PDF417 y + personalizar la salida. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: Cómo guardar imágenes de códigos de barras en C# – guía paso a paso +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: Cómo guardar imágenes de códigos de barras en C# – guía completa +url: /es/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Cómo guardar imágenes de códigos de barras en C# – guía completa + +Si necesita **cómo guardar códigos de barras** imágenes en una aplicación .NET, este tutorial le muestra una solución lista para ejecutar. Aprenderá a generar códigos de barras PDF417, aplicar emulación Code 128 y escribir los archivos PNG resultantes en disco. + +El ejemplo usa la biblioteca Aspose.BarCode para .NET, que soporta MicroPdf417, Code 128 y muchos otros estándares. Al final de la guía podrá producir archivos de códigos de barras para los modos 908, 909, 910 y 911, y entenderá cómo ajustar los parámetros visuales para un escaneo óptimo. + +## Requisitos previos + +Antes de comenzar, asegúrese de tener: + +* .NET 6.0 SDK o posterior instalado +* Visual Studio 2022 (o cualquier IDE que soporte C#) +* Una licencia activa de Aspose.BarCode para .NET (una prueba gratuita funciona para desarrollo) + +El tutorial asume familiaridad básica con proyectos de consola C#. + +## Paso 1: Crear un nuevo proyecto de consola y agregar el paquete BarCode + +Abra una terminal y ejecute los siguientes comandos: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +El comando `dotnet add package` descarga la última biblioteca Aspose.BarCode, que contiene las clases que necesita para **cómo generar pdf417** códigos de barras. + +## Paso 2: Escribir el programa completo + +Cree un archivo llamado `Program.cs` (reemplazando el existente) y pegue el código a continuación. El programa demuestra una **generador de códigos de barras con code128** emulación y muestra varias formas de **cómo guardar códigos de barras** imágenes. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Por qué funciona este código + +* **Instancia única del generador** – Reutilizar `BarcodeGenerator` evita asignaciones de memoria repetidas y mantiene la configuración consistente entre modos. +* **XDimension** – Establecer el tamaño de píxel a 2 produce una imagen clara y legible sin inflar el tamaño del archivo. +* **IsCode128Emulation** – Habilita patrones de barras estilo Code 128 dentro de un símbolo PDF417, que algunos escáneres interpretan de manera más fiable. +* **Método Save** – La sobrecarga `Save` que ve es la forma canónica de **cómo guardar códigos de barras** archivos; escribe la imagen directamente en el sistema de archivos en el formato que especifique. + +## Paso 3: Ejecutar el programa y verificar la salida + +Compilar y ejecutar el proyecto: + +```bash +dotnet run +``` + +Después de que la consola imprima los mensajes de confirmación, abra la carpeta que configuró en `outputPath`. Debería ver cuatro archivos PNG: + +* `MicroPdf417_Code128_908.png` – FNC1 + indicador alfanumérico +* `MicroPdf417_Code128_909.png` – FNC1 + indicador numérico +* `MicroPdf417_Code128_910.png` – carga útil puro Code 128 + +Cada imagen contiene un símbolo MicroPdf417 que puede ser escaneado por lectores de códigos de barras estándar. Si un escáner no logra leer un archivo, considere aumentar `XDimension.Pixels` o ajustar `Pdf417.Columns` para que coincida con la resolución del dispositivo objetivo. + +## Paso 4: Variaciones comunes y casos límite + +### Cambiar el formato de imagen + +El enumerado `BarCodeImageFormat` soporta PNG, JPEG, BMP y TIFF. Reemplace `BarCodeImageFormat.Png` por `BarCodeImageFormat.Jpeg` si necesita un tamaño de archivo menor para entrega web. + +### Generar un PDF417 de tamaño completo en lugar de MicroPdf417 + +Si su caso de uso requiere el estándar PDF417 más grande, instancie el generador con `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +Recuerde ajustar `Pdf417.Rows` y `Pdf417.Columns` para cumplir con las especificaciones ISO/IEC 15417. + +### Manejo de caracteres especiales + +El separador de grupo (`\u001d`) es necesario para los Identificadores de Aplicación. Si sus datos contienen otros caracteres de control, escápelos usando notación Unicode (p. ej., `\u001c` para separador de archivo) para evitar errores en tiempo de ejecución. + +### Consideraciones de licencia + +Ejecutar el código sin una licencia genera una marca de agua en las imágenes generadas. Aplique su licencia al inicio en `Main`: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Paso 5: Consejos para uso en producción + +* **Procesamiento por lotes** – Envuelva la lógica de guardado en un bucle que lea filas de un CSV o base de datos; reutilice la misma instancia de `BarcodeGenerator` para mejorar el rendimiento. +* **Seguridad en subprocesos** – `BarcodeGenerator` no es seguro para subprocesos. Cree una instancia separada por subproceso si paraleliza la creación de códigos de barras. +* **Manejo de errores** – Encierre las llamadas a `Save` en bloques `try…catch` para capturar excepciones de E/S, especialmente al escribir en recursos compartidos de red. + +## Conclusión + +Ahora sabe **cómo guardar códigos de barras** imágenes en C# usando Aspose.BarCode, **cómo generar pdf417** símbolos con emulación Code 128, y cómo configurar un **generador de códigos de barras con code128** para múltiples modos. El ejemplo completo y ejecutable muestra cada paso, desde la configuración del proyecto hasta los archivos PNG finales. + +A continuación, explore temas relacionados como **incrustar códigos de barras en documentos PDF**, **crear códigos QR con colores personalizados** o **integrar la generación de códigos de barras en APIs ASP.NET Core**. Estas extensiones se basan en los mismos principios cubiertos aquí y le permiten automatizar una amplia gama de flujos de trabajo de escaneo. + +## ¿Qué debería aprender a continuación? + +Los siguientes tutoriales cubren temas estrechamente relacionados que se basan en las técnicas demostradas en esta guía. Cada recurso incluye ejemplos de código completos y funcionales con explicaciones paso a paso para ayudarle a dominar características adicionales de la API y explorar enfoques de implementación alternativos en sus propios proyectos. + +- [Cómo generar códigos de barras PDF417 – Codificación PDF417 compacta](/barcode/english/net/compact-pdf417-encoding/) +- [Cómo guardar PNG usando DataMatrix C40 con Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [Cómo generar códigos de barras - Tipos de códigos de barras unidimensionales](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/spanish/net/one-dimensional-barcode-types/_index.md b/barcode/spanish/net/one-dimensional-barcode-types/_index.md index ca6d74659..986d0dccd 100644 --- a/barcode/spanish/net/one-dimensional-barcode-types/_index.md +++ b/barcode/spanish/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ Aprenda cómo generar códigos de barras en .NET con Aspose.BarCode para .NET. E Aprenda a manejar excepciones mientras genera códigos de barras unidimensionales utilizando Aspose.BarCode para .NET. Esta guía paso a paso garantiza soluciones de códigos de barras tolerantes a errores. ¡Empieza ahora! ### [Configuración unidimensional de relación ancha-estrecha](./one-dimensional-wide-narrow-ratio-configuration/) Genere códigos de barras personalizados fácilmente con Aspose.BarCode para .NET. Guía paso a paso para la configuración unidimensional de relación ancha-estrecha. +### [Cómo establecer código de barras en C# – guía completa de Aspose.BarCode](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Aprenda a configurar códigos de barras en C# usando Aspose.BarCode paso a paso. ## Conclusión @@ -89,4 +91,4 @@ Con este artículo, no sólo obtendrá conocimientos sobre varios tipos de códi {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/spanish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/spanish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..4d60468ec --- /dev/null +++ b/barcode/spanish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,161 @@ +--- +category: general +date: 2026-08-06 +description: Cómo configurar códigos de barras usando Aspose.BarCode en C#. Aprende + cómo cambiar los caracteres macro y crear una imagen de código de barras en C# con + código paso a paso. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: es +lastmod: 2026-08-06 +og_description: Cómo configurar un código de barras con Aspose.BarCode en C#. Esta + guía muestra cómo cambiar los caracteres macro y crear rápidamente una imagen de + código de barras en C#. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: Cómo establecer un código de barras en C# – tutorial de Aspose.BarCode +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: Cómo establecer código de barras en C# – guía completa de Aspose.BarCode +url: /es/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Cómo establecer código de barras en C# – guía completa de Aspose.BarCode + +Si necesitas **cómo establecer código de barras** en una aplicación .NET, este tutorial te muestra los pasos exactos usando Aspose.BarCode. Verás cómo cambiar los caracteres macro, ajustar los parámetros visuales y **crear archivos de imagen de código de barras C#** que pueden guardarse directamente en disco. + +La guía cubre todo, desde la instalación de la biblioteca hasta la generación de dos códigos de barras MicroPDF417 con diferentes valores macro. No se requiere documentación externa; puedes copiar el código, ejecutarlo y verificar la salida PNG de inmediato. + +## Requisitos previos + +* .NET 6.0 o posterior (el ejemplo usa un proyecto de consola) +* Visual Studio 2022 o cualquier IDE de C# +* Una licencia activa de Aspose.BarCode (una evaluación gratuita funciona para pruebas) +* Conocimientos básicos de la sintaxis de C# + +También necesitarás el paquete NuGet: + +```bash +dotnet add package Aspose.BarCode +``` + +## Cómo establecer parámetros del código de barras – paso 1: crear el generador + +La primera acción es instanciar un `BarcodeGenerator` con la simbología y los datos deseados. Usar `EncodeTypes.MicroPdf417` indica a Aspose.BarCode que produzca una variante compacta de PDF417. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Por qué es importante:** `BarcodeGenerator` es el objeto central; todas las configuraciones posteriores modifican su propiedad `Parameters`. Seleccionar el `EncodeTypes` correcto garantiza que el código de barras cumpla con la especificación MicroPDF417. + +## Cómo cambiar caracteres macro – paso 2: ajustar parámetros visuales + +Los caracteres macro son códigos de control opcionales que permiten concatenar múltiples símbolos PDF417. El ejemplo alterna entre `Macro05` y `Macro06`. También se establece el ancho del módulo (`XDimension`) y el número de columnas para controlar el tamaño del código de barras. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Por qué cambias el macro:** El carácter macro indica a un escáner que este código de barras forma parte de un conjunto de datos más grande. Cambiarlo demuestra cómo los mismos datos pueden estar vinculados a diferentes identificadores macro. + +## Cómo establecer código de barras – paso 3: generar un segundo código de barras con un macro diferente + +Ahora reutilizamos la misma instancia de `generator`, solo cambiando el valor del macro. Esto evita recrear el objeto y demuestra que los parámetros de **cómo establecer código de barras** pueden modificarse en tiempo de ejecución. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Salida esperada + +Ejecutar el programa crea dos archivos PNG en la carpeta del proyecto: + +* `MicroPdf417_Macro05.png` – código de barras con Macro05 +* `MicroPdf417_Macro06.png` – código de barras con Macro06 + +Ambas imágenes muestran un símbolo compacto MicroPDF417 que codifica `12345ABC`. Puedes abrir los archivos PNG con cualquier visor de imágenes para verificar la calidad visual. + +## Mejores prácticas del generador de códigos de barras C# + +* **Reutilizar el generador:** Cambiar `Parameters` en una instancia existente es más eficiente que crear un nuevo generador para cada código de barras. +* **Establecer X‑dimension temprano:** El ancho del módulo influye en el tamaño total de la imagen; ajústalo antes de guardar. +* **Validar el uso de macro:** No todos los escáneres admiten caracteres macro. Prueba con tu hardware objetivo si planeas usarlos en producción. +* **Liberar recursos:** `BarcodeGenerator` implementa `IDisposable`. En un servicio de larga duración, envuélvelo en un bloque `using` o llama a `Dispose()` cuando termines. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Crear imagen de código de barras C# – consejos de solución de problemas + +| Síntoma | Causa probable | Solución | +|--------------------------------------|---------------------------------------------|----------| +| Archivo PNG en blanco | `XDimension` establecido en 0 o valor muy alto | Usa un ancho de píxel razonable (1‑5) | +| Código de barras ilegible por el escáner | Carácter macro incorrecto para el escáner | Verifica la documentación del escáner; usa `MacroNone` si no es necesario | +| Excepción `ArgumentOutOfRangeException` | Recuento de columnas fuera del rango permitido (1‑30) | Mantén `Columns` entre 1 y 30 | + +## Conclusión + +Ahora sabes cómo **establecer propiedades del código de barras**, cómo **cambiar caracteres macro**, y cómo **crear archivos de imagen de código de barras C#** usando Aspose.BarCode. El ejemplo completo y ejecutable demuestra el flujo de trabajo completo desde la creación del generador hasta la exportación de la imagen. + +A continuación, explora otras simbologías (`EncodeTypes.QR`, `EncodeTypes.Code128`) o incrusta el código de barras directamente en PDFs con Aspose.PDF. Ambos temas forman parte del ecosistema más amplio de **generador de códigos de barras c#** y pueden añadirse a este proyecto con cambios mínimos de código. + +¡Feliz codificación, y siéntete libre de experimentar con diferentes valores macro, dimensiones y formatos de salida! + +## ¿Qué deberías aprender a continuación? + +Los siguientes tutoriales cubren temas estrechamente relacionados que se basan en las técnicas demostradas en esta guía. Cada recurso incluye ejemplos de código completos y funcionales con explicaciones paso a paso para ayudarte a dominar funciones adicionales de la API y explorar enfoques de implementación alternativos en tus propios proyectos. + +- [Cómo crear zona silenciosa de código de barras para Code 16K usando Aspose.BarCode para .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [Cómo crear texto de código extendido dotcode con Aspose.BarCode para .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [Cómo establecer borde para personalización de código de barras ITF-14](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/swedish/net/compact-pdf417-encoding/_index.md b/barcode/swedish/net/compact-pdf417-encoding/_index.md index cc613e6f8..a3222faf4 100644 --- a/barcode/swedish/net/compact-pdf417-encoding/_index.md +++ b/barcode/swedish/net/compact-pdf417-encoding/_index.md @@ -42,7 +42,7 @@ Innan vi dyker ner i koden, låt oss gå igenom grunderna: - **Datastruktur:** Information delas in i kodord och ordnas sedan i rader och kolumner. - **Felkorrigering:** PDF417 använder Reed‑Solomon‑felkorrigering; du kan välja den nivå som balanserar redundans och storlek. -- **Kompakt läge:** Tar bort dig utfyllnad, vilket görs i en mindre streckkod utan att offra sbarhet. +- **Kompakt läge:** Tar bort dig utfyllnad, vilket är gjort i en mindre streckkod utan att offra sbarhet. ### PDF417 Felkorrigeringsalternativ Aspose.BarCode låter dig ange egenskapen `Pdf417ErrorCorrectionLevel` (0-8). Högre nivåer ökar redundansen, vilket är användbart i hårda miljöer som industriell avläsning. Välj ett nivå baserat på din risktolerans och utrymmesbegränsningar. @@ -84,6 +84,10 @@ Utöver grunderna, här är några praktiska tips för att effektivisera ditt ar ## Kompakt PDF417-kodningshandledning ### [Skapa kompakta PDF417-streckkoder](./compact-pdf417-basic-configuration/) Lär dig hur du genererar Compact PDF417‑streckkoder med Aspose.BarCode för .NET. Omfattande guide med steg‑för‑steg‑instruktioner och kodexempel. +### [Generera PDF417-streckkod i C# – streckkodsgeneratorguide](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +Lär dig hur du skapar PDF417‑streckkoder i C# med Aspose.BarCode‑generatorn. +### [Hur man sparar streckkodsbilder i C# – komplett guide](./how-to-save-barcode-images-in-c-complete-guide/) +Lär dig hur du sparar genererade streckkodsbilder i C# med Aspose.BarCode, inklusive format och kodexempel. ## Vanliga frågor @@ -113,4 +117,4 @@ A: Inga externa typsnitt krävs; biblioteket hanterar all rendering internt. {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/swedish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/swedish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..afcc49566 --- /dev/null +++ b/barcode/swedish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,111 @@ +--- +category: general +date: 2026-08-06 +description: Generera PDF417‑streckkod i C# med en streckkodsgenerator C# PDF417‑handledning. + Lär dig hur du genererar PDF417‑streckkod, ställer in binärt läge och sparar som + PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: sv +lastmod: 2026-08-06 +og_description: Generera PDF417‑streckkod i C# med BarcodeGenerator. Lär dig att ställa + in binär kodning, konfigurera PDF417‑alternativ och spara streckkoden som en PNG‑bild. +og_image_alt: Generate PDF417 barcode example +og_title: Generera PDF417-streckkod i C# – komplett guide för streckkodsgenerator +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: Generera PDF417‑streckkod i C# – guide för streckkodsgenerator +url: /sv/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Generera PDF417‑streckkod i C# – guide för streckkodsgenerator + +Om du behöver **generera PDF417‑streckkod** i en .NET‑applikation visar den här guiden exakt hur. Med Aspose.BarCode‑biblioteket kan du koda binär data, växla PDF417‑kodaren till binärt läge och skapa en högupplöst PNG‑bild med bara några rader C#. + +Denna handledning täcker allt från installation av NuGet‑paketet till anpassning av PDF417‑inställningarna och hantering av kantfall som tom data eller tecken som inte stöds. I slutet av guiden har du ett komplett, körbart exempel som du kan lägga in i vilket C#‑projekt som helst. + +**Vad du kommer att lära dig** + +* Installera och referera barcode‑generatorns C# PDF417‑paket. +* Förbered binär data för kodning. +* Konfigurera `BarcodeGenerator` för binär PDF417‑kodning. +* Spara den genererade streckkoden som en PNG‑fil och verifiera resultatet. + +> **Förutsättningar** – .NET 6.0 eller senare, Visual Studio 2022 (eller någon annan IDE du föredrar), och en internetanslutning för att hämta NuGet‑paketet. + +--- + +## Steg 1: Installera Aspose.BarCode NuGet‑paketet + +Det mest pålitliga sättet att arbeta med PDF417‑streckkoder i C# är **Aspose.BarCode**‑biblioteket, som fullt stödjer binär kodning. + +```bash +dotnet add package Aspose.BarCode +``` + +*Varför detta steg?* +`BarcodeGenerator`‑klassen finns i `Aspose.BarCode`‑namnrymden. Att lägga till paketet säkerställer att alla nödvändiga DLL‑filer är tillgängliga vid kompilering och att du får de senaste buggfixarna och prestandaförbättringarna. + +--- + +## Steg 2: Skapa ett nytt konsolprojekt (valfritt men rekommenderat) + +Om du testar koden isolerat, starta ett nytt konsolprogram: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Lägg till paketet i projektet (upprepa kommandot från Steg 1 om du inte redan har gjort det). + +--- + +## Steg 3: Förbered binär data för kodning + +PDF417 kan koda råa byte när du ställer in kodningsläget till **Binary**. Nedan är en enkel byte‑array som demonstrerar processen. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Varför binär data?* +Binärt läge låter dig lagra vilken byte‑sekvens som helst—användbart för att bädda in filer, krypteringsnycklar eller anpassade nyttolaster som inte är ren text. + +--- + +## Steg 4: Initiera streckkodsgeneratorn och konfigurera PDF417 för binärt läge + + + +## Vad du bör lära dig härnäst + +Följande handledningar täcker närliggande ämnen som bygger på teknikerna som demonstreras i den här guiden. Varje resurs innehåller kompletta fungerande kodexempel med steg‑för‑steg‑förklaringar för att hjälpa dig bemästra ytterligare API‑funktioner och utforska alternativa implementationsmetoder i dina egna projekt. + +- [Hur man skapar streckkod – kompakt PDF417 med Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [Hur man genererar PDF417‑streckkoder – kompakt PDF417‑kodning](/barcode/english/net/compact-pdf417-encoding/) +- [Hur man genererar Aztec‑streckkod med anpassat bildförhållande med Aspose.BarCode för .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/swedish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/swedish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..9f3728f2a --- /dev/null +++ b/barcode/swedish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,233 @@ +--- +category: general +date: 2026-08-06 +description: Hur man sparar streckkodsbilder i C# med MicroPdf417 och Code 128‑emulering. + Lär dig hur du genererar PDF417‑streckkoder och anpassar inställningarna. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: sv +lastmod: 2026-08-06 +og_description: Hur du snabbt sparar streckkodsbilder i C# med MicroPdf417 och Code 128‑emulering. + Följ den här guiden för att generera PDF417‑streckkoder och anpassa utskriften. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: Hur man sparar streckkodsbilder i C# – steg‑för‑steg‑guide +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: Hur man sparar streckkodsbilder i C# – komplett guide +url: /sv/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hur man sparar streckkodsbilder i C# – komplett guide + +Om du behöver **hur man sparar streckkod** bilder i en .NET-applikation, visar den här handledningen en färdig‑att‑köra lösning. Du kommer att lära dig hur du genererar PDF417‑streckkoder, tillämpar Code 128‑emulering och skriver de resulterande PNG‑filerna till disk. + +Exemplet använder Aspose.BarCode for .NET-biblioteket, som stöder MicroPdf417, Code 128 och många andra standarder. I slutet av guiden kan du producera streckkodsfiler för lägen 908, 909, 910 och 911, och du kommer att förstå hur du justerar visuella parametrar för optimal avläsning. + +## Förutsättningar + +* .NET 6.0 SDK eller senare installerat +* Visual Studio 2022 (eller någon IDE som stöder C#) +* En aktiv Aspose.BarCode for .NET-licens (en gratis provversion fungerar för utveckling) + +Handledningen förutsätter grundläggande kunskap om C#-konsolprojekt. + +## Steg 1: Skapa ett nytt konsolprojekt och lägg till BarCode‑paketet + +Öppna en terminal och kör följande kommandon: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +`dotnet add package`‑kommandot laddar ner det senaste Aspose.BarCode‑biblioteket, som innehåller de klasser du behöver för att **hur man genererar pdf417** streckkoder. + +## Steg 2: Skriv det kompletta programmet + +Skapa en fil med namnet `Program.cs` (ersätt den befintliga) och klistra in koden nedan. Programmet demonstrerar en **streckkodsgenerator med code128**‑emulering och visar flera sätt att **hur man sparar streckkod** bilder. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Varför den här koden fungerar + +* **Single generator instance** – Att återanvända `BarcodeGenerator` undviker upprepade minnesallokeringar och håller konfigurationen konsekvent över lägen. +* **XDimension** – Att sätta pixelstorleken till 2 ger en klar, läsbar bild utan att öka filstorleken. +* **IsCode128Emulation** – Aktiverar Code 128‑liknande stapelmönster i en PDF417‑symbol, vilket vissa läsare tolkar mer pålitligt. +* **Save method** – `Save`‑överladdningen du ser är det kanoniska sättet att **hur man sparar streckkod** filer; den skriver bilden direkt till filsystemet i det format du anger. + +## Steg 3: Kör programmet och verifiera resultatet + +Bygg och kör projektet: + +```bash +dotnet run +``` + +Efter att konsolen skrivit ut bekräftelsemeddelandena, öppna mappen du angav i `outputPath`. Du bör se fyra PNG‑filer: + +* `MicroPdf417_Code128_908.png` – FNC1 + alfanumerisk indikator +* `MicroPdf417_Code128_909.png` – FNC1 + numerisk indikator +* `MicroPdf417_Code128_910.png` – ren Code 128‑payload + +Varje bild innehåller en MicroPdf417‑symbol som kan läsas av vanliga streckkodsläsare. Om en läsare misslyckas med att läsa en fil, överväg att öka `XDimension.Pixels` eller justera `Pdf417.Columns` för att matcha målapparatens upplösning. + +## Steg 4: Vanliga variationer och kantfall + +### Ändra bildformatet + +`BarCodeImageFormat`‑enumet stöder PNG, JPEG, BMP och TIFF. Ersätt `BarCodeImageFormat.Png` med `BarCodeImageFormat.Jpeg` om du behöver en mindre filstorlek för webbdistribution. + +### Generera en full‑storlek PDF417 istället för MicroPdf417 + +Om ditt användningsfall kräver den större PDF417‑standarden, skapa generatorn med `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +Kom ihåg att justera `Pdf417.Rows` och `Pdf417.Columns` för att uppfylla ISO/IEC 15417‑specifikationerna. + +### Hantera specialtecken + +Gruppseparatorn (`\u001d`) krävs för Application Identifiers. Om dina data innehåller andra kontrolltecken, escapera dem med Unicode‑notation (t.ex. `\u001c` för filseparator) för att undvika körningsfel. + +### Licensöverväganden + +Att köra koden utan licens ger ett vattenmärke på de genererade bilderna. Applicera din licens tidigt i `Main`: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Steg 5: Tips för produktionsanvändning + +* **Batch processing** – Inneslut sparlogiken i en loop som läser rader från en CSV‑fil eller databas; återanvänd samma `BarcodeGenerator`‑instans för prestanda. +* **Thread safety** – `BarcodeGenerator` är inte trådsäker. Skapa en separat instans per tråd om du parallellisera streckkodsskapandet. +* **Error handling** – Inneslut `Save`‑anropen i `try…catch`‑block för att fånga I/O‑undantag, särskilt när du skriver till nätverksdelningar. + +## Slutsats + +Du vet nu hur man **hur man sparar streckkod** bilder i C# med Aspose.BarCode, hur man **hur man genererar pdf417** symboler med Code 128‑emulering, och hur man konfigurerar en **streckkodsgenerator med code128** för flera lägen. Det kompletta, körbara exemplet demonstrerar varje steg från projektuppsättning till slutliga PNG‑filer. + +Nästa steg är att utforska relaterade ämnen som **embedding barcodes in PDF documents**, **creating QR codes with custom colors**, eller **integrating barcode generation into ASP.NET Core APIs**. Dessa tillägg bygger på samma principer som behandlats här och låter dig automatisera ett brett spektrum av avläsningsarbetsflöden. + +## Vad bör du lära dig härnäst? + +Följande handledningar täcker närbesläktade ämnen som bygger på teknikerna som demonstrerats i den här guiden. Varje resurs innehåller kompletta fungerande kodexempel med steg‑för‑steg‑förklaringar för att hjälpa dig bemästra ytterligare API‑funktioner och utforska alternativa implementationsmetoder i dina egna projekt. + +- [Hur man genererar PDF417‑streckkoder – Kompakt PDF417‑kodning](/barcode/english/net/compact-pdf417-encoding/) +- [Hur man sparar PNG med DataMatrix C40 med Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [Hur man genererar streckkod – Endimensionella streckkodstyper](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/swedish/net/one-dimensional-barcode-types/_index.md b/barcode/swedish/net/one-dimensional-barcode-types/_index.md index e2ec8e481..10b7532ac 100644 --- a/barcode/swedish/net/one-dimensional-barcode-types/_index.md +++ b/barcode/swedish/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ tjäna hur man genererar streckkoder i .NET med Aspose.BarCode för .NET. Den h Lär dig hur du hanterar undantag samtidigt som du genererar endimensionella streckkoder med Aspose.BarCode för .NET. Denna steg-för-steg-guide säkerställer feltoleranta streckkodslösningar. Börja nu! ### [Endimensionell Wide-Narrow Ratio Configuration](./one-dimensional-wide-narrow-ratio-configuration/) Generera anpassade streckkoder enkelt med Aspose.BarCode för .NET. Steg-för-steg-guide för endimensionell bred-smal konfiguration. +### [Hur man ställer in streckkod i C# – komplett Aspose.BarCode-guide](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Lär dig hur du konfigurerar streckkoder i C# med en komplett Aspose.BarCode-guide. ## Slutsats @@ -89,4 +91,4 @@ Med den här artikeln kommer du inte bara att få kunskap om olika endimensionel {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/swedish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/swedish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..695f5655b --- /dev/null +++ b/barcode/swedish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,161 @@ +--- +category: general +date: 2026-08-06 +description: Hur man ställer in streckkod med Aspose.BarCode i C#. Lär dig hur du + ändrar makrotecken och skapar streckkodsbilder i C# med steg‑för‑steg‑kod. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: sv +lastmod: 2026-08-06 +og_description: Hur man ställer in streckkod med Aspose.BarCode i C#. Denna guide + visar hur man ändrar makrotecken och snabbt skapar en streckkodsbild i C#. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: Hur man ställer in streckkod i C# – Aspose.BarCode-handledning +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: Hur man sätter streckkod i C# – komplett Aspose.BarCode-guide +url: /sv/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Hur man ställer in streckkod i C# – komplett Aspose.BarCode-guide + +Om du behöver **how to set barcode** i en .NET-applikation, visar den här handledningen de exakta stegen med Aspose.BarCode. Du kommer att se hur du ändrar makrokartor, justerar visuella parametrar och **create barcode image C#**-filer som kan sparas direkt till disk. + +Guiden täcker allt från installation av biblioteket till generering av två MicroPDF417‑streckkoder med olika makrovärden. Ingen extern dokumentation krävs – du kan kopiera koden, köra den och verifiera PNG‑utdata omedelbart. + +## Förutsättningar + +Innan du börjar, se till att du har: + +* .NET 6.0 eller senare (exemplet använder ett konsolprojekt) +* Visual Studio 2022 eller någon C#‑IDE +* En aktiv Aspose.BarCode-licens (en gratis utvärdering fungerar för testning) +* Grundläggande kunskap om C#‑syntax + +Du kommer också att behöva NuGet‑paketet: + +```bash +dotnet add package Aspose.BarCode +``` + +## Hur man ställer in streckkodparametrar – steg 1: skapa generatorn + +Den första åtgärden är att instansiera en `BarcodeGenerator` med önskad symbologi och data. Att använda `EncodeTypes.MicroPdf417` talar om för Aspose.BarCode att producera en kompakt PDF417‑variant. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Varför detta är viktigt:** `BarcodeGenerator` är det centrala objektet; alla senare inställningar modifierar dess `Parameters`‑egenskap. Att välja rätt `EncodeTypes` säkerställer att streckkoden följer MicroPDF417‑specifikationen. + +## Hur man ändrar makrokartor – steg 2: justera visuella parametrar + +Makrokartor är valfria kontrollkoder som låter dig kedja ihop flera PDF417‑symboler. Exemplet växlar mellan `Macro05` och `Macro06`. Du ställer också in modulbredden (`XDimension`) och antalet kolumner för att kontrollera streckkodens storlek. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Varför du ändrar makrot:** Makrokartan talar om för en skanner att denna streckkod är en del av en större datamängd. Att växla den visar hur samma data kan kopplas till olika makroidentifierare. + +## Hur man ställer in streckkod – steg 3: generera en andra streckkod med ett annat makro + +Nu återanvänder vi samma `generator`‑instans och byter bara makrovärdet. Detta undviker att skapa objektet på nytt och demonstrerar att **how to set barcode**‑parametrar kan ändras vid körning. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Förväntat resultat + +När programmet körs skapas två PNG‑filer i projektmappen: + +* `MicroPdf417_Macro05.png` – streckkod med Macro05 +* `MicroPdf417_Macro06.png` – streckkod med Macro06 + +Båda bilderna visar en kompakt MicroPDF417‑symbol som kodar `12345ABC`. Du kan öppna PNG‑filerna med vilken bildvisare som helst för att verifiera den visuella kvaliteten. + +## Bästa praxis för Barcode‑generator C# + +* **Återanvänd generatorn:** Att ändra `Parameters` på en befintlig instans är mer effektivt än att skapa en ny generator för varje streckkod. +* **Ställ in X‑dimension tidigt:** Modulbredden påverkar den totala bildstorleken; justera den innan du sparar. +* **Validera makroanvändning:** Inte alla skannrar stödjer makrokartor. Testa med din mål‑hardware om du planerar att använda dem i produktion. +* **Frigör resurser:** `BarcodeGenerator` implementerar `IDisposable`. I en långvarig tjänst, omslut den i ett `using`‑block eller anropa `Dispose()` när du är klar. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Skapa streckkodbild C# – felsökningstips + +| Symptom | Trolig orsak | Åtgärd | +|--------------------------------------|-------------------------------------------|--------| +| Tom PNG-fil | `XDimension` satt till 0 eller mycket högt värde | Använd en rimlig pixelbredd (1‑5) | +| Streckkod oläslig för skanner | Fel makrokod för skannern | Verifiera skannerdokumentation; använd `MacroNone` om det inte behövs | +| Undantag `ArgumentOutOfRangeException` | Kolumnantal utanför tillåtet intervall (1‑30) | Håll `Columns` mellan 1 och 30 | + +## Slutsats + +Du vet nu hur du **how to set barcode**‑egenskaper, **how to change macro**‑karaktärer, och hur du **create barcode image C#**‑filer med Aspose.BarCode. Det kompletta, körbara exemplet demonstrerar hela arbetsflödet från generator‑skapande till bildexport. + +Nästa steg är att utforska andra symbologier (`EncodeTypes.QR`, `EncodeTypes.Code128`) eller bädda in streckkoden direkt i PDF‑filer med Aspose.PDF. Båda ämnena faller under det bredare **barcode generator c#**‑ekosystemet och kan läggas till i detta projekt med minimala kodändringar. + +Lycka till med kodandet, och känn dig fri att experimentera med olika makrovärden, dimensioner och exportformat! + +## Vad bör du lära dig härnäst? + +De följande handledningarna täcker nära besläktade ämnen som bygger på teknikerna som demonstrerats i den här guiden. Varje resurs innehåller kompletta fungerande kodexempel med steg‑för‑steg‑förklaringar för att hjälpa dig bemästra ytterligare API‑funktioner och utforska alternativa implementationsmetoder i dina egna projekt. + +- [Hur man skapar tyst zon för streckkod Code 16K med Aspose.BarCode för .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [Hur man skapar dotcode utökad kodtext med Aspose.BarCode för .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [Hur man ställer in kant för ITF-14 streckkodsanpassning](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/thai/net/compact-pdf417-encoding/_index.md b/barcode/thai/net/compact-pdf417-encoding/_index.md index 642025381..15bce88b8 100644 --- a/barcode/thai/net/compact-pdf417-encoding/_index.md +++ b/barcode/thai/net/compact-pdf417-encoding/_index.md @@ -84,6 +84,10 @@ Aspose.BarCode ให้คุณตั้งค่าคุณสมบัต ## บทแนะนำการเข้ารหัส Compact PDF417 ### [Creating Compact PDF417 Barcodes](./compact-pdf417-basic-configuration/) เรียนรู้วิธีสร้างบาร์โค้ด Compact PDF417 ด้วย Aspose.BarCode for .NET คู่มือครบถ้วนพร้อมขั้นตอนและตัวอย่างโค้ด +### [สร้างบาร์โค้ด PDF417 ด้วย C# – คู่มือผู้สร้างบาร์โค้ด](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +เรียนรู้วิธีสร้างบาร์โค้ด PDF417 ด้วย C# โดยใช้ Aspose.BarCode Generator อย่างละเอียด +### [วิธีบันทึกภาพบาร์โค้ดใน C# – คู่มือฉบับสมบูรณ์](./how-to-save-barcode-images-in-c-complete-guide/) +เรียนรู้วิธีบันทึกภาพบาร์โค้ดใน C# อย่างละเอียด ## คำถามที่พบบ่อย @@ -113,4 +117,4 @@ A: ไม่จำเป็นต้องใช้ฟอนต์ภายน {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/thai/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/thai/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..0b7fe1e53 --- /dev/null +++ b/barcode/thai/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,110 @@ +--- +category: general +date: 2026-08-06 +description: สร้างบาร์โค้ด PDF417 ด้วย C# ด้วยเครื่องมือสร้างบาร์โค้ด C# PDF417 tutorial + เรียนรู้วิธีสร้างบาร์โค้ด PDF417 ตั้งค่าโหมดไบนารี และบันทึกเป็น PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: th +lastmod: 2026-08-06 +og_description: สร้างบาร์โค้ด PDF417 ด้วย C# โดยใช้ BarcodeGenerator. เรียนรู้การตั้งค่าการเข้ารหัสแบบไบนารี, + กำหนดตัวเลือก PDF417, และบันทึกบาร์โค้ดเป็นภาพ PNG. +og_image_alt: Generate PDF417 barcode example +og_title: สร้างบาร์โค้ด PDF417 ด้วย C# – คู่มือเต็มสำหรับการสร้างบาร์โค้ด +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: สร้างบาร์โค้ด PDF417 ด้วย C# – คู่มือการสร้างบาร์โค้ด +url: /th/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# สร้างบาร์โค้ด PDF417 ด้วย C# – คู่มือการสร้างบาร์โค้ด + +หากคุณต้องการ **สร้างบาร์โค้ด PDF417** ในแอปพลิเคชัน .NET คู่มือนี้จะแสดงให้คุณเห็นขั้นตอนอย่างละเอียด ด้วยไลบรารี Aspose.BarCode คุณสามารถเข้ารหัสข้อมูลไบนารี, สลับโหมดการเข้ารหัส PDF417 เป็นโหมดไบนารี, และส่งออกภาพ PNG ความละเอียดสูงได้เพียงไม่กี่บรรทัดของ C#. + +บทแนะนำนี้ครอบคลุมทุกอย่างตั้งแต่การติดตั้งแพ็กเกจ NuGet ไปจนถึงการปรับแต่งการตั้งค่า PDF417 และการจัดการกรณีขอบเช่นข้อมูลว่างหรืออักขระที่ไม่รองรับ เมื่อจบคู่มือคุณจะได้ตัวอย่างที่สมบูรณ์และสามารถรันได้ซึ่งคุณสามารถนำไปใช้ในโปรเจกต์ C# ใดก็ได้. + +**สิ่งที่คุณจะได้เรียนรู้** + +* ติดตั้งและอ้างอิงแพ็กเกจสร้างบาร์โค้ด C# PDF417. +* เตรียมข้อมูลไบนารีสำหรับการเข้ารหัส. +* กำหนดค่า `BarcodeGenerator` สำหรับการเข้ารหัส PDF417 แบบไบนารี. +* บันทึกบาร์โค้ดที่สร้างเป็นไฟล์ PNG และตรวจสอบผลลัพธ์. + +> **ข้อกำหนดเบื้องต้น** – .NET 6.0 หรือใหม่กว่า, Visual Studio 2022 (หรือ IDE ใดก็ได้ที่คุณชอบ), และการเชื่อมต่ออินเทอร์เน็ตเพื่อดึงแพ็กเกจ NuGet. + +--- + +## ขั้นตอนที่ 1: ติดตั้งแพ็กเกจ Aspose.BarCode NuGet + +วิธีที่เชื่อถือได้ที่สุดในการทำงานกับบาร์โค้ด PDF417 ใน C# คือไลบรารี **Aspose.BarCode** ซึ่งรองรับการเข้ารหัสแบบไบนารีอย่างเต็มที่. + +```bash +dotnet add package Aspose.BarCode +``` + +*ทำไมต้องทำขั้นตอนนี้?* +คลาส `BarcodeGenerator` อยู่ในเนมสเปซ `Aspose.BarCode` การเพิ่มแพ็กเกจนี้ทำให้มั่นใจว่า DLL ที่จำเป็นทั้งหมดพร้อมใช้งานในเวลาคอมไพล์และคุณจะได้รับการแก้ไขบั๊กและการปรับปรุงประสิทธิภาพล่าสุด. + +--- + +## ขั้นตอนที่ 2: สร้างโปรเจกต์คอนโซลใหม่ (ไม่บังคับแต่แนะนำ) + +หากคุณกำลังทดสอบโค้ดแยกส่วน ให้เริ่มแอปคอนโซลใหม่: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +เพิ่มแพ็กเกจลงในโปรเจกต์ (ทำซ้ำคำสั่งจากขั้นตอน 1 หากยังไม่ได้ทำ). + +--- + +## ขั้นตอนที่ 3: เตรียมข้อมูลไบนารีสำหรับการเข้ารหัส + +PDF417 สามารถเข้ารหัสไบต์ดิบได้เมื่อคุณตั้งค่าโหมดการเข้ารหัสเป็น **Binary** ด้านล่างเป็นอาร์เรย์ไบต์ง่าย ๆ ที่แสดงกระบวนการ. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*ทำไมต้องใช้ข้อมูลไบนารี?* +โหมดไบนารีทำให้คุณสามารถเก็บลำดับไบต์ใด ๆ — มีประโยชน์สำหรับฝังไฟล์, กุญแจการเข้ารหัส, หรือข้อมูลกำหนดเองที่ไม่ใช่ข้อความธรรมดา. + +--- + +## ขั้นตอนที่ 4: เริ่มต้นตัวสร้างบาร์โค้ดและกำหนดค่า PDF417 ให้เป็นโหมดไบนารี + + + +## สิ่งที่คุณควรเรียนต่อไป? + +บทแนะนำต่อไปนี้ครอบคลุมหัวข้อที่เกี่ยวข้องอย่างใกล้ชิดซึ่งต่อยอดจากเทคนิคที่แสดงในคู่มือนี้ แต่ละแหล่งข้อมูลรวมตัวอย่างโค้ดที่ทำงานได้สมบูรณ์พร้อมคำอธิบายทีละขั้นตอนเพื่อช่วยให้คุณเชี่ยวชาญฟีเจอร์ API เพิ่มเติมและสำรวจวิธีการนำไปใช้แบบอื่นในโปรเจกต์ของคุณ. + +- [วิธีสร้างบาร์โค้ด – Compact PDF417 ด้วย Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [วิธีสร้างบาร์โค้ด PDF417 – การเข้ารหัส Compact PDF417](/barcode/english/net/compact-pdf417-encoding/) +- [วิธีสร้างบาร์โค้ด Aztec ด้วยอัตราส่วนภาพที่กำหนดเองโดยใช้ Aspose.BarCode สำหรับ .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/thai/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/thai/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..58967b245 --- /dev/null +++ b/barcode/thai/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,235 @@ +--- +category: general +date: 2026-08-06 +description: วิธีบันทึกภาพบาร์โค้ดใน C# ด้วย MicroPdf417 พร้อมการจำลอง Code 128. เรียนรู้วิธีสร้างบาร์โค้ด + PDF417 และปรับแต่งการตั้งค่า. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: th +lastmod: 2026-08-06 +og_description: วิธีบันทึกรูปภาพบาร์โค้ดใน C# อย่างรวดเร็วด้วย MicroPdf417 และการจำลอง + Code 128. ปฏิบัติตามคำแนะนำนี้เพื่อสร้างบาร์โค้ด PDF417 และปรับแต่งผลลัพธ์. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: วิธีบันทึกรูปภาพบาร์โค้ดใน C# – คู่มือแบบทีละขั้นตอน +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: วิธีบันทึกรูปภาพบาร์โค้ดใน C# – คู่มือฉบับสมบูรณ์ +url: /th/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# วิธีบันทึกภาพบาร์โค้ดใน C# – คู่มือฉบับสมบูรณ์ + +หากคุณต้องการ **how to save barcode** ภาพในแอปพลิเคชัน .NET นี้ จะสอนวิธีแก้ปัญหาแบบพร้อมใช้งาน คุณจะได้เรียนรู้วิธีสร้างบาร์โค้ด PDF417, ใช้การจำลอง Code 128, และเขียนไฟล์ PNG ที่ได้ลงดิสก์ + +ตัวอย่างใช้ไลบรารี Aspose.BarCode for .NET ซึ่งรองรับ MicroPdf417, Code 128, และมาตรฐานอื่น ๆ มากมาย เมื่อจบคู่มือคุณจะสามารถสร้างไฟล์บาร์โค้ดสำหรับ Mode 908, 909, 910, และ 911 ได้ และคุณจะเข้าใจวิธีปรับพารามิเตอร์ภาพเพื่อการสแกนที่ดีที่สุด + +## ข้อกำหนดเบื้องต้น + +ก่อนเริ่มทำงาน โปรดตรวจสอบว่าคุณมี: + +* .NET 6.0 SDK หรือรุ่นที่ใหม่กว่า ติดตั้งแล้ว +* Visual Studio 2022 (หรือ IDE ใด ๆ ที่รองรับ C#) +* ไลเซนส์ Aspose.BarCode for .NET ที่ใช้งานได้ (ทดลองฟรีก็ใช้ได้สำหรับการพัฒนา) + +บทเรียนนี้สมมติว่าคุณคุ้นเคยกับโปรเจกต์คอนโซล C# พื้นฐาน + +## ขั้นตอนที่ 1: สร้างโปรเจกต์คอนโซลใหม่และเพิ่มแพ็กเกจ BarCode + +เปิดเทอร์มินัลและรันคำสั่งต่อไปนี้: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +คำสั่ง `dotnet add package` จะดาวน์โหลดไลบรารี Aspose.BarCode เวอร์ชันล่าสุด ซึ่งมีคลาสที่คุณต้องการเพื่อ **how to generate pdf417** บาร์โค้ด + +## ขั้นตอนที่ 2: เขียนโปรแกรมเต็มรูปแบบ + +สร้างไฟล์ชื่อ `Program.cs` (แทนที่ไฟล์เดิม) แล้ววางโค้ดด้านล่าง โปรแกรมนี้สาธิต **barcode generator with code128** การจำลองและแสดงหลายวิธีในการ **how to save barcode** ภาพ + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### ทำไมโค้ดนี้ถึงทำงานได้ + +* **Single generator instance** – การใช้ `BarcodeGenerator` ซ้ำช่วยหลีกเลี่ยงการจัดสรรหน่วยความจำซ้ำและทำให้การตั้งค่าคงที่ในทุกโหมด +* **XDimension** – ตั้งค่าขนาดพิกเซลเป็น 2 จะให้ภาพที่คมชัดและอ่านง่ายโดยไม่ทำให้ไฟล์ใหญ่เกินไป +* **IsCode128Emulation** – เปิดใช้งานรูปแบบบาร์สไตล์ Code 128 ภายในสัญลักษณ์ PDF417 ซึ่งทำให้สแกนเนอร์บางรุ่นอ่านได้เสถียรขึ้น +* **Save method** – การ overload `Save` ที่คุณเห็นเป็นวิธีมาตรฐานในการ **how to save barcode** ไฟล์; มันจะเขียนภาพโดยตรงไปยังระบบไฟล์ในรูปแบบที่คุณระบุ + +## ขั้นตอนที่ 3: รันโปรแกรมและตรวจสอบผลลัพธ์ + +สร้างและรันโปรเจกต์: + +```bash +dotnet run +``` + +หลังจากคอนโซลแสดงข้อความยืนยัน ให้เปิดโฟลเดอร์ที่คุณกำหนดใน `outputPath` คุณควรเห็นไฟล์ PNG สี่ไฟล์: + +* `MicroPdf417_Code128_908.png` – ตัวบ่งชี้ FNC1 + ตัวอักษรและตัวเลข +* `MicroPdf417_Code128_909.png` – ตัวบ่งชี้ FNC1 + ตัวเลขเท่านั้น +* `MicroPdf417_Code128_910.png` – payload แบบ Code 128 ดิบ + +แต่ละภาพมีสัญลักษณ์ MicroPdf417 ที่สามารถสแกนด้วยเครื่องอ่านบาร์โค้ดมาตรฐาน หากสแกนเนอร์ไม่สามารถอ่านไฟล์ได้ ให้ลองเพิ่มค่า `XDimension.Pixels` หรือปรับ `Pdf417.Columns` ให้ตรงกับความละเอียดของอุปกรณ์เป้าหมาย + +## ขั้นตอนที่ 4: ความแตกต่างทั่วไปและกรณีขอบ + +### การเปลี่ยนรูปแบบภาพ + +enum `BarCodeImageFormat` รองรับ PNG, JPEG, BMP, และ TIFF แทนที่ `BarCodeImageFormat.Png` ด้วย `BarCodeImageFormat.Jpeg` หากต้องการไฟล์ขนาดเล็กลงสำหรับการส่งบนเว็บ + +### การสร้าง PDF417 ขนาดเต็มแทน MicroPdf417 + +หากกรณีการใช้งานของคุณต้องการมาตรฐาน PDF417 ขนาดใหญ่ ให้สร้างอินสแตนซ์ของเจนเนอเรเตอร์ด้วย `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +อย่าลืมปรับ `Pdf417.Rows` และ `Pdf417.Columns` ให้สอดคล้องกับข้อกำหนด ISO/IEC 15417 + +### การจัดการอักขระพิเศษ + +ตัวคั่นกลุ่ม (`\u001d`) จำเป็นสำหรับ Application Identifiers หากข้อมูลของคุณมีอักขระควบคุมอื่น ๆ ให้ใช้ Unicode notation เพื่อ escape (เช่น `\u001c` สำหรับ file separator) เพื่อหลีกเลี่ยงข้อผิดพลาดขณะรัน + +### ข้อควรพิจารณาเรื่องลิขสิทธิ์ + +การรันโค้ดโดยไม่มีไลเซนส์จะทำให้ภาพที่สร้างมีลายน้ำ ใส่ไลเซนส์ของคุณตั้งแต่ต้นในเมธอด `Main`: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## ขั้นตอนที่ 5: เคล็ดลับสำหรับการใช้งานในสภาพแวดล้อมการผลิต + +* **Batch processing** – ห่อหุ้มตรรกะการบันทึกในลูปที่อ่านแถวจาก CSV หรือฐานข้อมูล; ใช้ `BarcodeGenerator` ตัวเดียวกันซ้ำเพื่อประสิทธิภาพ +* **Thread safety** – `BarcodeGenerator` ไม่ปลอดภัยต่อการทำงานหลายเธรด สร้างอินสแตนซ์แยกสำหรับแต่ละเธรดหากทำการสร้างบาร์โค้ดแบบขนาน +* **Error handling** – ครอบ `Save` ด้วยบล็อก `try…catch` เพื่อจับข้อยกเว้น I/O โดยเฉพาะเมื่อเขียนไปยังแชร์เครือข่าย + +## สรุป + +ตอนนี้คุณรู้แล้วว่า **how to save barcode** ภาพใน C# ด้วย Aspose.BarCode, วิธี **how to generate pdf417** สัญลักษณ์ด้วยการจำลอง Code 128, และวิธีตั้งค่า **barcode generator with code128** สำหรับหลายโหมด ตัวอย่างที่สมบูรณ์และสามารถรันได้แสดงทุกขั้นตอนตั้งแต่การตั้งค่าโปรเจกต์จนถึงไฟล์ PNG สุดท้าย + +ต่อไปสำรวจหัวข้อที่เกี่ยวข้องเช่น **embedding barcodes in PDF documents**, **creating QR codes with custom colors**, หรือ **integrating barcode generation into ASP.NET Core APIs** ส่วนขยายเหล่านี้อิงจากหลักการเดียวกันและช่วยให้คุณอัตโนมัติกระบวนการสแกนหลายรูปแบบได้ + +## สิ่งที่คุณควรเรียนต่อไป? + +บทเรียนต่อไปนี้ครอบคลุมหัวข้อที่เกี่ยวข้องอย่างใกล้ชิดและต่อยอดจากเทคนิคที่แสดงในคู่มือนี้ แต่ละแหล่งรวมตัวอย่างโค้ดทำงานเต็มรูปแบบพร้อมคำอธิบายขั้นตอนเพื่อช่วยให้คุณเชี่ยวชาญฟีเจอร์ API เพิ่มเติมและสำรวจแนวทางการนำไปใช้ในโครงการของคุณเอง + +- [วิธีสร้างบาร์โค้ด PDF417 – การเข้ารหัส Compact PDF417](/barcode/english/net/compact-pdf417-encoding/) +- [วิธีบันทึก PNG ด้วย DataMatrix C40 ด้วย Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [วิธีสร้างบาร์โค้ด - ประเภทบาร์โค้ดหนึ่งมิติ](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/thai/net/one-dimensional-barcode-types/_index.md b/barcode/thai/net/one-dimensional-barcode-types/_index.md index dcd2c96bb..de751f682 100644 --- a/barcode/thai/net/one-dimensional-barcode-types/_index.md +++ b/barcode/thai/net/one-dimensional-barcode-types/_index.md @@ -24,7 +24,7 @@ url: /th/net/one-dimensional-barcode-types/ ## การกำหนดค่ารหัส 128 - ก่อนอื่นมาดำดิ่งกันก่อน**Code 128**บาร์โค้ดประเภทอเนกประสงค์นี้สามารถเข้ารหัสข้อมูลได้หลากหลาย ทำให้เป็นบาร์โค้ดยอดนิยมในหมู่นักพัฒนา ด้วย Aspose.BarCode คุณจะพบกับกระบวนการบูรณาการที่ราบรื่น ทำตามคำแนะนำทีละขั้นตอนของเราเพื่อเริ่มต้น + ก่อนแรกมาดำดิ่งกันก่อน**Code 128**บาร์โค้ดประเภทอเนกประสงค์นี้สามารถเข้ารหัสข้อมูลได้หลากหลาย ทำให้เป็นบาร์โค้ดยอดนิยมในหมู่นักพัฒนา ด้วย Aspose.BarCode คุณจะพบกับกระบวนการบูรณาการที่ราบรื่น ทำตามคำแนะนำทีละขั้นตอนของเราเพื่อเริ่มต้น ## การกำหนดค่ารหัส 39 @@ -78,6 +78,8 @@ url: /th/net/one-dimensional-barcode-types/ เรียนรู้วิธีจัดการกับข้อยกเว้นในขณะที่สร้างบาร์โค้ดหนึ่งมิติโดยใช้ Aspose.BarCode สำหรับ .NET คำแนะนำทีละขั้นตอนนี้ช่วยให้มั่นใจได้ถึงโซลูชันบาร์โค้ดที่ทนทานต่อข้อผิดพลาด เริ่มตอนนี้เลย! ### [การกำหนดค่าอัตราส่วนกว้าง-แคบหนึ่งมิติ](./one-dimensional-wide-narrow-ratio-configuration/) สร้างบาร์โค้ดแบบกำหนดเองได้อย่างง่ายดายด้วย Aspose.BarCode สำหรับ .NET คำแนะนำทีละขั้นตอนสำหรับการกำหนดค่าอัตราส่วนกว้าง-แคบหนึ่งมิติ +### [วิธีตั้งค่าบาร์โค้ดใน C# – คู่มือ Aspose.BarCode ฉบับสมบูรณ์](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +เรียนรู้วิธีตั้งค่าบาร์โค้ดใน C# อย่างครบถ้วนด้วย Aspose.BarCode ## บทสรุป @@ -89,4 +91,4 @@ url: /th/net/one-dimensional-barcode-types/ {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/thai/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/thai/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..264276a79 --- /dev/null +++ b/barcode/thai/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,161 @@ +--- +category: general +date: 2026-08-06 +description: วิธีตั้งค่าโค้ดบาร์โดยใช้ Aspose.BarCode ใน C#. เรียนรู้วิธีเปลี่ยนอักขระแมโครและสร้างภาพโค้ดบาร์ด้วย + C# พร้อมโค้ดทีละขั้นตอน. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: th +lastmod: 2026-08-06 +og_description: วิธีตั้งค่า barcode ด้วย Aspose.BarCode ใน C# คู่มือนี้แสดงวิธีเปลี่ยนตัวอักษรแมโครและสร้างภาพบาร์โค้ดด้วย + C# อย่างรวดเร็ว. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: วิธีตั้งค่าบาร์โค้ดใน C# – บทแนะนำ Aspose.BarCode +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: วิธีตั้งค่าบาร์โค้ดใน C# – คู่มือ Aspose.BarCode ฉบับสมบูรณ์ +url: /th/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# วิธีตั้งค่า barcode ใน C# – คู่มือ Aspose.BarCode ฉบับสมบูรณ์ + +หากคุณต้องการ **วิธีตั้งค่า barcode** ในแอปพลิเคชัน .NET นี้ จะอธิบายขั้นตอนโดยใช้ Aspose.BarCode คุณจะได้เห็นวิธีเปลี่ยนตัวอักษร macro ปรับพารามิเตอร์การแสดงผล และ **สร้างไฟล์ภาพ barcode C#** ที่สามารถบันทึกลงดิสก์ได้โดยตรง + +คู่มือนี้ครอบคลุมตั้งแต่การติดตั้งไลบรารีจนถึงการสร้าง barcode MicroPDF417 สองแบบที่มีค่า macro แตกต่างกัน ไม่ต้องอ้างอิงเอกสารภายนอก—คุณสามารถคัดลอกโค้ด รัน แล้วตรวจสอบผลลัพธ์ PNG ได้ทันที + +## ข้อกำหนดเบื้องต้น + +ก่อนเริ่มทำงาน ให้ตรวจสอบว่าคุณมี: + +* .NET 6.0 หรือใหม่กว่า (ตัวอย่างใช้โครงการคอนโซล) +* Visual Studio 2022 หรือ IDE สำหรับ C# ใดก็ได้ +* ไลเซนส์ Aspose.BarCode ที่ใช้งานได้ (สามารถใช้รุ่นทดลองฟรีสำหรับการทดสอบ) +* ความรู้พื้นฐานเกี่ยวกับไวยากรณ์ C# + +คุณยังต้องติดตั้งแพ็กเกจ NuGet ด้วย: + +```bash +dotnet add package Aspose.BarCode +``` + +## วิธีตั้งค่าพารามิเตอร์ barcode – ขั้นตอนที่ 1: สร้าง generator + +ขั้นตอนแรกคือการสร้างอินสแตนซ์ของ `BarcodeGenerator` พร้อมกำหนด symbology และข้อมูลที่ต้องการ ใช้ `EncodeTypes.MicroPdf417` เพื่อบอก Aspose.BarCode ให้สร้างรูปแบบ PDF417 แบบกะทัดรัด + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**เหตุผลที่สำคัญ:** `BarcodeGenerator` เป็นอ็อบเจ็กต์หลัก; การตั้งค่าต่าง ๆ หลังจากนี้จะปรับที่คุณสมบัติ `Parameters` ของมัน การเลือก `EncodeTypes` ที่ถูกต้องจะทำให้ barcode ปฏิบัติตามสเปค MicroPDF417 + +## วิธีเปลี่ยนตัวอักษร macro – ขั้นตอนที่ 2: ปรับพารามิเตอร์การแสดงผล + +ตัวอักษร macro เป็นโค้ดควบคุมแบบเลือกใช้ที่ช่วยให้คุณเชื่อมต่อหลายสัญลักษณ์ PDF417 ตัวอย่างนี้สลับระหว่าง `Macro05` และ `Macro06` คุณยังตั้งค่าความกว้างโมดูล (`XDimension`) และจำนวนคอลัมน์เพื่อควบคุมขนาดของ barcode + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**เหตุผลที่ต้องเปลี่ยน macro:** ตัวอักษร macro จะบอกสแกนเนอร์ว่าบาร์โค้ดนี้เป็นส่วนหนึ่งของชุดข้อมูลที่ใหญ่กว่า การสลับค่า macro แสดงให้เห็นว่าข้อมูลเดียวกันสามารถเชื่อมโยงกับตัวระบุ macro ที่ต่างกันได้อย่างไร + +## วิธีตั้งค่า barcode – ขั้นตอนที่ 3: สร้าง barcode ที่สองด้วย macro ที่ต่างกัน + +ในขั้นตอนนี้เราจะใช้อินสแตนซ์ `generator` เดิม เพียงแค่สลับค่า macro เท่านั้น วิธีนี้ช่วยหลีกเลี่ยงการสร้างอ็อบเจ็กต์ใหม่และแสดงให้เห็นว่า **วิธีตั้งค่า barcode** สามารถทำได้ในระหว่างการทำงาน + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### ผลลัพธ์ที่คาดหวัง + +เมื่อรันโปรแกรมจะสร้างไฟล์ PNG สองไฟล์ในโฟลเดอร์โครงการ: + +* `MicroPdf417_Macro05.png` – barcode พร้อม Macro05 +* `MicroPdf417_Macro06.png` – barcode พร้อม Macro06 + +ทั้งสองภาพแสดงสัญลักษณ์ MicroPDF417 แบบกะทัดรัดที่เข้ารหัส `12345ABC` คุณสามารถเปิดไฟล์ PNG ด้วยโปรแกรมดูรูปใดก็ได้เพื่อยืนยันคุณภาพการแสดงผล + +## แนวทางปฏิบัติที่ดีที่สุดสำหรับ Barcode generator C# + +* **Reuse the generator:** การเปลี่ยน `Parameters` ของอินสแตนซ์ที่มีอยู่แล้วมีประสิทธิภาพมากกว่าการสร้าง generator ใหม่สำหรับแต่ละ barcode +* **Set X‑dimension early:** ความกว้างโมดูลมีผลต่อขนาดภาพโดยรวม; ปรับก่อนบันทึก +* **Validate macro usage:** สแกนเนอร์ทุกเครื่องอาจไม่รองรับ macro; ทดสอบกับฮาร์ดแวร์เป้าหมายหากคุณวางแผนใช้ในผลิตภัณฑ์จริง +* **Dispose resources:** `BarcodeGenerator` implements `IDisposable`. ในบริการที่ทำงานต่อเนื่อง ควรห่อด้วย `using` block หรือเรียก `Dispose()` เมื่อเสร็จ + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## สร้างภาพ barcode C# – เคล็ดลับการแก้ปัญหา + +| Symptom | Likely cause | Fix | +|--------------------------------------|-------------------------------------------|-----| +| ไฟล์ PNG ว่างเปล่า | `XDimension` ตั้งเป็น 0 หรือค่ามากเกินไป | ใช้ความกว้างพิกเซลที่เหมาะสม (1‑5) | +| Barcode ไม่อ่านได้โดยสแกนเนอร์ | ตัวอักษร macro ไม่ตรงกับสแกนเนอร์ | ตรวจสอบเอกสารสแกนเนอร์; ใช้ `MacroNone` หากไม่จำเป็น | +| Exception `ArgumentOutOfRangeException` | จำนวนคอลัมน์อยู่นอกช่วงที่อนุญาต (1‑30) | รักษา `Columns` ให้อยู่ระหว่าง 1 ถึง 30 | + +## สรุป + +ตอนนี้คุณรู้ **วิธีตั้งค่า barcode** , **วิธีเปลี่ยนตัวอักษร macro** และ **วิธีสร้างไฟล์ภาพ barcode C#** ด้วย Aspose.BarCode ตัวอย่างที่ทำงานได้เต็มรูปแบบแสดงขั้นตอนทั้งหมดตั้งแต่การสร้าง generator จนถึงการส่งออกภาพ + +ต่อไปลองสำรวจ symbology อื่น ๆ (`EncodeTypes.QR`, `EncodeTypes.Code128`) หรือฝัง barcode ลงใน PDF โดยตรงด้วย Aspose.PDF ทั้งสองหัวข้ออยู่ในระบบนิเวศ **barcode generator c#** ที่กว้างขวางและสามารถเพิ่มเข้าโครงการนี้ได้ด้วยการเปลี่ยนโค้ดเพียงเล็กน้อย + +ขอให้สนุกกับการเขียนโค้ด และอย่ากลัวที่จะทดลองค่าต่าง ๆ ของ macro, มิติ, และรูปแบบผลลัพธ์! + +## สิ่งที่คุณควรเรียนต่อไป + +บทแนะนำต่อไปนี้ครอบคลุมหัวข้อที่เกี่ยวข้องอย่างใกล้ชิดและต่อยอดจากเทคนิคในคู่มือนี้ แต่ละแหล่งรวมโค้ดทำงานเต็มรูปแบบพร้อมคำอธิบายทีละขั้นตอน เพื่อช่วยให้คุณเชี่ยวชาญฟีเจอร์ API เพิ่มเติมและสำรวจแนวทางการทำงานอื่น ๆ ในโครงการของคุณเอง + +- [How to create barcode quiet zone for Code 16K using Aspose.BarCode for .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [How to create dotcode extended codetext with Aspose.BarCode for .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [How to Set Border for ITF-14 Barcode Customization](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/turkish/net/compact-pdf417-encoding/_index.md b/barcode/turkish/net/compact-pdf417-encoding/_index.md index ea67f016b..c16d18628 100644 --- a/barcode/turkish/net/compact-pdf417-encoding/_index.md +++ b/barcode/turkish/net/compact-pdf417-encoding/_index.md @@ -83,6 +83,12 @@ Temellerin ötesinde, iş akışınızı hızlandıracak bazı pratik ipuçları ### [Compact PDF417 Barkodları Oluşturma](./compact-pdf417-basic-configuration/) Aspose.BarCode for .NET'i kullanarak Compact PDF417 barkodlarını nasıl oluşturacağınızı öğrenin. Adım‑adım talimatları ve kod örnekleri içeren kapsamlı bir rehber. +### [C#'ta PDF417 barkodu oluşturma – Barkod Oluşturucu Kılavuzu](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +C# ile PDF417 barkodu oluşturmayı adım adım öğrenin. + +### [C#'ta barkod görüntülerini kaydetme – tam rehber](./how-to-save-barcode-images-in-c-complete-guide/) +C# ile Aspose.BarCode kullanarak barkod resimlerini farklı formatlarda kaydetmeyi adım adım öğrenin. + ## Sıkça Sorulan Sorular **Q:** Compact PDF417 barkodunda saklayabileceğim maksimum veri miktarı nedir? @@ -111,4 +117,4 @@ Aspose.BarCode for .NET'i kullanarak Compact PDF417 barkodlarını nasıl oluşt {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/turkish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/turkish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..db066b2d9 --- /dev/null +++ b/barcode/turkish/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,112 @@ +--- +category: general +date: 2026-08-06 +description: C# ile bir barkod oluşturucu kullanarak PDF417 barkodu oluşturun C# PDF417 + öğreticisi. PDF417 barkodunu nasıl oluşturacağınızı, ikili modu nasıl ayarlayacağınızı + ve PNG olarak nasıl kaydedeceğinizi öğrenin. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: tr +lastmod: 2026-08-06 +og_description: BarcodeGenerator kullanarak C#'ta PDF417 barkod oluşturun. İkili kodlamayı + ayarlamayı, PDF417 seçeneklerini yapılandırmayı ve barkodu PNG görüntüsü olarak + kaydetmeyi öğrenin. +og_image_alt: Generate PDF417 barcode example +og_title: C#'ta PDF417 barkod oluşturma – tam barkod oluşturucu rehberi +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: C#'ta PDF417 barkod oluşturma – barkod oluşturucu rehberi +url: /tr/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# C#’ta PDF417 barkod oluşturma – barkod oluşturucu rehberi + +Bir .NET uygulamasında **PDF417 barkod** oluşturmanız gerekiyorsa, bu rehber tam olarak nasıl yapılacağını gösterir. Aspose.BarCode kütüphanesini kullanarak ikili verileri kodlayabilir, PDF417 kodlayıcıyı ikili moda geçirebilir ve sadece birkaç satır C# koduyla yüksek çözünürlüklü PNG görüntüsü elde edebilirsiniz. + +Bu öğretici, NuGet paketinin kurulmasından PDF417 ayarlarının özelleştirilmesine ve boş veri ya da desteklenmeyen karakterler gibi uç durumların ele alınmasına kadar her şeyi kapsar. Rehberin sonunda, herhangi bir C# projesine ekleyebileceğiniz tam, çalıştırılabilir bir örnek elde edeceksiniz. + +**Öğrenecekleriniz** + +* C# PDF417 barkod oluşturucu paketini kurma ve referans ekleme. +* Kodlamak için ikili verileri hazırlama. +* `BarcodeGenerator` sınıfını ikili PDF417 kodlaması için yapılandırma. +* Oluşturulan barkodu PNG dosyası olarak kaydetme ve sonucu doğrulama. + +> **Önkoşullar** – .NET 6.0 veya daha yeni bir sürüm, Visual Studio 2022 (veya tercih ettiğiniz herhangi bir IDE) ve NuGet paketini indirmek için internet bağlantısı. + +--- + +## Adım 1: Aspose.BarCode NuGet paketini kurun + +C#’ta PDF417 barkodlarıyla çalışmanın en güvenilir yolu, **Aspose.BarCode** kütüphanesidir; bu kütüphane ikili kodlamayı tam olarak destekler. + +```bash +dotnet add package Aspose.BarCode +``` + +*Neden bu adım?* +`BarcodeGenerator` sınıfı `Aspose.BarCode` ad alanında bulunur. Paketi eklemek, derleme zamanında gerekli tüm DLL’lerin mevcut olmasını ve en yeni hata düzeltmeleri ile performans iyileştirmelerinden faydalanmanızı sağlar. + +--- + +## Adım 2: Yeni bir konsol projesi oluşturun (isteğe bağlı ancak önerilir) + +Kodu izole bir ortamda test ediyorsanız, temiz bir konsol uygulaması başlatın: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Paketi projeye ekleyin (Henüz eklemediyseniz Adım 1’deki komutu tekrarlayın). + +--- + +## Adım 3: Kodlamak için ikili verileri hazırlayın + +PDF417, kodlama modunu **Binary** olarak ayarladığınızda ham baytları kodlayabilir. Aşağıda süreci gösteren basit bir byte dizisi yer almaktadır. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Neden ikili veri?* +İkili mod, herhangi bir byte dizisini depolamanıza olanak tanır—dosyalar, şifreleme anahtarları veya düz metin olmayan özel yükler için faydalıdır. + +--- + +## Adım 4: Barkod oluşturucuyu başlatın ve PDF417’yi ikili moda yapılandırın + + + +## Sonra Ne Öğrenmelisiniz? + +Aşağıdaki öğreticiler, bu rehberde gösterilen tekniklere dayanan ve yakından ilgili konuları kapsar. Her kaynak, ek API özelliklerini ustalaştırmanıza ve kendi projelerinizde alternatif uygulama yaklaşımlarını keşfetmenize yardımcı olacak tam çalışan kod örnekleri ve adım‑adım açıklamalar içerir. + +- [Aspose.BarCode ile Barkod Oluşturma – Kompakt PDF417](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [PDF417 Barkodları Oluşturma – Kompakt PDF417 Kodlaması](/barcode/english/net/compact-pdf417-encoding/) +- [Aspose.BarCode for .NET ile özel en‑boy oranına sahip Aztec barkod oluşturma](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/turkish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/turkish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..3f60f2b38 --- /dev/null +++ b/barcode/turkish/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,239 @@ +--- +category: general +date: 2026-08-06 +description: MicroPdf417 ve Code 128 taklidi kullanarak C#'de barkod görüntülerini + nasıl kaydederiz. PDF417 barkodlarını nasıl oluşturacağınızı ve ayarları nasıl özelleştireceğinizi + öğrenin. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: tr +lastmod: 2026-08-06 +og_description: C#'ta MicroPdf417 ve Code 128 emülasyonu ile barkod görüntülerini + hızlıca nasıl kaydedilir. PDF417 barkodları oluşturmak ve çıktıyı özelleştirmek + için bu kılavuzu izleyin. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: C#'ta barkod görüntülerini kaydetme – adım adım rehber +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: C#'ta barkod görüntülerini nasıl kaydederiz – tam rehber +url: /tr/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# C#’ta barkod resimlerini nasıl kaydedilir – tam kılavuz + +Bir .NET uygulamasında **barkod resimlerini nasıl kaydedilir** ihtiyacınız varsa, bu öğretici hazır‑çalıştır bir çözüm sunar. PDF417 barkodlarını nasıl oluşturacağınızı, Code 128 taklit etmeyi ve ortaya çıkan PNG dosyalarını diske nasıl yazacağınızı öğreneceksiniz. + +Örnek, MicroPdf417, Code 128 ve birçok başka standardı destekleyen Aspose.BarCode for .NET kütüphanesini kullanır. Kılavuzun sonunda Modlar 908, 909, 910 ve 911 için barkod dosyaları üretebilir ve optimum tarama için görsel parametreleri nasıl ayarlayacağınızı anlayacaksınız. + +## Önkoşullar + +Başlamadan önce şunların yüklü olduğundan emin olun: + +* .NET 6.0 SDK veya daha yeni bir sürüm +* Visual Studio 2022 (veya C# destekleyen herhangi bir IDE) +* Aktif bir Aspose.BarCode for .NET lisansı (geliştirme için ücretsiz deneme sürümü yeterlidir) + +Bu öğretici, C# konsol projeleriyle temel bir aşinalık varsayar. + +## Adım 1: Yeni bir konsol projesi oluşturun ve BarCode paketini ekleyin + +Bir terminal açın ve aşağıdaki komutları çalıştırın: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +`dotnet add package` komutu, **pdf417 barkodları nasıl oluşturulur** sınıflarını içeren en son Aspose.BarCode kütüphanesini indirir. + +## Adım 2: Tam programı yazın + +`Program.cs` adlı bir dosya oluşturun (mevcut dosyanın üzerine yazın) ve aşağıdaki kodu yapıştırın. Program, **code128 taklitli bir barkod üreticisi** gösterir ve **barkod resimlerini nasıl kaydedilir** konusunda çeşitli yollar sunar. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Bu kod neden çalışır + +* **Tek üretici örneği** – `BarcodeGenerator` yeniden kullanılarak tekrar eden bellek tahsisi önlenir ve yapılandırma tüm modlar arasında tutarlı kalır. +* **XDimension** – Piksel boyutunu 2 olarak ayarlamak, dosya boyutunu şişirmeden net, okunabilir bir görüntü sağlar. +* **IsCode128Emulation** – PDF417 sembolü içinde Code 128‑stil çubuk desenlerini etkinleştirir; bazı tarayıcılar bunu daha güvenilir yorumlar. +* **Save yöntemi** – Göründüğü gibi `Save` aşırı yüklemesi, **barkod resimlerini nasıl kaydedilir** dosyaları için kanonik yoldur; görüntüyü belirttiğiniz formatta doğrudan dosya sistemine yazar. + +## Adım 3: Programı çalıştırın ve çıktıyı doğrulayın + +Projeyi derleyip çalıştırın: + +```bash +dotnet run +``` + +Konsol onay mesajlarını bastıktan sonra `outputPath` içinde belirttiğiniz klasörü açın. Dört PNG dosyası görmelisiniz: + +* `MicroPdf417_Code128_908.png` – FNC1 + alfanümerik gösterge +* `MicroPdf417_Code128_909.png` – FNC1 + sayısal gösterge +* `MicroPdf417_Code128_910.png` – saf Code 128 yükü + +Her görüntü, standart barkod okuyucular tarafından taranabilen bir MicroPdf417 sembolü içerir. Bir tarayıcı dosyayı okuyamazsa, `XDimension.Pixels` değerini artırmayı veya `Pdf417.Columns` ayarını hedef cihazın çözünürlüğüne göre düzenlemeyi düşünün. + +## Adım 4: Yaygın varyasyonlar ve kenar durumları + +### Görüntü formatını değiştirme + +`BarCodeImageFormat` enum’u PNG, JPEG, BMP ve TIFF’i destekler. Web teslimi için daha küçük bir dosya boyutu gerekiyorsa `BarCodeImageFormat.Png` yerine `BarCodeImageFormat.Jpeg` kullanın. + +### MicroPdf417 yerine tam‑boyutlu PDF417 oluşturma + +Daha büyük PDF417 standardına ihtiyacınız varsa, üreticiyi `EncodeTypes.Pdf417` ile başlatın: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +ISO/IEC 15417 spesifikasyonlarını karşılamak için `Pdf417.Rows` ve `Pdf417.Columns` ayarlarını güncellemeyi unutmayın. + +### Özel karakterlerle çalışma + +Uygulama Tanımlayıcıları için grup ayırıcı (`\u001d`) gereklidir. Verinizde başka kontrol karakterleri varsa, çalışma zamanı hatalarını önlemek için Unicode gösterimiyle kaçış yapın (ör. dosya ayırıcı için `\u001c`). + +### Lisans hususları + +Lisans olmadan kod çalıştırıldığında oluşturulan görüntülerde bir filigran belirir. Lisansınızı `Main` içinde erken bir aşamada uygulayın: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Adım 5: Üretim kullanımı için ipuçları + +* **Toplu işleme** – CSV veya veritabanından satır okuyan bir döngü içinde kaydetme mantığını sarın; performans için aynı `BarcodeGenerator` örneğini yeniden kullanın. +* **İş parçacığı güvenliği** – `BarcodeGenerator` iş parçacığı‑güvenli değildir. Barkod oluşturmayı paralelleştiriyorsanız her iş parçacığı için ayrı bir örnek oluşturun. +* **Hata yönetimi** – `Save` çağrılarını `try…catch` bloklarıyla sararak özellikle ağ paylaşımlarına yazarken I/O istisnalarını yakalayın. + +## Sonuç + +Artık Aspose.BarCode kullanarak C#’ta **barkod resimlerini nasıl kaydedilir**, **pdf417 barkodları nasıl oluşturulur** Code 128 taklidiyle ve birden fazla mod için **code128 taklitli barkod üreticisi** nasıl yapılandırılır, biliyorsunuz. Tam, çalıştırılabilir örnek, proje kurulumundan son PNG dosyalarına kadar her adımı gösteriyor. + +Sonraki adımda, **PDF belgelerine barkod gömme**, **özel renklerle QR kod oluşturma** veya **ASP.NET Core API’lerine barkod üretimini entegre etme** gibi ilgili konuları keşfedin. Bu uzantılar, burada ele alınan aynı prensipler üzerine kurulur ve geniş bir tarama iş akışını otomatikleştirmenizi sağlar. + + +## Bir Sonraki Öğrenmeniz Gerekenler + + +Aşağıdaki öğreticiler, bu kılavuzda gösterilen tekniklere dayanan ve yakından ilgili konuları kapsar. Her kaynak, ek API özelliklerini ustalaşmanız ve kendi projelerinizde alternatif uygulama yaklaşımlarını keşfetmeniz için adım‑adım açıklamalar içeren tam çalışan kod örnekleri sunar. + +- [How to Generate PDF417 Barcodes – Compact PDF417 Encoding](/barcode/english/net/compact-pdf417-encoding/) +- [How to Save PNG using DataMatrix C40 with Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [How to Generate Barcode - One-Dimensional Barcode Types](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/turkish/net/one-dimensional-barcode-types/_index.md b/barcode/turkish/net/one-dimensional-barcode-types/_index.md index e88a66604..2fdcb5254 100644 --- a/barcode/turkish/net/one-dimensional-barcode-types/_index.md +++ b/barcode/turkish/net/one-dimensional-barcode-types/_index.md @@ -28,7 +28,7 @@ Tek boyutlu barkodlar, veri kodlamanın temelidir ve bilgiyi depolamanın basit ## Kod 39 Yapılandırması - Eğer üretmeniz gerekiyorsa**Code 39** barkodlar, Aspose.BarCode yanınızda. Bu barkod türü endüstriyelden sağlık hizmetlerine kadar çeşitli uygulamalarda yaygın olarak kullanılmaktadır. Geliştiriciler sorunsuz bir kurulum için adım adım kılavuzumuza güvenebilirler. + Eğer üretmeniz gerekiyorsa**Code 39** barkodlar, Aspose.BarCode yanınızda. Bu barkod türü endüstriyetten sağlık hizmetlerine kadar çeşitli uygulamalarda yaygın olarak kullanılmaktadır. Geliştiriciler sorunsuz bir kurulum için adım adım kılavuzumuza güvenebilirler. ## Kod 93 Yapılandırması @@ -78,6 +78,8 @@ Aspose.BarCode for .NET ile .NET'te barkod oluşturmayı öğrenin. Bu kapsamlı Aspose.BarCode for .NET'i kullanarak tek boyutlu barkodlar oluştururken istisnaları nasıl ele alacağınızı öğrenin. Bu adım adım kılavuz, hataya dayanıklı barkod çözümleri sağlar. Şimdi başla! ### [Tek Boyutlu Geniş-Dar Oranlı Yapılandırma](./one-dimensional-wide-narrow-ratio-configuration/) Aspose.BarCode for .NET ile özelleştirilmiş barkodları kolayca oluşturun. Tek boyutlu geniş-dar oranlı yapılandırma için adım adım kılavuz. +### [C#'ta Barkod Ayarlama – Tam Aspose.BarCode Rehberi](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +C# ile Aspose.BarCode kullanarak barkod ayarlamayı adım adım öğrenin. Tam rehberde tüm detaylar. ## Çözüm @@ -89,4 +91,4 @@ Bu makaleyle yalnızca çeşitli tek boyutlu barkod türleri hakkında bilgi edi {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/turkish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/turkish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..167463825 --- /dev/null +++ b/barcode/turkish/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,162 @@ +--- +category: general +date: 2026-08-06 +description: Aspose.BarCode kullanarak C#’ta barkod nasıl ayarlanır. Makro karakterlerini + nasıl değiştireceğinizi ve adım adım kodla C#’ta barkod görüntüsü oluşturmayı öğrenin. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: tr +lastmod: 2026-08-06 +og_description: Aspose.BarCode ile C#'ta barkod nasıl ayarlanır. Bu kılavuz, makro + karakterlerini nasıl değiştireceğinizi ve C#'ta barkod görüntüsü oluşturmayı hızlı + bir şekilde gösterir. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: C#'ta barkod nasıl ayarlanır – Aspose.BarCode öğreticisi +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: C#'de barkod nasıl ayarlanır – tam Aspose.BarCode rehberi +url: /tr/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# C#'ta barkod nasıl ayarlanır – tam Aspose.BarCode rehberi + +.NET uygulamasında **barkod nasıl ayarlanır** ihtiyacınız varsa, bu öğretici Aspose.BarCode kullanarak tam adımları gösterir. Makro karakterleri nasıl değiştireceğinizi, görsel parametreleri nasıl ayarlayacağınızı ve doğrudan diske kaydedilebilen **C# barcode image oluşturma** dosyalarını göreceksiniz. + +Rehber, kütüphaneyi kurmaktan farklı macro değerlerine sahip iki MicroPDF417 barkodu üretmeye kadar her şeyi kapsar. Harici bir belgeye ihtiyaç yoktur—kodu kopyalayabilir, çalıştırabilir ve PNG çıktısını hemen doğrulayabilirsiniz. + +## Önkoşullar + +Başlamadan önce şunlara sahip olduğunuzdan emin olun: + +* .NET 6.0 veya üzeri (örnek bir konsol projesi kullanır) +* Visual Studio 2022 veya herhangi bir C# IDE +* Aktif bir Aspose.BarCode lisansı (test için ücretsiz deneme yeterlidir) +* C# sözdizimi hakkında temel bilgi + +NuGet paketine de ihtiyacınız olacak: + +```bash +dotnet add package Aspose.BarCode +``` + +## Barkod parametrelerini ayarlama – adım 1: oluşturucu oluşturma + +İlk adım, istenen semboloji ve veri ile bir `BarcodeGenerator` örneği oluşturmaktır. `EncodeTypes.MicroPdf417` kullanmak, Aspose.BarCode'a kompakt bir PDF417 varyantı üretmesini söyler. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Neden önemli:** `BarcodeGenerator` merkezi nesnedir; sonraki tüm ayarlar onun `Parameters` özelliğini değiştirir. Doğru `EncodeTypes` seçimi, barkodun MicroPDF417 spesifikasyonuna uygun olmasını sağlar. + +## Makro karakterleri değiştirme – adım 2: görsel parametreleri ayarlama + +Makro karakterler, birden fazla PDF417 sembolünü birleştirmenizi sağlayan isteğe bağlı kontrol kodlarıdır. Örnekte `Macro05` ve `Macro06` arasında geçiş yapılır. Ayrıca modül genişliğini (`XDimension`) ve sütun sayısını ayarlayarak barkod boyutunu kontrol edersiniz. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Neden makroyu değiştiriyorsunuz:** Makro karakter, tarayıcıya bu barkodun daha büyük bir veri setinin parçası olduğunu bildirir. Değiştirmek, aynı verinin farklı makro tanımlayıcılarıyla nasıl ilişkilendirilebileceğini gösterir. + +## Barkodu ayarlama – adım 3: farklı bir makro ile ikinci barkodu oluşturma + +Şimdi aynı `generator` örneğini yeniden kullanıyoruz, sadece makro değerini değiştiriyoruz. Bu, nesneyi yeniden oluşturmayı önler ve **barkod nasıl ayarlanır** parametrelerinin çalışma zamanında değiştirilebileceğini gösterir. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Beklenen çıktı + +Programı çalıştırdığınızda proje klasöründe iki PNG dosyası oluşturulur: + +* `MicroPdf417_Macro05.png` – Macro05 içeren barkod +* `MicroPdf417_Macro06.png` – Macro06 içeren barkod + +Her iki görüntü de `12345ABC` kodlayan kompakt bir MicroPDF417 sembolü gösterir. PNG dosyalarını herhangi bir görüntüleyiciyle açarak görsel kalitesini doğrulayabilirsiniz. + +## C# Barcode oluşturucu en iyi uygulamaları + +* **Oluşturucuyu yeniden kullanın:** Mevcut bir örnek üzerinde `Parameters` değiştirmek, her barkod için yeni bir oluşturucu yaratmaktan daha verimlidir. +* **X‑dimension'ı erken ayarlayın:** Modül genişliği, toplam görüntü boyutunu etkiler; kaydetmeden önce ayarlayın. +* **Makro kullanımını doğrulayın:** Tüm tarayıcılar makro karakterleri desteklemez. Üretimde kullanmayı planlıyorsanız hedef donanımda test edin. +* **Kaynakları serbest bırakın:** `BarcodeGenerator`, `IDisposable` uygular. Uzun süren bir hizmette, `using` bloğu içinde kullanın veya işiniz bittiğinde `Dispose()` çağırın. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## C# Barcode görüntüsü oluşturma – sorun giderme ipuçları + +| Semptom | Muhtemel neden | Çözüm | +|--------------------------------------|---------------------------------------------|-------| +| Boş PNG dosyası | `XDimension` 0 veya çok yüksek bir değere ayarlandı | Mantıklı bir piksel genişliği (1‑5) kullanın | +| Tarayıcı barkodu okuyamıyor | Tarayıcı için yanlış makro karakteri | Tarayıcı belgelerini kontrol edin; gerekmezse `MacroNone` kullanın | +| İstisna `ArgumentOutOfRangeException` | Sütun sayısı izin verilen aralığın (1‑30) dışında | `Columns` değerini 1 ile 30 arasında tutun | + +## Sonuç + +Artık Aspose.BarCode kullanarak **barkod nasıl ayarlanır** özelliklerini, **makro karakterleri nasıl değiştirilir** ve **C# barcode image oluşturma** dosyalarını biliyorsunuz. Tam ve çalıştırılabilir örnek, oluşturucu oluşturulmasından görüntü dışa aktarımına kadar tam iş akışını gösterir. + +Sonra diğer sembolojileri (`EncodeTypes.QR`, `EncodeTypes.Code128`) keşfedin veya barkodu doğrudan Aspose.PDF ile PDF'lere gömün. Her iki konu da daha geniş **barcode generator c#** ekosistemine aittir ve bu projeye az kod değişikliğiyle eklenebilir. + +Kodlamaktan keyif alın ve farklı makro değerleri, boyutlar ve çıktı formatlarıyla denemeler yapmaktan çekinmeyin! + +## Sonra Ne Öğrenmelisiniz? + +Aşağıdaki öğreticiler, bu rehberde gösterilen tekniklere dayanan ve yakından ilgili konuları kapsar. Her kaynak, ek API özelliklerini öğrenmenize ve kendi projelerinizde alternatif uygulama yaklaşımlarını keşfetmenize yardımcı olmak için adım adım açıklamalar içeren tam çalışan kod örnekleri sunar. + +- [Code 16K için Aspose.BarCode kullanarak barkod sessiz bölgesi oluşturma](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [Aspose.BarCode for .NET ile dotcode genişletilmiş kod metni oluşturma](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [ITF-14 Barkod Özelleştirme için Kenar Ayarlama](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/vietnamese/net/compact-pdf417-encoding/_index.md b/barcode/vietnamese/net/compact-pdf417-encoding/_index.md index 8c0240726..a27384a0c 100644 --- a/barcode/vietnamese/net/compact-pdf417-encoding/_index.md +++ b/barcode/vietnamese/net/compact-pdf417-encoding/_index.md @@ -85,6 +85,12 @@ Ngoài các kiến thức cơ bản, dưới đây là một số mẹo thực t ### [Tạo Mã Vạch Compact PDF417](./compact-pdf417-basic-configuration/) Tìm hiểu cách tạo mã vạch Compact PDF417 bằng Aspose.BarCode cho .NET. Hướng dẫn chi tiết với các bước thực hiện và ví dụ mã nguồn. +### [Tạo mã vạch PDF417 trong C# – hướng dẫn trình tạo mã vạch](./generate-pdf417-barcode-in-c-barcode-generator-guide/) +Hướng dẫn chi tiết cách tạo mã vạch PDF417 bằng C# sử dụng Aspose.BarCode, bao gồm cấu hình và ví dụ mã nguồn. + +### [Cách lưu ảnh mã vạch trong C# – hướng dẫn đầy đủ](./how-to-save-barcode-images-in-c-complete-guide/) +Hướng dẫn chi tiết cách lưu ảnh mã vạch dưới dạng PNG, JPEG, BMP trong C# sử dụng Aspose.BarCode. + ## Câu hỏi thường gặp **Q: Dung lượng tối đa tôi có thể lưu trữ trong một mã vạch Compact PDF417 là bao nhiêu?** @@ -111,4 +117,4 @@ A: Không cần font bên ngoài; thư viện tự xử lý việc render nội {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/vietnamese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md b/barcode/vietnamese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md new file mode 100644 index 000000000..976f400d7 --- /dev/null +++ b/barcode/vietnamese/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/_index.md @@ -0,0 +1,108 @@ +--- +category: general +date: 2026-08-06 +description: Tạo mã vạch PDF417 trong C# với trình tạo mã vạch C# PDF417. Học cách + tạo mã vạch PDF417, thiết lập chế độ nhị phân và lưu dưới dạng PNG. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- generate pdf417 barcode +- barcode generator c# pdf417 +- how to generate pdf417 barcode +language: vi +lastmod: 2026-08-06 +og_description: Tạo mã vạch PDF417 trong C# bằng BarcodeGenerator. Tìm hiểu cách thiết + lập mã hoá nhị phân, cấu hình các tùy chọn PDF417 và lưu mã vạch dưới dạng ảnh PNG. +og_image_alt: Generate PDF417 barcode example +og_title: Tạo mã vạch PDF417 trong C# – hướng dẫn đầy đủ về trình tạo mã vạch +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: Generate PDF417 barcode in C# with a barcode generator C# PDF417 tutorial. + Learn how to generate PDF417 barcode, set binary mode, and save as PNG. + headline: Generate PDF417 barcode in C# – barcode generator guide + type: TechArticle +tags: +- barcode +- C# +- PDF417 +title: Tạo mã vạch PDF417 bằng C# – hướng dẫn tạo mã vạch +url: /vi/net/compact-pdf417-encoding/generate-pdf417-barcode-in-c-barcode-generator-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Tạo mã vạch PDF417 trong C# – hướng dẫn tạo mã vạch + +Nếu bạn cần **generate PDF417 barcode** trong một ứng dụng .NET, hướng dẫn này sẽ chỉ cho bạn cách thực hiện. Sử dụng thư viện Aspose.BarCode, bạn có thể mã hoá dữ liệu nhị phân, chuyển bộ mã hoá PDF417 sang chế độ **Binary**, và xuất ra hình ảnh PNG độ phân giải cao chỉ trong vài dòng C#. + +Hướng dẫn này bao gồm mọi thứ từ việc cài đặt gói NuGet đến tùy chỉnh cài đặt PDF417 và xử lý các trường hợp đặc biệt như dữ liệu trống hoặc ký tự không được hỗ trợ. Khi kết thúc hướng dẫn, bạn sẽ có một ví dụ hoàn chỉnh, có thể chạy được mà bạn có thể chèn vào bất kỳ dự án C# nào. + +**Bạn sẽ học được** + +* Cài đặt và tham chiếu gói tạo mã vạch C# PDF417. +* Chuẩn bị dữ liệu nhị phân để mã hoá. +* Cấu hình `BarcodeGenerator` để mã hoá PDF417 dạng nhị phân. +* Lưu mã vạch đã tạo dưới dạng tệp PNG và xác minh kết quả. + +> **Yêu cầu trước** – .NET 6.0 hoặc mới hơn, Visual Studio 2022 (hoặc bất kỳ IDE nào bạn thích), và kết nối internet để tải gói NuGet. + +--- + +## Bước 1: Cài đặt gói NuGet Aspose.BarCode + +Cách đáng tin cậy nhất để làm việc với mã vạch PDF417 trong C# là thư viện **Aspose.BarCode**, hỗ trợ đầy đủ mã hoá nhị phân. + +```bash +dotnet add package Aspose.BarCode +``` + +*Tại sao lại cần bước này?* +Lớp `BarcodeGenerator` nằm trong không gian tên `Aspose.BarCode`. Thêm gói này đảm bảo tất cả các DLL cần thiết có sẵn khi biên dịch và bạn nhận được các bản sửa lỗi và cải thiện hiệu năng mới nhất. + +--- + +## Bước 2: Tạo một dự án console mới (tùy chọn nhưng được khuyến nghị) + +Nếu bạn đang thử nghiệm mã một cách độc lập, hãy bắt đầu một ứng dụng console mới: + +```bash +dotnet new console -n Pdf417Demo +cd Pdf417Demo +``` + +Thêm gói vào dự án (lặp lại lệnh từ Bước 1 nếu bạn chưa thực hiện). + +--- + +## Bước 3: Chuẩn bị dữ liệu nhị phân để mã hoá + +PDF417 có thể mã hoá các byte thô khi bạn đặt chế độ mã hoá thành **Binary**. Dưới đây là một mảng byte đơn giản minh họa quá trình này. + +```csharp +// Step 3: Prepare binary data to encode +byte[] binaryData = { 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9 }; +``` + +*Tại sao lại dùng dữ liệu nhị phân?* +Chế độ Binary cho phép bạn lưu trữ bất kỳ chuỗi byte nào—hữu ích cho việc nhúng tệp, khóa mã hoá, hoặc dữ liệu tùy chỉnh không phải là văn bản thuần. + +## Bước 4: Khởi tạo trình tạo mã vạch và cấu hình PDF417 ở chế độ nhị phân + + + +## Bạn nên học gì tiếp theo? + +Các hướng dẫn sau đây bao gồm các chủ đề liên quan chặt chẽ, dựa trên các kỹ thuật được trình bày trong hướng dẫn này. Mỗi tài nguyên đều có các ví dụ mã hoàn chỉnh kèm giải thích từng bước để giúp bạn nắm vững các tính năng API bổ sung và khám phá các cách triển khai thay thế trong dự án của mình. + +- [Cách tạo mã vạch – PDF417 Compact với Aspose.BarCode](/barcode/english/net/compact-pdf417-encoding/compact-pdf417-basic-configuration/) +- [Cách tạo mã vạch PDF417 – Mã hoá PDF417 Compact](/barcode/english/net/compact-pdf417-encoding/) +- [Cách tạo mã vạch Aztec với tỷ lệ khung tùy chỉnh bằng Aspose.BarCode cho .NET](/barcode/english/net/aztec-barcode-encoding/aztec-aspect-ratio-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/vietnamese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md b/barcode/vietnamese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md new file mode 100644 index 000000000..9c2aced56 --- /dev/null +++ b/barcode/vietnamese/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/_index.md @@ -0,0 +1,234 @@ +--- +category: general +date: 2026-08-06 +description: Cách lưu hình ảnh mã vạch trong C# bằng MicroPdf417 với mô phỏng Code 128. + Tìm hiểu cách tạo mã vạch PDF417 và tùy chỉnh các thiết lập. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to save barcode +- how to generate pdf417 +- barcode generator with code128 +language: vi +lastmod: 2026-08-06 +og_description: Cách lưu hình ảnh mã vạch trong C# nhanh chóng với MicroPdf417 và + mô phỏng Code 128. Hãy làm theo hướng dẫn này để tạo mã vạch PDF417 và tùy chỉnh + đầu ra. +og_image_alt: Screenshot of generated MicroPdf417 barcode saved as PNG +og_title: Cách lưu hình ảnh mã vạch trong C# – hướng dẫn từng bước +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + headline: How to save barcode images in C# – complete guide + type: TechArticle +- description: How to save barcode images in C# using MicroPdf417 with Code 128 emulation. + Learn how to generate PDF417 barcodes and customize settings. + name: How to save barcode images in C# – complete guide + steps: + - name: Why this code works + text: '* **Single generator instance** – Re‑using `BarcodeGenerator` avoids repeated + memory allocation and keeps configuration consistent across modes. * **XDimension** + – Setting the pixel size to 2 yields a clear, readable image without inflating + file size. * **IsCode128Emulation** – Enables Code 128‑styl' + - name: Changing the image format + text: The `BarCodeImageFormat` enum supports PNG, JPEG, BMP, and TIFF. Replace + `BarCodeImageFormat.Png` with `BarCodeImageFormat.Jpeg` if you need a smaller + file size for web delivery. + - name: Generating a full‑size PDF417 instead of MicroPdf417 + text: 'If your use case requires the larger PDF417 standard, instantiate the generator + with `EncodeTypes.Pdf417`:' + - name: Handling special characters + text: "The group separator (`\x1D`) is required for Application Identifiers. If + your data contains other control characters, escape them using Unicode notation + (e.g., `\x1C` for file separator) to avoid runtime errors." + - name: License considerations + text: 'Running the code without a license triggers a watermark on the generated + images. Apply your license early in `Main`:' + type: HowTo +tags: +- barcode +- C# +- PDF417 +title: Cách lưu hình ảnh mã vạch trong C# – hướng dẫn đầy đủ +url: /vi/net/compact-pdf417-encoding/how-to-save-barcode-images-in-c-complete-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Cách lưu ảnh mã vạch trong C# – hướng dẫn đầy đủ + +Nếu bạn cần **how to save barcode** ảnh trong một ứng dụng .NET, hướng dẫn này sẽ cho bạn một giải pháp sẵn sàng chạy. Bạn sẽ học cách tạo mã vạch PDF417, áp dụng mô phỏng Code 128, và ghi các tệp PNG kết quả ra đĩa. + +Ví dụ sử dụng thư viện Aspose.BarCode for .NET, hỗ trợ MicroPdf417, Code 128 và nhiều tiêu chuẩn khác. Khi kết thúc hướng dẫn, bạn có thể tạo các tệp mã vạch cho các chế độ 908, 909, 910 và 911, và bạn sẽ hiểu cách điều chỉnh các tham số hình ảnh để quét tối ưu. + +## Yêu cầu trước + +* .NET 6.0 SDK hoặc phiên bản mới hơn đã được cài đặt +* Visual Studio 2022 (hoặc bất kỳ IDE nào hỗ trợ C#) +* Giấy phép Aspose.BarCode for .NET đang hoạt động (bản dùng thử miễn phí cũng đủ cho việc phát triển) + +Hướng dẫn giả định bạn đã quen thuộc với các dự án console C# cơ bản. + +## Bước 1: Tạo dự án console mới và thêm gói BarCode + +Mở terminal và chạy các lệnh sau: + +```bash +dotnet new console -n BarcodeDemo +cd BarcodeDemo +dotnet add package Aspose.BarCode +``` + +Lệnh `dotnet add package` sẽ tải xuống thư viện Aspose.BarCode mới nhất, chứa các lớp bạn cần để **how to generate pdf417** mã vạch. + +## Bước 2: Viết chương trình hoàn chỉnh + +Tạo một tệp có tên `Program.cs` (thay thế tệp hiện có) và dán đoạn mã dưới đây. Chương trình minh họa một **barcode generator with code128** mô phỏng và hiển thị một số cách **how to save barcode** ảnh. + +```csharp +using System; +using Aspose.BarCode.Generation; +using Aspose.BarCode.Image; + +namespace BarcodeDemo +{ + class Program + { + static void Main() + { + // Define the folder where PNG files will be written. + // Change this path to a location that exists on your machine. + string outputPath = @"C:\Barcodes\"; + + // ----------------------------------------------------------------- + // Step 2.1: Create a MicroPdf417 generator with an FNC1 alphanumeric indicator. + // This demonstrates **how to generate pdf417** barcodes that start with + // an Application Identifier (AI) followed by data. + // ----------------------------------------------------------------- + var generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, + "a\u001d1222322323"); // 'a' = alphanumeric indicator, \u001d = group separator + + // ----------------------------------------------------------------- + // Step 2.2: Adjust visual settings. + // The XDimension controls module size; Columns limits the number of + // data columns; IsCode128Emulation enables Code 128 style rendering. + // These settings are essential for a **barcode generator with code128** + // emulation that still produces a PDF417 symbol. + // ----------------------------------------------------------------- + generator.Parameters.Barcode.XDimension.Pixels = 2; + generator.Parameters.Barcode.Pdf417.Columns = 4; + generator.Parameters.Barcode.Pdf417.IsCode128Emulation = true; + + // ----------------------------------------------------------------- + // Step 2.3: Save the first barcode (Mode 908 – FNC1 + alphanumeric indicator). + // This is the core of **how to save barcode** images in PNG format. + // ----------------------------------------------------------------- + generator.Save($"{outputPath}MicroPdf417_Code128_908.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 908 barcode."); + + // ----------------------------------------------------------------- + // Step 2.4: Switch to the numeric indicator for Mode 909 and save. + // Changing the CodeText property reuses the same generator instance, + // which is more efficient than creating a new object. + // ----------------------------------------------------------------- + generator.CodeText = "99\u001d1222322323"; + generator.Save($"{outputPath}MicroPdf417_Code128_909.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 909 barcode."); + + // ----------------------------------------------------------------- + // Step 2.5: Use a generic Code 128 string for Modes 910/911 and save. + // This illustrates a **barcode generator with code128** scenario where + // the payload follows a pure Code 128 format. + // ----------------------------------------------------------------- + generator.CodeText = "123456789012345678"; + generator.Save($"{outputPath}MicroPdf417_Code128_910.png", BarCodeImageFormat.Png); + Console.WriteLine("Saved Mode 910 barcode."); + + Console.WriteLine("All barcodes have been saved successfully."); + } + } +} +``` + +### Tại sao đoạn mã này hoạt động + +* **Single generator instance** – Việc tái sử dụng `BarcodeGenerator` tránh việc cấp phát bộ nhớ lặp lại và giữ cấu hình nhất quán giữa các chế độ. +* **XDimension** – Đặt kích thước pixel thành 2 tạo ra hình ảnh rõ ràng, dễ đọc mà không làm tăng kích thước tệp. +* **IsCode128Emulation** – Cho phép các mẫu thanh kiểu Code 128 trong ký hiệu PDF417, giúp một số máy quét đọc chính xác hơn. +* **Save method** – Phương thức `Save` overload bạn thấy là cách chuẩn để **how to save barcode** các tệp; nó ghi ảnh trực tiếp vào hệ thống tệp với định dạng bạn chỉ định. + +## Bước 3: Chạy chương trình và xác minh đầu ra + +Xây dựng và thực thi dự án: + +```bash +dotnet run +``` + +Sau khi console in ra các thông báo xác nhận, mở thư mục bạn đã đặt trong `outputPath`. Bạn sẽ thấy bốn tệp PNG: + +* `MicroPdf417_Code128_908.png` – chỉ báo FNC1 + alphanumeric +* `MicroPdf417_Code128_909.png` – chỉ báo FNC1 + numeric +* `MicroPdf417_Code128_910.png` – payload Code 128 thuần + +Mỗi hình ảnh chứa một ký hiệu MicroPdf417 có thể được quét bằng các đầu đọc mã vạch tiêu chuẩn. Nếu máy quét không đọc được tệp, hãy cân nhắc tăng `XDimension.Pixels` hoặc điều chỉnh `Pdf417.Columns` để phù hợp với độ phân giải của thiết bị mục tiêu. + +## Bước 4: Các biến thể phổ biến và trường hợp đặc biệt + +### Thay đổi định dạng ảnh + +`enum` `BarCodeImageFormat` hỗ trợ PNG, JPEG, BMP và TIFF. Thay `BarCodeImageFormat.Png` bằng `BarCodeImageFormat.Jpeg` nếu bạn cần tệp có kích thước nhỏ hơn cho việc truyền tải trên web. + +### Tạo PDF417 kích thước đầy đủ thay vì MicroPdf417 + +Nếu trường hợp sử dụng của bạn yêu cầu tiêu chuẩn PDF417 lớn hơn, khởi tạo generator với `EncodeTypes.Pdf417`: + +```csharp +var fullSizeGenerator = new BarcodeGenerator(EncodeTypes.Pdf417, "your data"); +``` + +Nhớ điều chỉnh `Pdf417.Rows` và `Pdf417.Columns` để đáp ứng các thông số của tiêu chuẩn ISO/IEC 15417. + +### Xử lý ký tự đặc biệt + +Dấu phân tách nhóm (`\u001d`) là bắt buộc cho Application Identifiers. Nếu dữ liệu của bạn chứa các ký tự điều khiển khác, hãy escape chúng bằng ký hiệu Unicode (ví dụ, `\u001c` cho file separator) để tránh lỗi thời gian chạy. + +### Các lưu ý về giấy phép + +Chạy mã mà không có giấy phép sẽ tạo dấu watermark trên các ảnh được tạo. Áp dụng giấy phép của bạn ngay trong `Main`: + +```csharp +var license = new Aspose.BarCode.License(); +license.SetLicense("Aspose.BarCode.lic"); +``` + +## Bước 5: Mẹo cho môi trường sản xuất + +* **Batch processing** – Đặt logic lưu trong một vòng lặp đọc các dòng từ CSV hoặc cơ sở dữ liệu; tái sử dụng cùng một instance `BarcodeGenerator` để tăng hiệu năng. +* **Thread safety** – `BarcodeGenerator` không an toàn với đa luồng. Tạo một instance riêng cho mỗi luồng nếu bạn thực hiện tạo mã vạch song song. +* **Error handling** – Bao quanh các lời gọi `Save` bằng khối `try…catch` để bắt các ngoại lệ I/O, đặc biệt khi ghi vào các chia sẻ mạng. + +## Kết luận + +Bây giờ bạn đã biết cách **how to save barcode** ảnh trong C# bằng Aspose.BarCode, cách **how to generate pdf417** ký hiệu với mô phỏng Code 128, và cách cấu hình một **barcode generator with code128** cho nhiều chế độ. Ví dụ hoàn chỉnh, có thể chạy này minh họa mọi bước từ thiết lập dự án đến các tệp PNG cuối cùng. + +Tiếp theo, khám phá các chủ đề liên quan như **embedding barcodes in PDF documents**, **creating QR codes with custom colors**, hoặc **integrating barcode generation into ASP.NET Core APIs**. Các phần mở rộng này dựa trên các nguyên tắc đã đề cập và cho phép bạn tự động hoá nhiều quy trình quét. + +## Bạn Nên Học Gì Tiếp Theo? + +Các hướng dẫn sau đây bao gồm các chủ đề liên quan chặt chẽ, dựa trên các kỹ thuật được trình bày trong hướng dẫn này. Mỗi tài nguyên đều có các ví dụ mã hoàn chỉnh với giải thích từng bước để giúp bạn nắm vững các tính năng API bổ sung và khám phá các cách triển khai thay thế trong dự án của mình. + +- [Cách Tạo Mã Vạch PDF417 – Mã Hoá PDF417 Compact](/barcode/english/net/compact-pdf417-encoding/) +- [Cách Lưu PNG bằng DataMatrix C40 với Aspose.BarCode](/barcode/english/net/datamatrix-barcode-configuration/datamatrix-encoding-mode-c40/) +- [Cách Tạo Mã Vạch - Các Loại Mã Vạch Một Chiều](/barcode/english/net/one-dimensional-barcode-types/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/vietnamese/net/one-dimensional-barcode-types/_index.md b/barcode/vietnamese/net/one-dimensional-barcode-types/_index.md index e62a15ca4..69081f869 100644 --- a/barcode/vietnamese/net/one-dimensional-barcode-types/_index.md +++ b/barcode/vietnamese/net/one-dimensional-barcode-types/_index.md @@ -78,6 +78,8 @@ tìm hiểu cách tạo mã vạch trong .NET bằng Aspose.BarCode cho .NET. H Tìm hiểu cách xử lý các trường hợp ngoại lệ trong khi tạo mã vạch một chiều bằng Aspose.BarCode cho .NET. Hướng dẫn từng bước này đảm bảo các giải pháp mã vạch có khả năng chịu lỗi. Bắt đầu ngay bây giờ! ### [Cấu hình tỷ lệ rộng-hẹp một chiều](./one-dimensional-wide-narrow-ratio-configuration/) Tạo mã vạch tùy chỉnh dễ dàng với Aspose.BarCode cho .NET. Hướng dẫn từng bước cho cấu hình tỷ lệ rộng-hẹp một chiều. +### [Cách thiết lập mã vạch trong C# – hướng dẫn đầy đủ Aspose.BarCode](./how-to-set-barcode-in-c-complete-aspose-barcode-guide/) +Hướng dẫn chi tiết cách tạo và cấu hình mã vạch trong C# bằng Aspose.BarCode, bao gồm các bước thực hiện đầy đủ. ## Phần kết luận @@ -89,4 +91,4 @@ Với bài viết này, bạn không chỉ có được kiến thức về các {{< /blocks/products/pf/main-container >}} {{< /blocks/products/pf/main-wrap-class >}} -{{< blocks/products/products-backtop-button >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file diff --git a/barcode/vietnamese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md b/barcode/vietnamese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md new file mode 100644 index 000000000..a0b18fc16 --- /dev/null +++ b/barcode/vietnamese/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/_index.md @@ -0,0 +1,161 @@ +--- +category: general +date: 2026-08-06 +description: Cách thiết lập mã vạch bằng Aspose.BarCode trong C#. Tìm hiểu cách thay + đổi ký tự macro và tạo hình ảnh mã vạch C# với mã từng bước. +draft: false +images: +- PLACEHOLDER_URL/og-image.png +keywords: +- how to set barcode +- how to change macro +- barcode generator c# +- create barcode image c# +language: vi +lastmod: 2026-08-06 +og_description: Cách thiết lập mã vạch với Aspose.BarCode trong C#. Hướng dẫn này + cho thấy cách thay đổi ký tự macro và tạo nhanh hình ảnh mã vạch C#. +og_image_alt: Screenshot of a MicroPDF417 barcode generated with C# code +og_title: Cách thiết lập mã vạch trong C# – Hướng dẫn Aspose.BarCode +schemas: +- author: Aspose + dateModified: '2026-08-06' + description: How to set barcode using Aspose.BarCode in C#. Learn how to change + macro characters and create barcode image C# with step‑by‑step code. + headline: How to set barcode in C# – complete Aspose.BarCode guide + type: TechArticle +tags: +- barcode +- C# +- Aspose.BarCode +title: Cách thiết lập mã vạch trong C# – hướng dẫn đầy đủ Aspose.BarCode +url: /vi/net/one-dimensional-barcode-types/how-to-set-barcode-in-c-complete-aspose-barcode-guide/ +--- + +{{< blocks/products/pf/main-wrap-class >}} +{{< blocks/products/pf/main-container >}} +{{< blocks/products/pf/tutorial-page-section >}} + +# Cách thiết lập mã vạch trong C# – hướng dẫn đầy đủ Aspose.BarCode + +Nếu bạn cần **cách thiết lập mã vạch** trong một ứng dụng .NET, hướng dẫn này sẽ chỉ cho bạn các bước chính xác bằng cách sử dụng Aspose.BarCode. Bạn sẽ thấy cách thay đổi ký tự macro, điều chỉnh các tham số trực quan, và **tạo file ảnh mã vạch C#** có thể lưu trực tiếp vào đĩa. + +Hướng dẫn bao gồm mọi thứ từ cài đặt thư viện đến tạo hai mã vạch MicroPDF417 với các giá trị macro khác nhau. Không cần tài liệu bên ngoài—bạn có thể sao chép mã, chạy nó, và kiểm tra kết quả PNG ngay lập tức. + +## Yêu cầu trước + +Trước khi bắt đầu, hãy chắc chắn rằng bạn có: + +* .NET 6.0 hoặc mới hơn (ví dụ sử dụng dự án console) +* Visual Studio 2022 hoặc bất kỳ IDE C# nào +* Giấy phép Aspose.BarCode đang hoạt động (bản dùng thử miễn phí cũng đủ cho việc thử nghiệm) +* Kiến thức cơ bản về cú pháp C# + +Bạn cũng sẽ cần gói NuGet: + +```bash +dotnet add package Aspose.BarCode +``` + +## Cách thiết lập các tham số mã vạch – bước 1: tạo generator + +Hành động đầu tiên là khởi tạo một `BarcodeGenerator` với ký hiệu và dữ liệu mong muốn. Sử dụng `EncodeTypes.MicroPdf417` cho Aspose.BarCode biết tạo ra một biến thể PDF417 gọn nhẹ. + +```csharp +using Aspose.BarCode; +using Aspose.BarCode.Generation; + +namespace BarcodeDemo +{ + internal class Program + { + private static void Main() + { + // Step 1: Create a MicroPDF417 barcode generator with the desired text + BarcodeGenerator generator = new BarcodeGenerator( + EncodeTypes.MicroPdf417, // symbology + "12345ABC"); // data to encode +``` + +**Tại sao điều này quan trọng:** `BarcodeGenerator` là đối tượng trung tâm; tất cả các cài đặt sau này sẽ sửa đổi thuộc tính `Parameters` của nó. Chọn đúng `EncodeTypes` đảm bảo mã vạch tuân theo tiêu chuẩn MicroPDF417. + +## Cách thay đổi ký tự macro – bước 2: điều chỉnh các tham số trực quan + +Ký tự macro là các mã điều khiển tùy chọn cho phép bạn nối nhiều ký hiệu PDF417 lại với nhau. Ví dụ chuyển đổi giữa `Macro05` và `Macro06`. Bạn cũng thiết lập độ rộng mô-đun (`XDimension`) và số cột để kiểm soát kích thước mã vạch. + +```csharp + // Step 2: Adjust visual parameters – set the X‑dimension (module width) and number of columns + generator.Parameters.Barcode.XDimension.Pixels = 2; // module width in pixels + generator.Parameters.Barcode.Pdf417.Columns = 4; // number of data columns + + // Encode the first macro character (Macro05) and save the image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro05; + generator.Save("MicroPdf417_Macro05.png", BarCodeImageFormat.Png); +``` + +**Tại sao bạn thay đổi macro:** Ký tự macro thông báo cho máy quét rằng mã vạch này là một phần của tập dữ liệu lớn hơn. Việc chuyển đổi nó minh họa cách cùng một dữ liệu có thể được liên kết với các định danh macro khác nhau. + +## Cách thiết lập mã vạch – bước 3: tạo mã vạch thứ hai với macro khác + +Bây giờ chúng ta tái sử dụng cùng một thể hiện `generator`, chỉ thay đổi giá trị macro. Điều này tránh việc tạo lại đối tượng và chứng minh rằng **cách thiết lập mã vạch** có thể thực hiện tại thời gian chạy. + +```csharp + // Step 3: Switch to the second macro character (Macro06) and save the new image + generator.Parameters.Barcode.Pdf417.MacroCharacters = MacroCharacter.Macro06; + generator.Save("MicroPdf417_Macro06.png", BarCodeImageFormat.Png); + } + } +} +``` + +### Kết quả mong đợi + +Chạy chương trình sẽ tạo hai file PNG trong thư mục dự án: + +* `MicroPdf417_Macro05.png` – mã vạch với Macro05 +* `MicroPdf417_Macro06.png` – mã vạch với Macro06 + +Cả hai hình ảnh đều hiển thị một ký hiệu MicroPDF417 gọn nhẹ mã hoá `12345ABC`. Bạn có thể mở các file PNG bằng bất kỳ trình xem ảnh nào để kiểm tra chất lượng hình ảnh. + +## Các thực hành tốt nhất khi sử dụng Barcode generator C# + +* **Tái sử dụng generator:** Thay đổi `Parameters` trên một thể hiện hiện có hiệu quả hơn so với việc tạo generator mới cho mỗi mã vạch. +* **Đặt X‑dimension sớm:** Độ rộng mô-đun ảnh hưởng đến kích thước tổng thể của hình ảnh; hãy điều chỉnh trước khi lưu. +* **Xác thực việc sử dụng macro:** Không phải tất cả máy quét đều hỗ trợ ký tự macro. Hãy thử nghiệm với phần cứng mục tiêu nếu bạn dự định sử dụng chúng trong môi trường sản xuất. +* **Giải phóng tài nguyên:** `BarcodeGenerator` triển khai `IDisposable`. Trong dịch vụ chạy lâu, hãy bọc nó trong khối `using` hoặc gọi `Dispose()` khi hoàn thành. + +```csharp +using (BarcodeGenerator generator = new BarcodeGenerator(EncodeTypes.MicroPdf417, "12345ABC")) +{ + // configure parameters... +} +``` + +## Tạo ảnh mã vạch C# – mẹo khắc phục sự cố + +| Triệu chứng | Nguyên nhân có thể | Cách khắc phục | +|-------------------------------------|----------------------------------------------------|-----------------------------------------------| +| File PNG trống | `XDimension` được đặt thành 0 hoặc giá trị quá cao | Sử dụng độ rộng pixel hợp lý (1‑5) | +| Mã vạch không đọc được bởi máy quét | Ký tự macro không phù hợp với máy quét | Kiểm tra tài liệu máy quét; sử dụng `MacroNone` nếu không cần | +| Ngoại lệ `ArgumentOutOfRangeException` | Số cột vượt ngoài phạm vi cho phép (1‑30) | Giữ `Columns` trong khoảng từ 1 đến 30 | + +## Kết luận + +Bây giờ bạn đã biết **cách thiết lập thuộc tính mã vạch**, **cách thay đổi ký tự macro**, và cách **tạo file ảnh mã vạch C#** bằng Aspose.BarCode. Ví dụ đầy đủ, có thể chạy được này minh họa quy trình toàn bộ từ việc tạo generator đến xuất ảnh. + +Tiếp theo, khám phá các ký hiệu khác (`EncodeTypes.QR`, `EncodeTypes.Code128`) hoặc nhúng mã vạch trực tiếp vào PDF bằng Aspose.PDF. Cả hai chủ đề đều thuộc hệ sinh thái rộng hơn **barcode generator c#** và có thể được thêm vào dự án này với ít thay đổi mã. + +Chúc lập trình vui vẻ, và hãy thoải mái thử nghiệm với các giá trị macro, kích thước và định dạng đầu ra khác nhau! + +## Bạn nên học gì tiếp theo? + +Các hướng dẫn sau đây bao gồm các chủ đề liên quan chặt chẽ, xây dựng dựa trên các kỹ thuật được trình bày trong hướng dẫn này. Mỗi tài nguyên đều có các ví dụ mã hoàn chỉnh, hoạt động kèm theo giải thích từng bước để giúp bạn nắm vững các tính năng API bổ sung và khám phá các cách triển khai thay thế trong dự án của mình. + +- [Cách tạo vùng yên tĩnh cho mã vạch Code 16K bằng Aspose.BarCode cho .NET](/barcode/english/net/code-16k-encoding/code-16k-quiet-zone-settings/) +- [Cách tạo dotcode với văn bản mã mở rộng bằng Aspose.BarCode cho .NET](/barcode/english/net/dotcode-barcode-configuration/dotcode-extended-code-text-configuration/) +- [Cách đặt viền cho tùy chỉnh mã vạch ITF-14](/barcode/english/net/itf-14-barcode-customization/) + +{{< /blocks/products/pf/tutorial-page-section >}} +{{< /blocks/products/pf/main-container >}} +{{< /blocks/products/pf/main-wrap-class >}} +{{< blocks/products/products-backtop-button >}} \ No newline at end of file