首页 > 解决方案 > 如何使用 ZXing 找出 qrcode 方向?

问题描述

我正在使用 VCL 和 Delphi Rio从Spelt/ZXing.Delphi为 Delphi 使用 ZXing 移植

我正在扫描文档,实际上是使用快速富士通扫描仪的收据。这是一个巨大的数量。

问题是除了纸张的方向外,ZXing 总是读取上面的二维码(这很好)。

但是出于存档目的,将文档保存在适当的水平位置应该很好。

这是我用来获取 qrcode 值的代码:

function TFormMain.DecodificaQRCodeImagemScanneada(ImagemScanneada: TBitmap): String;
var
  scanBitmap: TBitmap;
  ResultadoLeitura: TReadResult;
  ScanManager: TScanManager;
begin
  result := '';
  try
      ScanManager := TScanManager.Create(TBarcodeFormat.Auto, nil);
      scanBitmap := TBitmap.Create;
      scanBitmap.Assign(ImagemScanneada);
      ResultadoLeitura := nil;
      ResultadoLeitura := ScanManager.Scan(scanBitmap);
      if (ResultadoLeitura <> nil) then
      begin
        result :=  ResultadoLeitura.Text;
      end;
  finally
    ResultadoLeitura.Free;
    scanBitmap.Free;
    ScanManager.Free;
  end;
end;

我想知道是否有办法获取 qrcode 的方向,将其用作扫描收据位置的指示器。所以我可以旋转位图,让所有收据的方向都一样。

标签: delphizxingvcl

解决方案


推荐阅读