Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Использование библиотеки ZBar для чтения штрихкодов в Delphie XE5: обход проблемы несовместимости форматов

Delphi , ОС и Железо , Сканер

Заголовок: Использование библиотеки ZBar для чтения штрихкодов в Delphi XE5: обход проблемы несовместимости форматов

В статье рассматривается вопрос о том, как использовать библиотеку ZBar для чтения штрихкодов в приложениях, разработанных с помощью Delphi XE5. Библиотека ZBar доступна в форматах .jar и .so, но Delphi XE5 не поддерживает эти форматы напрямую. В статье описаны два подхода к решению этой проблемы: использование менеджера проектов для добавления Java-библиотек в приложение и создание и развертывание файла classes.dex вручную.

Подтвержденный ответ:

Использование менеджера проектов для добавления Java-библиотек в приложение является простым и быстрым способом добавить библиотеку ZBar в приложение для Android. Для этого необходимо развернуть узел "Целевые платформы" в менеджере проектов, затем щелкнуть правой кнопкой мыши по узлу "Библиотеки" и выбрать "Добавить". В открывшемся диалоге следует выбрать файл .jar и нажать "Открыть".Теперь библиотека ZBar отображается в менеджере проектов под узлом "Библиотеки", и ее можно использовать в приложении.

Альтернативный ответ:

Если первый способ не работает, можно создать и развернуть файл classes.dex вручную. Для этого необходимо использовать командную строку и инструмент dx, который можно найти по адресу "C:\Path\To\Embarcadero\Studio\Version\PlatformSDK\adt-bundle-windows-x86-20131030\sdk". Необходимо запустить dx с параметром --dex, указать выходной путь файла classes.dex и список путей к файлам .jar, которые следует включить в файл classes.dex. Например:

dx --dex --output="classes.dex" "C:\Path\To\Library1.jar" "C:\Path\To\Library2.jar"

После создания файла classes.dex его необходимо развернуть в приложении, открыв менеджер развертывания и сняв флажок с файла classes.dex по умолчанию. Затем следует нажать кнопку "Добавить файлы", добавить созданный файл classes.dex и изменить его удаленный путь на "classes\". Кроме того, необходимо изменить платформы нового элемента на Android только.

Пример кода на Object Pascal (Delphi) для чтения штрихкода с веб-камеры с помощью библиотеки ZBar:

unit Unit1;

interface

uses
  Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
  Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.ExtCtrls, ZBar;

type
  TForm1 = class(TForm)
    btnScan: TButton;
    function GetBarcode: string;
    procedure btnScanClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

uses
  System.SysUtils;

{$R *.dfm}

function TForm1.GetBarcode: string;
var
  BarcodeScanner: TZBarScanner;
  Barcode: TZBarBarcode;
begin
  BarcodeScanner := TZBarScanner.Create(nil);
  try
    BarcodeScanner.Camera := TZBarCamera.Create(nil);
    try
      BarcodeScanner.Camera.Start;
      while not Assigned(Barcode) do
        BarcodeScanner.Scan;
      Result := Barcode.Data;
    finally
      BarcodeScanner.Camera.Free;
    end;
  finally
    BarcodeScanner.Free;
  end;
end;

procedure TForm1.btnScanClick(Sender: TObject);
begin
  ShowMessage(GetBarcode);
end;

end.

В примере кода создается форма с кнопкой, при нажатии на которую запускается сканер штрихкодов и результат отображается в сообщении. Для работы с библиотекой ZBar необходимо добавить в проект файл ZBar.pas из папки с библиотекой и ссылку на него в разделе Uses.

Создано по материалам из источника по ссылке.

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


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




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


:: Главная :: Сканер ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-01-29 02:02:08/0.024650096893311/1