private void SaveSubtitles() { DirectoryInfo di = new DirectoryInfo(Environment.CurrentDirectory); List <string> files = new List <string>(); Regex r = new Regex(@"Line\d*\.bmp"); foreach (var f in di.GetFiles("*.bmp")) { if (r.IsMatch(f.Name)) { new FileInfo(f.FullName).Delete(); } } for (int currentline = 0; currentline < textBox.Lines.Length; currentline++) { string text = ""; Bitmap result = null; if (textBox.Lines[currentline].Length != 0) { result = ImageDrawer.LineBitmap(textBox.Lines[currentline]); text = textBox.Lines[currentline]; while (text.EndsWith(" ") || text.EndsWith(" ")) { text = text.Remove(text.Length - 1, 1); } if (text.EndsWith(":") || text.EndsWith(":")) { continue; } if (text.Contains("%")) { text = text.Split('%')[0]; } else if (text.Contains("%")) { text = text.Split('%')[0]; } if (text == "") { continue; } if (result != null) { result.Save(String.Format("Line{0}.bmp", currentline)); } } } Notice("印刷完了"); }
private void PrintSubtitle() { Bitmap result = null; if (pictureBox1.Image != null) { pictureBox1.Image.Dispose(); } if (textBox.Lines.Length != 0) { int currentline = 0; int charactors = 0; while (true) { charactors += textBox.Lines[currentline].Length + 1;//+1は改行コード if (charactors > textBox.SelectionStart) { break; } else if (currentline >= textBox.Lines.Length - 1) { break; } currentline++; } if (currentline < 0 || currentline >= textBox.Lines.Length) { return; } result = ImageDrawer.LineBitmap(textBox.Lines[currentline]); } if (pictureBox1.Image != null) { pictureBox1.Image.Dispose(); } //PictureBox1に表示する pictureBox1.Image = result; }