AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

QR-Code aus Bild lesen

Ein Thema von nakaramia · begonnen am 17. Sep 2015 · letzter Beitrag vom 21. Sep 2015
Antwort Antwort
nakaramia

Registriert seit: 1. Mär 2013
25 Beiträge
 
Delphi 2007 Enterprise
 
#1

QR-Code aus Bild lesen

  Alt 17. Sep 2015, 09:00
Hallo,

Delphi 2007 Enterprise
ZBar 0.10 - libzbar-0.dll

ich habe mich am Thread http://www.delphipraxis.net/160487-b...ml#post1109230
orientiert. Aber wie auch dort im letzten Kommentar geschrieben, erhalte ich für eine Datei mit QR-Code keinerlei Ergebnisse. In der mitgelieferten News-Datei steht, dass QR-Code ab dieser Version unterstützt wir, so dass ich das voraussetze.

In den letzten 2 Tagen habe ich o.g. Code verwendet, einen weiteren im Netz gefunden Code, das mitgelieferte C-Beispiel nachprogrammiert, verschiedene Wege (processor, scanner) probiert, am Ende immer fehler- und ergebnisfrei. Die exe der gleichen Version liefert die Daten.

Hat jemand mit dieser lib einen funktionierenden QR-Code-Reader programmiert? Wenn ja, wie?

VG und Danke
Nakaramia
  Mit Zitat antworten Zitat
nakaramia

Registriert seit: 1. Mär 2013
25 Beiträge
 
Delphi 2007 Enterprise
 
#2

AW: QR-Code aus Bild lesen

  Alt 21. Sep 2015, 11:26
Hallo,

ich habe mit dem Code aus o.g. Thread jetzt mal versucht, Strichcode einzulesen, funktioniert ebenfalls nicht. dll habe ich getauscht, ohne Ergebnis. Ich bekomme einfach weder Fehler noch Fund.

Vielleicht fällt jemandem am Code etwas auf.

Delphi-Quellcode:
begin
  bmp := TBitmap.Create;
  bmp.LoadFromFile(filename);
  SetGrayscale(bmp);
  scanner := GetScanner;
  image := GetImage(bmp);
  count := 0;
  count := zbar_scan_image(scanner, image); //<-- count ist immer 0
end;

function TQRCodeReader.GetScanner: zbar_image_scanner_t;
var
  stat : Integer;
begin
    //Scanner initiieren
  Result := zbar_image_scanner_create;
  stat := zbar_image_scanner_set_config(Result, ZBAR_QRCODE, ZBAR_CFG_ENABLE, 1);
  if stat <> 0 then
    GetErrorMessage('Image-Scanner: ', stat);
end;

function TQRCodeReader.GetImage(bmp: TBitmap): zbar_image_t;
//Scannerlesbares Bild erzeugen
var
  blubb : PByte;
begin
  blubb := bmp.ScanLine[bmp.height-1];
  Result := zbar_image_create;
  zbar_image_set_format(Result, 'Y800');
  zbar_image_set_size(Result, bmp.width, bmp.height);
  zbar_image_set_data(Result, blubb, bmp.height*bmp.width, nil);
end;

procedure TQRCodeReader.SetGrayscale(bmp: TBitmap);
var
  x, y : integer;
  p : ^TPixArray;
  gray : byte;
begin
  for y := 0 to bmp.Height - 1 do
  begin
    p := bmp.ScanLine[y];
    for x := 0 to bmp.Width - 1 do
    begin
      gray := round(p^[1]*0.3 + p^[2]*0.59 + p^[3]*0.11);
      p^[1] := gray;
      p^[2] := gray;
      p^[3] := gray;
      inc(p);
    end;
  end;
end;
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.060 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: QR-Code aus Bild lesen

  Alt 21. Sep 2015, 11:41
Speichere mal nach SetGrayscale(bmp); das Bild irgendwo hin und kontrolliere, ob es überhaupt richtig umgewandelt wird.
Ansonsten vielleicht mal diesen Quellcodeschnipsel ausprobieren:
http://www.powerbasic.com/support/pb...ad.php?t=53973
  Mit Zitat antworten Zitat
nakaramia

Registriert seit: 1. Mär 2013
25 Beiträge
 
Delphi 2007 Enterprise
 
#4

AW: QR-Code aus Bild lesen

  Alt 21. Sep 2015, 13:24
Läuft.
Im Kommentar unter dem von TiGü geposteten Link findet sich der Hinweis auf eine dll für Windows

Also this component use the zbar DLL provided by the Zbar for
Windows project: http://sourceforge.net/projects/zbarw/

Danke

Geändert von nakaramia (21. Sep 2015 um 13:26 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz