private void FingerprintEngineSampleCollected(object sender, ImageCapturedEventArgs e) { if (fingerprintImage != null) { fingerprintImage.Dispose(); } fingerprintImage = e.FingerprintImage; var writableBitmap = new WriteableBitmap(fingerprintImage.Width, fingerprintImage.Height, fingerprintImage.DpiX, fingerprintImage.DpiY, PixelFormats.Gray8, BitmapPalettes.Gray256); writableBitmap.Lock(); writableBitmap.WritePixels(new Int32Rect(0, 0, fingerprintImage.Width, fingerprintImage.Height), fingerprintImage.ImageData, fingerprintImage.Width * fingerprintImage.BitPerPixel / 8, 0); writableBitmap.Unlock(); FingerprintImage.Source = writableBitmap; //var fpImage = new Services.Fingerprints.FingerprintImage(); //fpImage.Header.DeviceType = 49264417347272704; //fpImage.Format.Bpp = PixelFormats.Gray8.BitsPerPixel; //fpImage.Format.ColorRepresentation = FingerprintImageColorRepresantation.NoColorRepresentation; //fpImage.Format.Height = fingerprintImage.Height; //fpImage.Format.Width = fingerprintImage.Width; //fpImage.Format.DpiX = fingerprintImage.DpiX; //fpImage.Format.DpiY = fingerprintImage.DpiY; //fpImage.Format.ImageType = FingerprintImageType.GrayScale; //fpImage.Format.Padding = FingerprintImagePadding.RightPadding; //fpImage.Format.Polarity = FingerprintImagePolarity.PositivePolarity; //fpImage.Format.SignificantBpp = 8; //fpImage.Format.Planes = 1; //fpImage.Data = fingerprintImage.ImageData; //fingerprintEnrollmentData.Add(new BiometricSample(fpImage, // BiometricSampleHeaderType.DigitalPersonaFingerprintImage)); using (var fe = new FingerprintFeatureExtractor()) { fe.Initialize(); var featuries = fe.Extract(fingerprintImage, ExtractionType.FeatureSetForEnrollment); fingerprintEnrollmentData.Add(new BiometricSample(featuries, BiometricSampleHeaderType.DigitalPersonaFingerprintFeatureSet)); } }
private void FingerprintOkButton_Click(object sender, RoutedEventArgs e) { if (fingerprintImage == null) { return; } using (var ffe = new FingerprintFeatureExtractor()) { ffe.Initialize(); var featuries = ffe.Extract(fingerprintImage, ExtractionType.FeatureSetForAuthentication); var fpFeatures = new BiometricSample(featuries, BiometricSampleHeaderType.DigitalPersonaFingerprintFeatureSet); credential = Credential.Create(new FingerprintAuthenticationData(fpFeatures)); } DialogResult = true; Close(); }