private IEnumerable <IEnumerable <CsvRow> > ProcessImageGetLettersFromPage(Image <Rgba32> image, QrReaderData qrData) { var rowsPerPage = (int)Math.Ceiling(qrData.MetaData.DataChunkSize / (double)DataOutput.MaxLettersPerRow); var letters = new List <CsvRow>((int)qrData.MetaData.DataChunkSize); var lettersFallback = new List <CsvRow>((int)qrData.MetaData.DataChunkSize); var nextY = 0; for (var y = 0; y < rowsPerPage; y++) { var nextRowContentArea = image.GetNextRowContentArea(nextY); nextY = nextRowContentArea.Y + nextRowContentArea.Height; var rowImage = image.Clone(img => img.Crop(nextRowContentArea)); var currentRowLetters = y == rowsPerPage - 1 ? qrData.MetaData.DataChunkSize - DataOutput.MaxLettersPerRow * y : DataOutput.MaxLettersPerRow; var nextX = 0; for (var x = 0; x < currentRowLetters; x++) { var nextLetterContentArea = rowImage.GetNextLetterContentArea(nextX); nextX = nextLetterContentArea.X + nextLetterContentArea.Width; var letterImage = rowImage.Clone(img => img.Crop(nextLetterContentArea)); using (var memoryStream = new MemoryStream()) { letterImage.SaveAsBmp(memoryStream); memoryStream.Seek(0, 0); letters.Add(new CsvRow(_columnNameToIndex, LoadImageHelper.FileAsData(memoryStream))); lettersFallback.Add(new CsvRow(_columnNameToIndex, LoadImageHelper.FileAsData(memoryStream, threshold: 90))); } } } return(new List <IEnumerable <CsvRow> > { letters, lettersFallback }); }
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) { var type = (string)value; string iconKey; // find images for shirt type if (parameter != null && parameter.ToString().Equals("POI")) { iconKey = "underlay_POI_" + type.ToLower(); } else if (parameter != null && parameter.ToString().Equals("Lines")) { iconKey = "shirt_" + type.ToLower() + "_line"; } else { iconKey = "shirt_" + type.ToLower(); } var imgUri = new Uri(LoadImageHelper.GetIconPathOrFallback(Directory.GetCurrentDirectory() + "/Images/", iconKey, "shirt_missing_image"), UriKind.Absolute); return(imgUri); }
/// <summary> /// Creates a design time foil. /// </summary> /// <returns></returns> private void CreateDesignTimeFoil() { var stateSwitch = rand.Next(1, 5); switch (stateSwitch) { case 1: _status = QualityIssueControl.SomethingWrongWithShirt; break; case 2: _status = QualityIssueControl.WrongPrintBending; break; case 3: _status = QualityIssueControl.WrongPrintImage; break; case 4: _status = QualityIssueControl.WrongPrintOther; break; case 5: _status = QualityIssueControl.WrongCountryOfOrigin; break; } _previewImage = LoadImageHelper.LoadImage("dummy"); _barCode = "12345-67039-24789"; _targetPrintingLine = 42; _targetRotaryHeatPress = 42; _batchId = "BATCHID42"; _batchPosition = 7; _batchCount = 13; _route = new ObservableCollection <string> { "LOA", "ICB", "ROT", "HPM", "COM", "ICB", "LAB", "FOL", "BAG", "MFG", "RHB", "WDWR", "FPS", "LOD", "THC", "OCB", "WOW" }; _selectedRouteIndex = 10; _timeInSystem = new TimeSpan(1, 2, 34, 17); _logHistory = "Lorem ipsum dolor sit amet, consete ur sadip scing elitr, sed diam non u my eirmod tempor invidunt ut labore et dolore magna aliquyam erat"; }
public void GenerateCsv() { var columnNameToIndex = new Dictionary <string, int>(); columnNameToIndex["class"] = 0; for (var i = 1; i <= 1024; i++) { columnNameToIndex[$"pixel{i}"] = i; } var writer = new CsvWriter(() => new StreamWriter(new FileStream("data.csv", FileMode.Create))); writer.Write(Directory.GetFiles("assets").Select(fileName => new CsvRow(columnNameToIndex, LoadImageHelper.FileAsData(fileName)))); }
private void TestLoadImage() { LoadImageHelper helper = gameObject.AddComponent <LoadImageHelper>(); helper.LoadImage(image, url); }
private void CreateRandomShirt() { string shirtType; Uri shirtTypeImage; Uri shirtTypeImageOutline = null; switch (_random.Next(6)) { case 0: shirtType = "YouthTShirt"; break; case 1: shirtType = "LongSleeveShirt"; break; case 2: //shirtType = "PremiumTShirt"; shirtType = "TShirt"; break; case 3: shirtType = "YouthTShirt"; break; case 4: shirtType = "WomensTShirt"; break; default: shirtType = "TShirt"; break; } double shirtSize; switch (_random.Next(7)) { case 0: shirtSize = 0.5; // S break; case 1: shirtSize = 0.8; // XXL break; default: shirtSize = 0.6; break; } Color color; switch (_random.Next(5)) { case 0: color = Color.DimGray; break; case 1: color = Color.DarkOrange; break; default: color = Color.LightGray; break; } ShirtState shirtState; switch (_random.Next(5)) { case 0: shirtState = ShirtState.Empty; break; case 1: shirtState = ShirtState.Flagged; break; default: shirtState = ShirtState.Loaded; break; } string shirtMaterialType; switch (_random.Next(4)) { case 0: shirtMaterialType = "premium"; break; default: shirtMaterialType = "basic"; break; } var directoryInfo = Directory.GetParent(Directory.GetCurrentDirectory()).Parent; if (directoryInfo != null) { string uriStringShirt = directoryInfo.FullName + "/Resources/shirt_" + shirtType + ".png"; string uriStringOutline = directoryInfo.FullName + "/Resources/shirt_" + shirtType + "_line.png"; if (File.Exists(uriStringShirt)) { shirtTypeImage = new Uri(uriStringShirt); } else { shirtTypeImage = new Uri( "pack://application:,,,/VP.FF.PT.Common.WpfInfrastructure;Component/Styles/Resources/Images/shirt_missing_image.png", UriKind.Absolute); } if (File.Exists(uriStringOutline)) { shirtTypeImageOutline = new Uri(uriStringOutline); } } else { shirtTypeImage = new Uri( "pack://application:,,,/VP.FF.PT.Common.WpfInfrastructure;Component/Styles/Resources/Images/shirt_missing_image.png", UriKind.Absolute); } _color = color; _shirtState = shirtState; _shirtType = shirtType; _shirtMaterialType = shirtMaterialType; _size = shirtSize; _originLabel = new OriginLabel { CountryName = "Bangladesh" }; _shirtTypeImage = shirtTypeImage; _shirtTypeImageOutline = shirtTypeImageOutline; _barcode = "12345-67039-24789"; _route = new ObservableCollection <string> { "LOA", "ICB", "ROT", "HPM", "COM", "ICB", "LAB", "FOL", "BAG", "MFG", "RHB", "WDWR", "FPS", "LOD", "THC", "OCB", "WOW" }; _selectedRouteIndex = 10; _lastRfidRead = new DateTime(2014, 2, 24, 16, 23, 1); _rfidReadCounter = 1337; _timeInSystem = new TimeSpan(1, 2, 34, 17); _flaggedComment = "Lorem ipsum dolor sit amet, consete ur sadip scing elitr, sed diam non u my eirmod tempor invidunt ut labore et dolore magna aliquyam erat"; _isFrontFoilPending = _random.Next(0, 2) == 0; _isBackFoilPending = _random.Next(0, 2) == 0; if (_random.Next(0, 3) == 0) { _frontPrint = LoadImageHelper.LoadImage("dummy"); } if (_random.Next(0, 3) == 0) { _backPrint = LoadImageHelper.LoadImage("dummy"); } // front/back preview not needed for loading station }