Added "Copy Discord emoji syntax" button to image splitter tool

This commit is contained in:
Jaex 2019-11-07 10:45:18 +03:00
parent e32661eee2
commit 2ed966fe05
3 changed files with 78 additions and 13 deletions

View file

@ -40,6 +40,7 @@ private void InitializeComponent()
this.btnImageFilePathBrowse = new System.Windows.Forms.Button();
this.btnOutputFolderBrowse = new System.Windows.Forms.Button();
this.btnSplitImage = new System.Windows.Forms.Button();
this.btnCopyDiscordEmoji = new System.Windows.Forms.Button();
((System.ComponentModel.ISupportInitialize)(this.nudRowCount)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.nudColumnCount)).BeginInit();
this.SuspendLayout();
@ -125,11 +126,19 @@ private void InitializeComponent()
this.btnSplitImage.UseVisualStyleBackColor = true;
this.btnSplitImage.Click += new System.EventHandler(this.BtnSplitImage_Click);
//
// btnCopyDiscordEmoji
//
resources.ApplyResources(this.btnCopyDiscordEmoji, "btnCopyDiscordEmoji");
this.btnCopyDiscordEmoji.Name = "btnCopyDiscordEmoji";
this.btnCopyDiscordEmoji.UseVisualStyleBackColor = true;
this.btnCopyDiscordEmoji.Click += new System.EventHandler(this.btnCopyDiscordEmoji_Click);
//
// ImageSplitterForm
//
resources.ApplyResources(this, "$this");
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.SystemColors.Window;
this.Controls.Add(this.btnCopyDiscordEmoji);
this.Controls.Add(this.btnSplitImage);
this.Controls.Add(this.btnOutputFolderBrowse);
this.Controls.Add(this.btnImageFilePathBrowse);
@ -164,5 +173,6 @@ private void InitializeComponent()
private System.Windows.Forms.Button btnImageFilePathBrowse;
private System.Windows.Forms.Button btnOutputFolderBrowse;
private System.Windows.Forms.Button btnSplitImage;
private System.Windows.Forms.Button btnCopyDiscordEmoji;
}
}

View file

@ -29,6 +29,7 @@
using System.Drawing;
using System.Drawing.Imaging;
using System.IO;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
@ -102,10 +103,12 @@ private List<string> SplitImage(string filePath, int rowCount, int columnCount,
{
List<Image> images = ImageHelpers.SplitImage(img, rowCount, columnCount);
string originalFileName = Path.GetFileNameWithoutExtension(filePath);
for (int i = 0; i < images.Count; i++)
{
string filename = Path.GetFileNameWithoutExtension(filePath) + (i + 1) + ".png";
string outputPath = Path.Combine(outputFolder, filename);
string fileName = originalFileName + (i + 1) + ".png";
string outputPath = Path.Combine(outputFolder, fileName);
images[i].Save(outputPath, ImageFormat.Png);
filePaths.Add(outputPath);
}
@ -121,5 +124,33 @@ private async Task<List<string>> SplitImageAsync(string filePath, int rowCount,
return SplitImage(filePath, rowCount, columnCount, outputFolder);
});
}
private void btnCopyDiscordEmoji_Click(object sender, EventArgs e)
{
string filePath = txtImageFilePath.Text;
string fileName = Path.GetFileNameWithoutExtension(filePath);
int rowCount = (int)nudRowCount.Value;
int columnCount = (int)nudColumnCount.Value;
StringBuilder sb = new StringBuilder();
for (int y = 0; y < rowCount; y++)
{
for (int x = 0; x < columnCount; x++)
{
int index = (y * columnCount) + x + 1;
sb.Append($":{fileName}{index}:");
}
if (y + 1 < rowCount)
{
sb.AppendLine();
}
}
string text = sb.ToString();
Clipboard.SetText(text);
}
}
}

View file

