internal void InitializeQuick(List<VobSubMergedPack> vobSubMergedPackist, List<Color> palette, VobSubOcrSettings vobSubOcrSettings, string languageString) { buttonOK.Enabled = false; buttonCancel.Enabled = false; buttonStartOcr.Enabled = false; buttonStop.Enabled = false; buttonNewCharacterDatabase.Enabled = false; buttonEditCharacterDatabase.Enabled = false; labelStatus.Text = string.Empty; progressBar1.Visible = false; progressBar1.Maximum = 100; progressBar1.Value = 0; numericUpDownPixelsIsSpace.Value = vobSubOcrSettings.XOrMorePixelsMakesSpace; numericUpDownNumberOfPixelsIsSpaceNOCR.Value = vobSubOcrSettings.XOrMorePixelsMakesSpace; _vobSubOcrSettings = vobSubOcrSettings; _vobSubMergedPackist = vobSubMergedPackist; _palette = palette; if (_palette == null) checkBoxCustomFourColors.Checked = true; _importLanguageString = languageString; if (_importLanguageString.Contains("(") && !_importLanguageString.StartsWith("(")) _importLanguageString = _importLanguageString.Substring(0, languageString.IndexOf("(") - 1).Trim(); }
// TODO: Get language from ts file internal void Initialize(List<Logic.TransportStream.TransportStreamSubtitle> subtitles, VobSubOcrSettings vobSubOcrSettings, string fileName) { buttonOK.Enabled = false; buttonCancel.Enabled = false; buttonStartOcr.Enabled = false; buttonStop.Enabled = false; buttonNewCharacterDatabase.Enabled = false; buttonEditCharacterDatabase.Enabled = false; labelStatus.Text = string.Empty; progressBar1.Visible = false; progressBar1.Maximum = 100; progressBar1.Value = 0; numericUpDownPixelsIsSpace.Value = vobSubOcrSettings.XOrMorePixelsMakesSpace; numericUpDownNumberOfPixelsIsSpaceNOCR.Value = vobSubOcrSettings.XOrMorePixelsMakesSpace; _vobSubOcrSettings = vobSubOcrSettings; InitializeModi(); InitializeTesseract(); LoadImageCompareCharacterDatabaseList(); SetOcrMethod(); _dvbSubtitles = subtitles; ShowDvbSubs(); FileName = fileName; Text += " - " + Path.GetFileName(fileName); groupBoxImagePalette.Visible = false; groupBoxTransportStream.Left = groupBoxImagePalette.Left; groupBoxTransportStream.Top = groupBoxImagePalette.Top; groupBoxTransportStream.Visible = true; checkBoxTransportStreamGetColorAndSplit.Visible = subtitles.Count > 0 && subtitles[0].IsDvbSub; //SetTesseractLanguageFromLanguageString(languageString); //_importLanguageString = languageString; }
internal void InitializeBatch(List<Nikse.SubtitleEdit.Logic.BluRaySup.BluRaySupParser.PcsData> subtitles, VobSubOcrSettings vobSubOcrSettings, string fileName) { Initialize(subtitles, vobSubOcrSettings, fileName); FormVobSubOcr_Shown(null, null); checkBoxPromptForUnknownWords.Checked = false; int max = GetSubtitleCount(); if (comboBoxOcrMethod.SelectedIndex == 0 && _tesseractAsyncStrings == null) { _tesseractAsyncStrings = new string[max]; _tesseractAsyncIndex = (int)numericUpDownStartNumber.Value + 5; _tesseractThread = new BackgroundWorker(); _tesseractThread.DoWork += TesseractThreadDoWork; _tesseractThread.RunWorkerCompleted += TesseractThreadRunWorkerCompleted; _tesseractThread.WorkerSupportsCancellation = true; if (_tesseractAsyncIndex >= 0 && _tesseractAsyncIndex < max) _tesseractThread.RunWorkerAsync(GetSubtitleBitmap(_tesseractAsyncIndex)); } System.Threading.Thread.Sleep(1000); subtitleListView1.SelectedIndexChanged -= SubtitleListView1SelectedIndexChanged; for (int i = 0; i < max; i++) { var startTime = new TimeCode(TimeSpan.FromMilliseconds(GetSubtitleStartTimeMilliseconds(i))); var endTime = new TimeCode(TimeSpan.FromMilliseconds(GetSubtitleEndTimeMilliseconds(i))); Application.DoEvents(); if (_abort) { SetButtonsEnabledAfterOcrDone(); return; } subtitleListView1.SelectIndexAndEnsureVisible(i); string text = OcrViaTesseract(GetSubtitleBitmap(i), i); _lastLine = text; text = text.Replace("<i>-</i>", "-"); text = text.Replace("<i>a</i>", "a"); text = text.Replace(" ", " "); text = text.Trim(); text = text.Replace(" " + Environment.NewLine, Environment.NewLine); text = text.Replace(Environment.NewLine + " ", Environment.NewLine); // max allow 2 lines if (checkBoxAutoBreakLines.Checked && text.Replace(Environment.NewLine, "*").Length + 2 <= text.Length) { text = text.Replace(" " + Environment.NewLine, Environment.NewLine); text = text.Replace(Environment.NewLine + " ", Environment.NewLine); while (text.Contains(Environment.NewLine + Environment.NewLine)) text = text.Replace(Environment.NewLine + Environment.NewLine, Environment.NewLine); if (text.Replace(Environment.NewLine, "*").Length + 2 <= text.Length) text = Utilities.AutoBreakLine(text); } Application.DoEvents(); if (_abort) { textBoxCurrentText.Text = text; SetButtonsEnabledAfterOcrDone(); return; } text = text.Trim(); text = text.Replace(" ", " "); text = text.Replace(Environment.NewLine + Environment.NewLine, Environment.NewLine); text = text.Replace(" ", " "); text = text.Replace(Environment.NewLine + Environment.NewLine, Environment.NewLine); Paragraph p = _subtitle.GetParagraphOrDefault(i); if (p != null) p.Text = text; if (subtitleListView1.SelectedItems.Count == 1 && subtitleListView1.SelectedItems[0].Index == i) textBoxCurrentText.Text = text; else subtitleListView1.SetText(i, text); } SetButtonsEnabledAfterOcrDone(); }
internal void Initialize(string fileName, List<Color> palette, VobSubOcrSettings vobSubOcrSettings, List<SpHeader> spList) { _spList = spList; _useNewSubIdxCode = false; buttonOK.Enabled = false; buttonCancel.Enabled = false; buttonStartOcr.Enabled = false; buttonStop.Enabled = false; buttonNewCharacterDatabase.Enabled = false; buttonEditCharacterDatabase.Enabled = false; labelStatus.Text = string.Empty; progressBar1.Visible = false; progressBar1.Maximum = 100; progressBar1.Value = 0; numericUpDownPixelsIsSpace.Value = vobSubOcrSettings.XOrMorePixelsMakesSpace; _vobSubOcrSettings = vobSubOcrSettings; InitializeModi(); InitializeTesseract(); LoadImageCompareCharacterDatabaseList(); _palette = palette; if (_palette == null) checkBoxCustomFourColors.Checked = true; SetOcrMethod(); FileName = fileName; Text += " - " + Path.GetFileName(FileName); foreach (SpHeader header in _spList) { Paragraph p = new Paragraph(string.Empty, header.StartTime.TotalMilliseconds, header.StartTime.TotalMilliseconds + header.Picture.Delay.TotalMilliseconds); _subtitle.Paragraphs.Add(p); } _subtitle.Renumber(1); subtitleListView1.Fill(_subtitle); subtitleListView1.SelectIndexAndEnsureVisible(0); }
internal void Initialize(List<XSub> subPictures, VobSubOcrSettings vobSubOcrSettings, string fileName) { _xSubList = subPictures; _useNewSubIdxCode = false; buttonOK.Enabled = false; buttonCancel.Enabled = false; buttonStartOcr.Enabled = false; buttonStop.Enabled = false; buttonNewCharacterDatabase.Enabled = false; buttonEditCharacterDatabase.Enabled = false; labelStatus.Text = string.Empty; progressBar1.Visible = false; progressBar1.Maximum = 100; progressBar1.Value = 0; numericUpDownPixelsIsSpace.Value = vobSubOcrSettings.XOrMorePixelsMakesSpace; _vobSubOcrSettings = vobSubOcrSettings; InitializeModi(); InitializeTesseract(); LoadImageCompareCharacterDatabaseList(); checkBoxCustomFourColors.Enabled = true; checkBoxCustomFourColors.Checked = true; checkBoxAutoTransparentBackground.Enabled = true; checkBoxAutoTransparentBackground.Enabled = false; SetOcrMethod(); FileName = fileName; Text += " - " + Path.GetFileName(FileName); foreach (XSub subItem in _xSubList) { var p = new Paragraph(string.Empty, subItem.Start.TotalMilliseconds, subItem.End.TotalMilliseconds); _subtitle.Paragraphs.Add(p); } _subtitle.Renumber(1); subtitleListView1.Fill(_subtitle); subtitleListView1.SelectIndexAndEnsureVisible(0); }
internal void Initialize(Subtitle bdnSubtitle, VobSubOcrSettings vobSubOcrSettings, bool isSon) { _bdnXmlOriginal = bdnSubtitle; _bdnFileName = bdnSubtitle.FileName; _isSon = isSon; if (_isSon) { checkBoxCustomFourColors.Checked = true; pictureBoxBackground.BackColor = Color.Transparent; pictureBoxPattern.BackColor = Color.DarkGray; pictureBoxEmphasis1.BackColor = Color.Black; pictureBoxEmphasis2.BackColor = Color.White; } buttonOK.Enabled = false; buttonCancel.Enabled = false; buttonStartOcr.Enabled = false; buttonStop.Enabled = false; buttonNewCharacterDatabase.Enabled = false; buttonEditCharacterDatabase.Enabled = false; labelStatus.Text = string.Empty; progressBar1.Visible = false; progressBar1.Maximum = 100; progressBar1.Value = 0; numericUpDownPixelsIsSpace.Value = 11; _vobSubOcrSettings = vobSubOcrSettings; InitializeModi(); InitializeTesseract(); LoadImageCompareCharacterDatabaseList(); SetOcrMethod(); groupBoxImagePalette.Visible = isSon; Text = Configuration.Settings.Language.VobSubOcr.TitleBluRay; Text += " - " + Path.GetFileName(_bdnFileName); checkBoxAutoTransparentBackground.Checked = true; }
internal void Initialize(List<Nikse.SubtitleEdit.Logic.BluRaySup.BluRaySupParser.PcsData> subtitles, VobSubOcrSettings vobSubOcrSettings, string fileName) { buttonOK.Enabled = false; buttonCancel.Enabled = false; buttonStartOcr.Enabled = false; buttonStop.Enabled = false; buttonNewCharacterDatabase.Enabled = false; buttonEditCharacterDatabase.Enabled = false; labelStatus.Text = string.Empty; progressBar1.Visible = false; progressBar1.Maximum = 100; progressBar1.Value = 0; numericUpDownPixelsIsSpace.Value = 11; // vobSubOcrSettings.XOrMorePixelsMakesSpace; numericUpDownNumberOfPixelsIsSpaceNOCR.Value = 11; _vobSubOcrSettings = vobSubOcrSettings; InitializeModi(); InitializeTesseract(); LoadImageCompareCharacterDatabaseList(); SetOcrMethod(); _bluRaySubtitlesOriginal = subtitles; groupBoxImagePalette.Visible = false; Text = Configuration.Settings.Language.VobSubOcr.TitleBluRay; if (!string.IsNullOrEmpty(fileName)) { if (fileName.Length > 40) fileName = Path.GetFileName(fileName); Text += " - " + fileName; } checkBoxAutoTransparentBackground.Checked = false; checkBoxAutoTransparentBackground.Visible = false; }
internal void Initialize(List<VobSubMergedPack> vobSubMergedPackist, List<Color> palette, VobSubOcrSettings vobSubOcrSettings, string languageString) { buttonOK.Enabled = false; buttonCancel.Enabled = false; buttonStartOcr.Enabled = false; buttonStop.Enabled = false; buttonNewCharacterDatabase.Enabled = false; buttonEditCharacterDatabase.Enabled = false; labelStatus.Text = string.Empty; progressBar1.Visible = false; progressBar1.Maximum = 100; progressBar1.Value = 0; numericUpDownPixelsIsSpace.Value = vobSubOcrSettings.XOrMorePixelsMakesSpace; numericUpDownNumberOfPixelsIsSpaceNOCR.Value = vobSubOcrSettings.XOrMorePixelsMakesSpace; _vobSubOcrSettings = vobSubOcrSettings; InitializeModi(); InitializeTesseract(); LoadImageCompareCharacterDatabaseList(); SetOcrMethod(); _vobSubMergedPackist = vobSubMergedPackist; _palette = palette; if (_palette == null) checkBoxCustomFourColors.Checked = true; SetTesseractLanguageFromLanguageString(languageString); _importLanguageString = languageString; }
internal bool Initialize(string vobSubFileName, VobSubOcrSettings vobSubOcrSettings, bool useNewSubIdxCode, Nikse.SubtitleEdit.Forms.Main main) { _main = main; _useNewSubIdxCode = useNewSubIdxCode; buttonOK.Enabled = false; buttonCancel.Enabled = false; buttonStartOcr.Enabled = false; buttonStop.Enabled = false; buttonNewCharacterDatabase.Enabled = false; buttonEditCharacterDatabase.Enabled = false; labelStatus.Text = string.Empty; progressBar1.Visible = false; progressBar1.Maximum = 100; progressBar1.Value = 0; numericUpDownPixelsIsSpace.Value = vobSubOcrSettings.XOrMorePixelsMakesSpace; numericUpDownNumberOfPixelsIsSpaceNOCR.Value = vobSubOcrSettings.XOrMorePixelsMakesSpace; _vobSubOcrSettings = vobSubOcrSettings; InitializeModi(); InitializeTesseract(); LoadImageCompareCharacterDatabaseList(); SetOcrMethod(); FileName = vobSubFileName; Text += " - " + Path.GetFileName(FileName); return InitializeSubIdx(vobSubFileName); }
private Settings() { RecentFiles = new RecentFilesSettings(); General = new GeneralSettings(); Tools = new ToolsSettings(); WordLists = new WordListSettings(); SubtitleSettings = new SubtitleSettings(); Proxy = new ProxySettings(); CommonErrors = new FixCommonErrorsSettings(); VobSubOcr = new VobSubOcrSettings(); VideoControls = new VideoControlsSettings(); NetworkSettings = new Logic.NetworkSettings(); MultipleSearchAndReplaceList = new List<MultipleSearchAndReplaceSetting>(); Language = new Language(); Shortcuts = new Shortcuts(); RemoveTextForHearingImpaired = new RemoveTextForHearingImpairedSettings(); SubtitleBeaming = new SubtitleBeaming(); }