Как стать автором
Обновить

Как создать изображение штрих-кода на Java

Время на прочтение7 мин
Количество просмотров3.1K
Автор оригинала: Katherine Coyle

Штрих-коды повсеместно используются в коммерции и розничной торговле для помощи в отслеживании товаров, покупках и инвентаризации. Они позволяют организациям вести точный учет их поставок, товаров и других предметов, которые являются ключевыми для их деятельности. Для международного и национального использования существуют разные штрих-коды, которые используются в определенных контекстах. Например, штрих-коды UPC и EAN выглядят одинаково по своему форматированию и могут использоваться аналогичным образом, но UPC - это в основном североамериканская система кодирования; однако, UPC и EAN используются во всем мире. QR - коды также используется во всем мире, но они обычно используется для обмена сложными наборами информации, например, сведениями о товарах или ссылками на веб-сайты.

Следующие пять API-интерфейсов позволят вам создавать изображения штрих-кода в трех ранее упомянутых форматах. Это позволит вам распечатать или создать упаковку с прикрепленными вашими личными штрих-кодами, без необходимости извлекать ее из внешнего источника. Это может быть особенно полезно для малого бизнеса, поскольку обеспечивает большую независимость компании и улучшает визуальную и профессиональную привлекательность ваших продуктов. 

Чтобы использовать любой из следующих API, вам сначала необходимо установить ссылку на SDK с Maven или Gradle. Чтобы установить с Maven, добавьте ссылку Jitpack на репозиторий в pom.xml: 

<repositories>
    <repository>
        <id>jitpack.io</id>
        <url>https://jitpack.io</url>
    </repository>
</repositories>

Затем добавьте ссылку на зависимость:

<dependencies>
<dependency>
    <groupId>com.github.Cloudmersive</groupId>
    <artifactId>Cloudmersive.APIClient.Java</artifactId>
    <version>v3.54</version>
</dependency>
</dependencies>

Чтобы установить нужную зависимость с помощью Gradle, добавьте ссылку на свой корневой build.gradle в конце репозиториев:

allprojects {
    repositories {
        ...
        maven { url 'https://jitpack.io' }
    }
}

Затем добавьте зависимость в build.gradle:

dependencies {
   implementation 'com.github.Cloudmersive:Cloudmersive.APIClient.Java:v3.54'
}

Первый набор функций сосредоточен на создании штрих-кодов UPC в двух форматах: UPC-A и UPC-E. UPC-A — это стандартный тип штрих-кода UPC, содержащий 12 цифр, которые кодируют информацию о продукте. UPC-E действует как сжатая форма этого кода, поскольку он может принимать исходное 12-значное значение и сокращать его до 6 цифр с седьмой цифрой контрольной суммы. Однако если ваше значение UPC не начинается с нуля, вы не можете сжать его в код UPC-E. Их следует в основном использовать в розничной торговле и простой кодировке продуктов, поскольку они не приспособлены для передачи сложной информации. Чтобы создать штрих-код UPC-A, установите SDK, как показано выше, а затем вызовите функцию:

// Import classes:
//import com.cloudmersive.client.invoker.ApiClient;
//import com.cloudmersive.client.invoker.ApiException;
//import com.cloudmersive.client.invoker.Configuration;
//import com.cloudmersive.client.invoker.auth.*;
//import com.cloudmersive.client.GenerateBarcodeApi;

ApiClient defaultClient = Configuration.getDefaultApiClient();

// Configure API key authorization: Apikey
ApiKeyAuth Apikey = (ApiKeyAuth) defaultClient.getAuthentication("Apikey");
Apikey.setApiKey("YOUR API KEY");

// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//Apikey.setApiKeyPrefix("Token");

GenerateBarcodeApi apiInstance = new GenerateBarcodeApi();

String value = "value_example"; // String | UPC-A barcode value to generate from

try {
    byte[] result = apiInstance.generateBarcodeUPCA(value);
    System.out.println(result);
} catch (ApiException e) {
    System.err.println("Exception when calling GenerateBarcodeApi#generateBarcodeUPCA");
    e.printStackTrace();
}

Единственный ввод, необходимый для этой функции, — это значение штрих-кода UPC, из которого будет создано изображение. Это вернет выходной файл, содержащий изображение штрих-кода в формате PNG. Чтобы этот API работал правильно, необходимо обеспечить выполнение определенных требований:

  • Значение штрих-кода UPC действительное и вводится правильно.

  • Вы ввели свой ключ ключ API, обеспечивающий 800 ежемесячных вызовов через нашу библиотеку API. Его можно бесплатно получить на веб-сайте Cloudmersive.

Чтобы создать код UPC-E, выполните те же действия что и выше, чтобы установить и вызвать следующую функцию:

// Import classes:
//import com.cloudmersive.client.invoker.ApiClient;
//import com.cloudmersive.client.invoker.ApiException;
//import com.cloudmersive.client.invoker.Configuration;
//import com.cloudmersive.client.invoker.auth.*;
//import com.cloudmersive.client.GenerateBarcodeApi;

ApiClient defaultClient = Configuration.getDefaultApiClient();

// Configure API key authorization: Apikey
ApiKeyAuth Apikey = (ApiKeyAuth) defaultClient.getAuthentication("Apikey");
Apikey.setApiKey("YOUR API KEY");

// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//Apikey.setApiKeyPrefix("Token");

GenerateBarcodeApi apiInstance = new GenerateBarcodeApi();
String value = "value_example"; // String | UPC-E barcode value to generate from

