diff --git a/src/Greenshot.Editor/Controls/Emoji/EmojiData.cs b/src/Greenshot.Editor/Controls/Emoji/EmojiData.cs
index b54bea4bb..3f1ade1cc 100644
--- a/src/Greenshot.Editor/Controls/Emoji/EmojiData.cs
+++ b/src/Greenshot.Editor/Controls/Emoji/EmojiData.cs
@@ -21,6 +21,7 @@
using System;
using System.IO;
+using System.IO.Compression;
using System.Xml;
using System.Xml.Serialization;
@@ -31,7 +32,7 @@ namespace Greenshot.Editor.Controls.Emoji
///
public static class EmojiData
{
- private const string EmojisXmlFilePath = "emojis.xml";
+ private const string EmojisXmlFilePath = "emojis.xml.gz";
public static Emojis Data { get; private set; } = new();
@@ -41,7 +42,12 @@ namespace Greenshot.Editor.Controls.Emoji
if (File.Exists(EmojisXmlFilePath))
{
- Data = (Emojis)x.Deserialize(new XmlTextReader(EmojisXmlFilePath));
+ using var fileStream = new FileStream(EmojisXmlFilePath, FileMode.Open, FileAccess.Read);
+ using var gzStream = new GZipStream(fileStream, CompressionMode.Decompress);
+ using var memoryStream = new MemoryStream();
+ gzStream.CopyTo(memoryStream);
+ memoryStream.Seek(0, SeekOrigin.Begin);
+ Data = (Emojis)x.Deserialize(new XmlTextReader(memoryStream));
}
else
{
diff --git a/src/Greenshot/Greenshot.csproj b/src/Greenshot/Greenshot.csproj
index f9978f8fd..2141eac1d 100644
--- a/src/Greenshot/Greenshot.csproj
+++ b/src/Greenshot/Greenshot.csproj
@@ -70,6 +70,7 @@
+