2016-04-08 5 views
1

Fast einen Tag lang gesucht, aber keine passende Lösung gefunden. Ich entwickle ein QR-Lesemodul für meine Win-8.1-Telefon-App, die Silverlight basiert (nicht gewinnen 8.1 Telefon nativ)WriteableBitmap von win phone 8.1 (silverlight) in BinaryBitmap von com.google.zxing konvertieren

Ich benutze zxing lib, um das QR-Modul hinzuzufügen. Ich habe den Punkt erreicht, an dem ich das Bild von der Kamera (MediaCapture) habe, welches Objekt von WriteableBitmap und ich den QRCodeReader.decode (BinaryBitmap bb) verwenden möchte.

Ich habe mit RGBLuminanceSource versucht, wie von den meisten Artikeln erwähnt, aber das funktioniert in native App (wie es Bezug auf System.Windows benötigt, die für Silverlight-basierte Anwendungen nicht gültig ist.

mich jemand Writeablebitmap zu auf Umwandlung führen kann BinaryBitmap?

Antwort

0

ich habe den folgenden Code auf Pre Fenster Telefon 8.1 mit ZXing mit der Fotokamera-Klasse verwendet. Jetzt bin ich nicht sicher, ob dies für Sie Zwecke immer noch gültig ist, aber hier ist die LuminanceSource abgeleiteten Klasse.

internal class PhotoCameraLuminanceSource : LuminanceSource 
{ 
    public byte[] PreviewBufferY { get; private set; } 

    public PhotoCameraLuminanceSource(int width, int height) 
     : base(width, height) 
    { 
     PreviewBufferY = new byte[width * height]; 
    } 

    public override byte[] Matrix 
    { 
     get { return (byte[])(Array)PreviewBufferY; } 
    } 

    public override byte[] getRow(int y, byte[] row) 
    { 
     if (row == null || row.Length < Width) 
     { 
      row = new byte[Width]; 
     } 

     for (int i = 0; i < Height; i++) 
      row[i] = (byte)PreviewBufferY[i * Width + y]; 

     return row; 
    } 
} 

Das wird dann so verwendet.

PhotoCamera.GetPreviewBufferY(_luminance.PreviewBufferY); 

var binarizer = new HybridBinarizer(_luminance); 

var binBitmap = new BinaryBitmap(binarizer); 

//Use readers to decode possible barcodes. 
var result = _QRCodeReader.decode(binBitmap); 

wo _luminance ist vom Typ PhotoCameraLuminanceSource

Verwandte Themen