bool Save(bool useDirName = true)
{
try
{
// 保存先を決める
if (useDirName) dirName = dirName ?? GetSaveDirName();
else dirName = GetSaveDirName();
if (dirName == null)
{
toolStripStatusLabel.Text = "保存に失敗しました";
return false;
}
// ディレクトリを作成
Directory.CreateDirectory(dirName);
// テキストを保存
var path = Path.Combine(dirName, Path.GetFileName(dirName) + ".rb");
var sw = new System.IO.StreamWriter(path);
sw.Write(textBox.Text);
sw.Close();
orgText = textBox.Text;
// 画像をpng形式で保存
foreach (var pair in templates)
{
path = Path.Combine(dirName, pair.Key + ".png");
File.Delete(path);
BitmapConverter.ToBitmap(pair.Value).Save(path, ImageFormat.Png);
}
orgTemplateCnt = templates.Count;
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
toolStripStatusLabel.Text = "保存に失敗しました";
return false;
}
toolStripStatusLabel.Text = "保存しました";
return true;
}