Remove .gzip compression

This commit is contained in:
Julien Richard 2023-08-12 18:04:44 +02:00
commit c1c9cfb46b
No known key found for this signature in database
5 changed files with 8 additions and 34 deletions

View file

@ -38,8 +38,8 @@ Source: {#ReleaseDir}\System.Memory.dll; DestDir: {app}; Components: greenshot;
Source: {#ReleaseDir}\System.Numerics.Vectors.dll; DestDir: {app}; Components: greenshot; Flags: overwritereadonly ignoreversion replacesameversion Source: {#ReleaseDir}\System.Numerics.Vectors.dll; DestDir: {app}; Components: greenshot; Flags: overwritereadonly ignoreversion replacesameversion
Source: {#ReleaseDir}\System.Runtime.CompilerServices.Unsafe.dll; DestDir: {app}; Components: greenshot; Flags: overwritereadonly ignoreversion replacesameversion Source: {#ReleaseDir}\System.Runtime.CompilerServices.Unsafe.dll; DestDir: {app}; Components: greenshot; Flags: overwritereadonly ignoreversion replacesameversion
Source: {#ReleaseDir}\System.Buffers.dll; DestDir: {app}; Components: greenshot; Flags: overwritereadonly ignoreversion replacesameversion Source: {#ReleaseDir}\System.Buffers.dll; DestDir: {app}; Components: greenshot; Flags: overwritereadonly ignoreversion replacesameversion
Source: {#ReleaseDir}\Twemoji.Mozilla.ttf.gz; DestDir: {app}; Components: greenshot; Flags: overwritereadonly ignoreversion replacesameversion Source: {#ReleaseDir}\Twemoji.Mozilla.ttf; DestDir: {app}; Components: greenshot; Flags: overwritereadonly ignoreversion replacesameversion
Source: {#ReleaseDir}\emojis.xml.gz; DestDir: {app}; Components: greenshot; Flags: overwritereadonly ignoreversion replacesameversion Source: {#ReleaseDir}\emojis.xml; DestDir: {app}; Components: greenshot; Flags: overwritereadonly ignoreversion replacesameversion
Source: {#GreenshotProjectDir}\log4net.xml; DestDir: {app}; Components: greenshot; Flags: overwritereadonly ignoreversion Source: {#GreenshotProjectDir}\log4net.xml; DestDir: {app}; Components: greenshot; Flags: overwritereadonly ignoreversion
Source: {#ReleaseDir}\checksum.SHA256; DestDir: {app}; Components: greenshot; Flags: overwritereadonly ignoreversion replacesameversion Source: {#ReleaseDir}\checksum.SHA256; DestDir: {app}; Components: greenshot; Flags: overwritereadonly ignoreversion replacesameversion
;Source: ..\greenshot-defaults.ini; DestDir: {app}; Flags: overwritereadonly ignoreversion replacesameversion ;Source: ..\greenshot-defaults.ini; DestDir: {app}; Flags: overwritereadonly ignoreversion replacesameversion

View file

@ -32,7 +32,7 @@ namespace Greenshot.Editor.Controls.Emoji
/// </summary> /// </summary>
public static class EmojiData public static class EmojiData
{ {
private const string EmojisXmlFilePath = "emojis.xml.gz"; private const string EmojisXmlFilePath = "emojis.xml";
public static Emojis Data { get; private set; } = new(); public static Emojis Data { get; private set; } = new();
@ -42,12 +42,7 @@ namespace Greenshot.Editor.Controls.Emoji
if (File.Exists(EmojisXmlFilePath)) if (File.Exists(EmojisXmlFilePath))
{ {
using var fileStream = new FileStream(EmojisXmlFilePath, FileMode.Open, FileAccess.Read); Data = (Emojis)x.Deserialize(new XmlTextReader(EmojisXmlFilePath));
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 else
{ {

View file

@ -42,30 +42,15 @@ namespace Greenshot.Editor.Drawing.Emoji
private static readonly Lazy<FontFamily> TwemojiFontFamily = new(() => private static readonly Lazy<FontFamily> TwemojiFontFamily = new(() =>
{ {
var exeDirectory = Path.GetDirectoryName(Assembly.GetCallingAssembly().Location); var exeDirectory = Path.GetDirectoryName(Assembly.GetCallingAssembly().Location);
var twemojiFontFile = Path.Combine(exeDirectory, "Twemoji.Mozilla.ttf.gz"); var twemojiFontFile = Path.Combine(exeDirectory, "Twemoji.Mozilla.ttf");
if (!File.Exists(twemojiFontFile)) if (!File.Exists(twemojiFontFile))
{ {
throw new FileNotFoundException($"Can't find {twemojiFontFile}, bad installation?"); throw new FileNotFoundException($"Can't find {twemojiFontFile}, bad installation?");
} }
Stopwatch sw = new();
sw.Start();
using var fileStream = new FileStream(twemojiFontFile, FileMode.Open, FileAccess.Read); using var fileStream = new FileStream(twemojiFontFile, FileMode.Open, FileAccess.Read);
using var gzStream = new GZipStream(fileStream, CompressionMode.Decompress); TwemojiFontCollection.Add(fileStream);
using var memoryStream = new MemoryStream();
gzStream.CopyTo(memoryStream);
memoryStream.Seek(0, SeekOrigin.Begin);
sw.Stop();
Console.WriteLine($"Uncompress .ttf: {sw.ElapsedMilliseconds} ms");
sw.Reset();
sw.Start();
TwemojiFontCollection.Add(memoryStream);
TwemojiFontCollection.TryGet("Twemoji Mozilla", out var fontFamily); TwemojiFontCollection.TryGet("Twemoji Mozilla", out var fontFamily);
sw.Stop();
Console.WriteLine($"Parse .ttf: {sw.ElapsedMilliseconds} ms");
return fontFamily; return fontFamily;
}); });

View file

@ -15,11 +15,6 @@
<ProjectReference Include="..\Greenshot.Base\Greenshot.Base.csproj" /> <ProjectReference Include="..\Greenshot.Base\Greenshot.Base.csproj" />
</ItemGroup> </ItemGroup>
<Target Name="CompressTwemojiMozillaTtfResource" BeforeTargets="BeforeBuild" Condition="!Exists('Drawing\Emoji\TwemojiMozilla.ttf.gz')">
<GZipTask InputFile="Drawing\Emoji\Twemoji.Mozilla.ttf"
OutputFile="Drawing\Emoji\Twemoji.Mozilla.ttf.gz" />
</Target>
<ItemGroup> <ItemGroup>
<Compile Update="Controls\BindableToolStripButton.cs"> <Compile Update="Controls\BindableToolStripButton.cs">
<SubType>Component</SubType> <SubType>Component</SubType>
@ -94,9 +89,9 @@
</ItemGroup> </ItemGroup>
<ItemGroup> <ItemGroup>
<ContentWithTargetPath Include="Drawing\Emoji\Twemoji.Mozilla.ttf.gz"> <ContentWithTargetPath Include="Drawing\Emoji\Twemoji.Mozilla.ttf">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory> <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
<TargetPath>Twemoji.Mozilla.ttf.gz</TargetPath> <TargetPath>Twemoji.Mozilla.ttf</TargetPath>
</ContentWithTargetPath> </ContentWithTargetPath>
</ItemGroup> </ItemGroup>
</Project> </Project>

View file

@ -70,7 +70,6 @@
<Target Name="GenerateEmojiTestTxtFile" BeforeTargets="BeforeBuild"> <Target Name="GenerateEmojiTestTxtFile" BeforeTargets="BeforeBuild">
<EmojiDataTask EmojiTestTxtFile="..\Greenshot.Editor\Controls\Emoji\emoji-test.txt" OutputFilename="$(SolutionDir)$(SolutionName)\$(OutDir)\emojis.xml" /> <EmojiDataTask EmojiTestTxtFile="..\Greenshot.Editor\Controls\Emoji\emoji-test.txt" OutputFilename="$(SolutionDir)$(SolutionName)\$(OutDir)\emojis.xml" />
<GZipTask InputFile="$(SolutionDir)$(SolutionName)\$(OutDir)\emojis.xml" OutputFile="$(SolutionDir)$(SolutionName)\$(OutDir)\emojis.xml.gz" />
</Target> </Target>
<Target Name="Generate hashes" BeforeTargets="PostBuildEvent"> <Target Name="Generate hashes" BeforeTargets="PostBuildEvent">