@ -144,7 +144,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;lblImageFilePath.ZOrder" xml:space="preserve">
<value>10</value>
<value>11</value>
</data>
<data name="lblRowCount.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -171,7 +171,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;lblRowCount.ZOrder" xml:space="preserve">
<value>9</value>
<value>10</value>
</data>
<data name="lblColumnCount.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -198,7 +198,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;lblColumnCount.ZOrder" xml:space="preserve">
<value>8</value>
<value>9</value>
</data>
<data name="nudRowCount.Location" type="System.Drawing.Point, System.Drawing">
<value>120, 36</value>
@ -223,7 +223,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;nudRowCount.ZOrder" xml:space="preserve">
<value>7</value>
<value>8</value>
</data>
<data name="nudColumnCount.Location" type="System.Drawing.Point, System.Drawing">
<value>120, 60</value>
@ -247,7 +247,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;nudColumnCount.ZOrder" xml:space="preserve">
<value>6</value>
<value>7</value>
</data>
<data name="txtImageFilePath.Location" type="System.Drawing.Point, System.Drawing">
<value>120, 12</value>
@ -268,7 +268,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;txtImageFilePath.ZOrder" xml:space="preserve">
<value>5</value>
<value>6</value>
</data>
<data name="lblOutputFolder.AutoSize" type="System.Boolean, mscorlib">
<value>True</value>
@ -295,7 +295,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;lblOutputFolder.ZOrder" xml:space="preserve">
<value>4</value>
<value>5</value>
</data>
<data name="txtOutputFolder.Location" type="System.Drawing.Point, System.Drawing">
<value>120, 84</value>
@ -316,7 +316,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;txtOutputFolder.ZOrder" xml:space="preserve">
<value>3</value>
<value>4</value>
</data>
<data name="btnImageFilePathBrowse.Location" type="System.Drawing.Point, System.Drawing">
<value>408, 11</value>
@ -340,7 +340,7 @@
<value>$this</value>
</data>
<data name="&gt;&gt;btnImageFilePathBrowse.ZOrder" xml:space="preserve">
<value>2</value>
<value>3</value>
</data>
<data name="btnOutputFolderBrowse.Location" type="System.Drawing.Point, System.Drawing">
<value>408, 83</value>
@ -364,13 +364,13 @@
<value>$this</value>
</data>
<data name="&gt;&gt;btnOutputFolderBrowse.ZOrder" xml:space="preserve">
<value>1</value>
<value>2</value>
</data>
<data name="btnSplitImage.Location" type="System.Drawing.Point, System.Drawing">
<value>16, 112</value>
</data>
<data name="btnSplitImage.Size" type="System.Drawing.Size, System.Drawing">
<value>424, 24</value>
<value>208, 24</value>
</data>
<data name="btnSplitImage.TabIndex" type="System.Int32, mscorlib">
<value>10</value>
@ -388,6 +388,30 @@
<value>$this</value>
</data>
<data name="&gt;&gt;btnSplitImage.ZOrder" xml:space="preserve">
<value>1</value>
</data>
<data name="btnCopyDiscordEmoji.Location" type="System.Drawing.Point, System.Drawing">
<value>232, 112</value>
</data>
<data name="btnCopyDiscordEmoji.Size" type="System.Drawing.Size, System.Drawing">
<value>208, 24</value>
</data>
<data name="btnCopyDiscordEmoji.TabIndex" type="System.Int32, mscorlib">
<value>11</value>
</data>
<data name="btnCopyDiscordEmoji.Text" xml:space="preserve">
<value>Copy Discord emoji syntax</value>
</data>
<data name="&gt;&gt;btnCopyDiscordEmoji.Name" xml:space="preserve">
<value>btnCopyDiscordEmoji</value>
</data>
<data name="&gt;&gt;btnCopyDiscordEmoji.Type" xml:space="preserve">
<value>System.Windows.Forms.Button, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="&gt;&gt;btnCopyDiscordEmoji.Parent" xml:space="preserve">
<value>$this</value>
</data>
<data name="&gt;&gt;btnCopyDiscordEmoji.ZOrder" xml:space="preserve">
<value>0</value>
</data>
<metadata name="$this.Localizable" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">