Ejemplo n.º 1
0
        public void Luminance_Is_Within_Margin_Of_Error(string fileName)
        {
            byte[] controlLuminanceSourceMatrix;
            using (var control = LoadBitmapImage(fileName))
            {
                var bitmapLuminanceSource = new BitmapLuminanceSource(control);
                controlLuminanceSourceMatrix = bitmapLuminanceSource.Matrix;
            }

            byte[] testLuminanceSourceMatrix;
            using (var bitmap = LoadSKBitmap(fileName))
            {
                var skBitmapLuminanceSource = new SKBitmapLuminanceSource(bitmap);
                testLuminanceSourceMatrix = skBitmapLuminanceSource.Matrix;
            }

            Assert.AreEqual(controlLuminanceSourceMatrix.Length, testLuminanceSourceMatrix.Length);

            for (int index = 0; index < controlLuminanceSourceMatrix.Length; index++)
            {
                var controlColor = controlLuminanceSourceMatrix[index];
                var testColor    = testLuminanceSourceMatrix[index];

                Assert.That(testColor, Is.EqualTo(controlColor).Within(3));
            }
        }
Ejemplo n.º 2
0
 public void Should_Calculate_Luminance_And_Decode(string fileName, string content)
 {
     using (var bitmap = LoadSKBitmap(fileName))
     {
         var luminance = new SKBitmapLuminanceSource(bitmap);
         var reader    = new BarcodeReader();
         var result    = reader.Decode(luminance);
         Assert.That(result?.Text, Is.EqualTo(content));
     }
 }
        /// <summary>
        /// uses the IBarcodeReaderGeneric implementation and the <see cref="SKBitmapLuminanceSource"/> class for decoding
        /// </summary>
        /// <param name="reader"></param>
        /// <param name="image"></param>
        /// <returns></returns>
        public static Result[] DecodeMultiple(this IBarcodeReaderGeneric reader, SKBitmap image)
        {
            var luminanceSource = new SKBitmapLuminanceSource(image);

            return(reader.DecodeMultiple(luminanceSource));
        }