Գեներացնել շտրիխ կոդ Linux-ում՝ օգտագործելով .NET ծրագիրը

Բլոգի կատեգորիա. Շտրիխ կոդ.NETLinux

22.12.2023

Այս հոդվածը բացատրում է, թե ինչպես ստեղծել կոնսոլային .NET ծրագիր և ստեղծել շտրիխ կոդ Ubuntu-ում: Շտրիխ կոդ ստեղծելու համար օգտագործվում է VintaSoft Barcode .NET SDK-ն:

Ահա այդ առաջադրանքը կատարելու քայլերը.
  1. Բացեք Ubuntu աշխատասեղանը:

  2. Ստեղծել թղթապանակ, որը կպահի .NET ծրագրի ֆայլերը: Եկեք ստեղծենք "Generate_Barcode" թղթապանակը ընթացիկ օգտատիրոջ աշխատասեղանին և անցնենք այդ թղթապանակին:


  3. Բացեք կոնսոլային հրամանների տերմինալը: Դա կարելի է անել՝ ընտրելով "Բացել տերմինալում" կետը համատեքստային ցանկում կամ սեղմելով Ctrl+Alt+T ստեղների համադրությունը:


  4. Կանչեք հրամանը տերմինալում, որը կստեղծի նոր կոնսոլային .NET ծրագրի նախագիծ՝
    dotnet new console --framework net8.0
    



    Ստեղծված նախագիծը պարունակում է "Generate_Barcode.csproj" նախագծի ֆայլը և "Program.cs" ֆայլը, որը պարունակում է ծրագրի C# կոդը: Փակել տերմինալը:

  5. Բացեք "Generate_Barcode.csproj" նախագծի ֆայլը տեքստային խմբագրիչում և փոխեք ֆայլի տեքստը հետևյալ տեքստի՝
    <Project Sdk="Microsoft.NET.Sdk">
    
      <PropertyGroup>
        <OutputType>Exe</OutputType>
        <TargetFramework>net8.0</TargetFramework>
        <RootNamespace>ConsoleApp1</RootNamespace>
        <ImplicitUsings>enable</ImplicitUsings>
        <Nullable>enable</Nullable>
      </PropertyGroup>
    
      <ItemGroup>
        <PackageReference Include="SkiaSharp" Version="2.88.6" />
        <PackageReference Include="SkiaSharp.NativeAssets.Linux" Version="2.88.6" />
        <PackageReference Include="Vintasoft.Barcode" Version="14.2.0.3" />
        <PackageReference Include="Vintasoft.Barcode.SkiaSharp" Version="14.2.0.3" />
        <PackageReference Include="Vintasoft.Shared" Version="4.1.0.3" />
      </ItemGroup>
    
    </Project>
    



    Փոփոխված նախագծի հղումները nuget-փաթեթներ են VintaSoft Barcode .NET SDK-ի համար (Vintasoft.Shared.dll, Vintasoft.Barcode.dll, Vintasoft.Barcode.SkiaSharp.dll):

  6. Բացեք "Program.cs" ֆայլը և փոխեք դրա կոդը հետևյալ C# կոդով՝
    namespace Generate_Barcode
    {
        class Program
        {
            static void Main(string[] args)
            {
                // register the evaluation license for VintaSoft Barcode .NET SDK
                Vintasoft.Barcode.BarcodeGlobalSettings.Register("%EVAL_LIC_USER_NAME%", "%EVAL_LIC_USER_EMAIL%", "%EVAL_LIC_DATE%", "%EVAL_LIC_REG_CODE%");
    
                // Vintasoft.Barcode.SkiaSharp.dll allows to load bitmap from BMP, DNG, GIF, HEIF, JPEG, PNG, WEBP files using image codecs from SkiaSharp library
                Vintasoft.Barcode.SkiaSharpAssembly.Init();
    
                // generate Code128 barcode as a raster image and save to a PNG file
                GenerateBarcodeAsRasterImage(Vintasoft.Barcode.BarcodeType.Code128, "VintaSoft Barcode .NET SDK", "rasterBarcodeImage.png");
    
                // generate QR barcode as vector image and save to a SVG file
                GenerateBarcodeAsVectorImage(Vintasoft.Barcode.BarcodeType.QR, "VintaSoft Barcode .NET SDK", "vectorBarcode.svg");
            }
    
            /// <summary>
            /// Generates barcode as raster image and saves to an image file.
            /// </summary>
            /// <param name="barcodeType">Barcode type.</param>
            /// <param name="barcodeValue">Barcode value.</param>
            /// <param name="pngFilename">The filename, where barcode image must be saved.</param>
            public static void GenerateBarcodeAsRasterImage(Vintasoft.Barcode.BarcodeType barcodeType, string barcodeValue, string pngFilename)
            {
                // create the barcode writer
                using (Vintasoft.Barcode.BarcodeWriter barcodeWriter = new Vintasoft.Barcode.BarcodeWriter())
                {
                    // set barcode writer settings
                    barcodeWriter.Settings.Barcode = barcodeType;
                    barcodeWriter.Settings.Value = barcodeValue;
    
                    // generate barcode as raster image and save to a PNG file
                    barcodeWriter.SaveBarcodeAsImage(pngFilename);
                }
            }
    
            /// <summary>
            /// Generates barcode in vector form and saves to a SVG file.
            /// </summary>
            /// <param name="barcodeType">Barcode type.</param>
            /// <param name="barcodeValue">Barcode value.</param>
            /// <param name="svgFilename">The filename, where SVG file must be saved.</param>
            public static void GenerateBarcodeAsVectorImage(Vintasoft.Barcode.BarcodeType barcodeType, string barcodeValue, string svgFilename)
            {
                // create the barcode writer
                using (Vintasoft.Barcode.BarcodeWriter barcodeWriter = new Vintasoft.Barcode.BarcodeWriter())
                {
                    // set barcode writer settings
                    barcodeWriter.Settings.Barcode = barcodeType;
                    barcodeWriter.Settings.Value = barcodeValue;
    
                    // generate SVG file
                    string svgFile = barcodeWriter.GetBarcodeAsSvgFile();
    
                    // save SVG file
                    System.IO.File.WriteAllText(svgFilename, svgFile);
                }
            }
    
        }
    }
    



    Հավելվածի կոդը կստեղծի Code128 շտրիխ կոդը որպես ռաստրային պատկեր և QR շտրիխ կոդը վեկտորային տեսքով, ստեղծված շտրիխ կոդերը կպահպանվեն ֆայլերում:

  7. Ստացեք կոդը Linux-ում գնահատման տարբերակն օգտագործելու համար՝ օգտագործելով փաստաթղթերում նկարագրված եղանակը և տեղադրեք ստացված կոդը "Program.cs" ֆայլի C# կոդի մեջ։


  8. Բացեք տերմինալը և կոմպիլացրեք .NET նախագիծը՝ օգտագործելով հետևյալ հրամանը՝
    dotnet build Generate_Barcode.csproj
    



    Փակեք տերմինալը։

  9. Անցեք "bin/Debug/net8.0/" թղթապանակ:


  10. Բացեք տերմինալը և գործարկեք .NET ծրագիրը՝ օգտագործելով հետևյալ հրամանը.
    dotnet ./Generate_Barcode.dll
    



    Փակեք տերմինալը և տեսեք ստեղծված PNG և SVG ֆայլերը: