private RowRuEng PrepareRow_If_Autocalc(RowRuEng row) { row.RuStr += "{" + CalculateWaitAfterRu(row.EnStr) + "}"; _repeatCount = CalculateRepeatCount(row.EnStr); if (_repeatCount == 1) { _waitAfterEn = 0; } else { _waitAfterEn = 3; } //увеличиваем количество for (int i = 1; i < _repeatCount; i++) { row.EnStr += "{3}" + row.EnStr; } //вконце en строки добавляю 2 секунды row.EnStr += "{" + 2 + "}"; return(row); }
/// <summary> /// ЕСЛИ НЕ ЗАДАНА НАСТРОЙКА - "РАССЧИТАТЬ АВТОМАТИЧЕСКИ" /// </summary> private RowRuEng PrepareRow_If_No_Autocalc(RowRuEng row) { if (string.IsNullOrWhiteSpace(row.EnStr)) { return(row); } //ожидание времени после русской фразы if (_waitAfterRu != null) { row.RuStr += "{" + _waitAfterRu + "}"; } //ожидание времени после английской фразы if (_waitAfterEn != null && _waitAfterEn != 0) { row.EnStr += "{" + _waitAfterEn + "}"; } //увеличиваем количество повторов if (_repeatCount != null && _repeatCount != 0) { var str = ""; for (int i = 0; i < _repeatCount; i++) { str += row.EnStr; } row.EnStr = str; } return(row); }
private void WriteRow(RowRuEng row, int rowNumber, int workSheetNumber) { var cellAddrRu = "A" + rowNumber; var cellAddrEn = "B" + rowNumber; WriteStr(workSheetNumber, cellAddrRu, row.RuStr); WriteStr(workSheetNumber, cellAddrEn, row.EnStr); }
public RowRuEng SplitString(string str) { if (string.IsNullOrWhiteSpace(str)) { return(null); } var rusPart = new string(str.TakeWhile(x => !IsLatinLetter(x)).ToArray())?.Trim(); var engPart = ""; if (!string.IsNullOrWhiteSpace(rusPart)) { engPart = str.Replace(rusPart, "")?.Trim(); } var result = new RowRuEng(rusPart, engPart, 1); return(result); }
//private void SayRow(RowRuEng row) //{ // //ожидание времени после русской фразы // if (_waitFirst != null && !_calculateWaitAfterRu) // row.RuStr += "{" + _waitFirst + "}"; // if (_calculateWaitAfterRu) // row.RuStr += "{" + CalculateWaitByWords(row.EnStr) + "}"; // if (_calculateRepeat) // { // _repeatCount = CalculateRepeatCount(row.EnStr); // if (_repeatCount == 1) // _waitOthers = 0; // else // _waitOthers = 3; // } // //ожидание вреиени после английской фразы // if (_waitOthers != null) // row.EnStr += "{" + _waitOthers + "}"; // else // row.EnStr += "{" + 2 + "}"; // //увеличиваем количество // if (_repeatCount != null) // { // for (int i = 1; i < _repeatCount; i++) // { // row.EnStr += row.EnStr; // } // } // //после всей строки добавляю 2 секунды ожидания если фраза на EN длинная // if (CalculateWaitByWords(row.EnStr) > 5) // row.EnStr += "{" + 2 + "}"; // if (!String.IsNullOrWhiteSpace(row.RuStr)) // SayStr(row.RuStr, Constants.Ru); // if (!String.IsNullOrWhiteSpace(row.EnStr)) // SayStr(row.EnStr, Constants.En); //} private void SayRow(RowRuEng row) { if (_autoCalc) { row = PrepareRow_If_Autocalc(row); } else { row = PrepareRow_If_No_Autocalc(row); } if (!String.IsNullOrWhiteSpace(row.RuStr)) { SayStr(row.RuStr, Constants.Ru); } if (!String.IsNullOrWhiteSpace(row.EnStr)) { SayStr(row.EnStr, Constants.En); } }
public List <RowRuEng> GetRowsRuEng(int workSheetNumber) { IXLWorksheet worksheet = _workbook.Worksheet(workSheetNumber); var list = new List <RowRuEng>(); if (worksheet.LastRowUsed() == null) { return(list); } for (int i = 1; i <= worksheet.LastRowUsed().RowNumber(); i++) { var ruStr = worksheet.Row(i).Cell(1).GetValue <string>(); var enStr = worksheet.Row(i).Cell(2).GetValue <string>(); var testValue = new RowRuEng(ruStr, enStr, i); list.Add(testValue); } return(list); }