try {
    byte[] result = apiInstance.generateBarcodeUPCE(value);
    System.out.println(result);
} catch (ApiException e) {
    System.err.println("Exception when calling GenerateBarcodeApi#generateBarcodeUPCE");
    e.printStackTrace();
}

Штрих-коды EAN были созданы для использования в Европе, но признаны во всем мире. Есть два типа EAN кода — это EAN-13 и EAN-8, причем EAN-13 является наиболее широко используемым. Как и в формате UPC, коды EAN могут кодировать только числовые данные, что позволяет их быстро и легко сканировать. EAN-13 содержит 13 цифр, которые представляют код страны, информацию о продукте и производителе, а также цифры контрольной суммы. EAN-8 состоит из 8 цифр и предназначен для использования на продуктах с упаковкой, которая слишком мала для использования кода EAN-13.

Чтобы сгенерировать код EAN-13, установите SDK, как показано выше, а затем вызовите функцию:

// Import classes:
//import com.cloudmersive.client.invoker.ApiClient;
//import com.cloudmersive.client.invoker.ApiException;
//import com.cloudmersive.client.invoker.Configuration;
//import com.cloudmersive.client.invoker.auth.*;
//import com.cloudmersive.client.GenerateBarcodeApi;

ApiClient defaultClient = Configuration.getDefaultApiClient();

// Configure API key authorization: Apikey
ApiKeyAuth Apikey = (ApiKeyAuth) defaultClient.getAuthentication("Apikey");
Apikey.setApiKey("YOUR API KEY");

// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//Apikey.setApiKeyPrefix("Token");

GenerateBarcodeApi apiInstance = new GenerateBarcodeApi();
String value = "value_example"; // String | Barcode value to generate from

try {
    byte[] result = apiInstance.generateBarcodeEAN13(value);
    System.out.println(result);
} catch (ApiException e) {
    System.err.println("Exception when calling GenerateBarcodeApi#generateBarcodeEAN13");
    e.printStackTrace();
}

Для кода EAN-8 выполните те же начальные шаги и вызовите функцию ниже:


// Import classes:
//import com.cloudmersive.client.invoker.ApiClient;
//import com.cloudmersive.client.invoker.ApiException;
//import com.cloudmersive.client.invoker.Configuration;
//import com.cloudmersive.client.invoker.auth.*;
//import com.cloudmersive.client.GenerateBarcodeApi;

ApiClient defaultClient = Configuration.getDefaultApiClient();

// Configure API key authorization: Apikey
ApiKeyAuth Apikey = (ApiKeyAuth) defaultClient.getAuthentication("Apikey");
Apikey.setApiKey("YOUR API KEY");

// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//Apikey.setApiKeyPrefix("Token");

GenerateBarcodeApi apiInstance = new GenerateBarcodeApi();
String value = "value_example"; // String | Barcode value to generate from

try {
    byte[] result = apiInstance.generateBarcodeEAN8(value);
    System.out.println(result);
} catch (ApiException e) {
    System.err.println("Exception when calling GenerateBarcodeApi#generateBarcodeEAN8");
    e.printStackTrace();
}

Все предыдущие форматы штрих-кодов считаются одномерными типами, поскольку они могут кодировать только простые числовые данные, такие как коды продуктов. Однако, если вы хотите передать более сложную информацию, идеально подойдет QR-код в формате 2D. QR-код, означающий Quick Return code (кода быстрого возврата), может использоваться для передачи широкого спектра информации путем сканирования с помощью устройства, имеющего поддержку QR-кода, такого как смартфон. Их можно использовать для получения сведений о продукте в маркетинговых целях и для обмена служебной информацией, например меню.

Чтобы сгенерировать QR-код, вызовите следующую функцию:

// Import classes:
//import com.cloudmersive.client.invoker.ApiClient;
//import com.cloudmersive.client.invoker.ApiException;
//import com.cloudmersive.client.invoker.Configuration;
//import com.cloudmersive.client.invoker.auth.*;
//import com.cloudmersive.client.GenerateBarcodeApi;

ApiClient defaultClient = Configuration.getDefaultApiClient();

// Configure API key authorization: Apikey
ApiKeyAuth Apikey = (ApiKeyAuth) defaultClient.getAuthentication("Apikey");
Apikey.setApiKey("YOUR API KEY");

// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)
//Apikey.setApiKeyPrefix("Token");

GenerateBarcodeApi apiInstance = new GenerateBarcodeApi();
String value = "value_example"; // String | QR code text to convert into the QR code barcode

try {
    byte[] result = apiInstance.generateBarcodeQRCode(value);
    System.out.println(result);
} catch (ApiException e) {
    System.err.println("Exception when calling GenerateBarcodeApi#generateBarcodeQRCode");
    e.printStackTrace();
}

Входные данные для этой функции могут включать любой текст произвольной формы и, следовательно, обеспечивают гибкость в соответствии с вашими требованиями.

Все эти функции возвращают файл PNG, содержащий изображение вашего штрих-кода, для использования на любом продукте или предмете. Если у вас есть какие-либо вопросы об использовании этих API-интерфейсов или вопросы, касающиеся других решений API, вы можете посетить веб-сайт Cloudmersive, где наша команда будет рада помочь во всем, что вам может понадобиться.

Теги:
Хабы:
Всего голосов 7: ↑5 и ↓2+3
Комментарии4

Публикации

Истории

Работа

Java разработчик
350 вакансий

Ближайшие события