diff --git a/src/ImageSharp/Formats/Png/PngDecoderCore.cs b/src/ImageSharp/Formats/Png/PngDecoderCore.cs
index 1afb65566d..c4b10b4dc9 100644
--- a/src/ImageSharp/Formats/Png/PngDecoderCore.cs
+++ b/src/ImageSharp/Formats/Png/PngDecoderCore.cs
@@ -248,7 +248,7 @@ internal sealed class PngDecoderCore : IImageDecoderInternals
break;
case PngChunkType.Data:
- pngMetadata.DefaultImageAnimated = currentFrameControl != null;
+ pngMetadata.AnimateRootFrame = currentFrameControl != null;
currentFrameControl ??= new((uint)this.header.Width, (uint)this.header.Height);
if (image is null)
{
@@ -265,7 +265,7 @@ internal sealed class PngDecoderCore : IImageDecoderInternals
this.ReadNextDataChunk,
currentFrameControl.Value,
cancellationToken);
- if (pngMetadata.DefaultImageAnimated)
+ if (pngMetadata.AnimateRootFrame)
{
previousFrame = currentFrame;
previousFrameControl = currentFrameControl;
diff --git a/src/ImageSharp/Formats/Png/PngEncoderCore.cs b/src/ImageSharp/Formats/Png/PngEncoderCore.cs
index e0f7ed9489..802e4dd6a4 100644
--- a/src/ImageSharp/Formats/Png/PngEncoderCore.cs
+++ b/src/ImageSharp/Formats/Png/PngEncoderCore.cs
@@ -190,11 +190,11 @@ internal sealed class PngEncoderCore : IImageEncoderInternals, IDisposable
if (image.Frames.Count > 1)
{
- this.WriteAnimationControlChunk(stream, (uint)(image.Frames.Count - (pngMetadata.DefaultImageAnimated ? 0 : 1)), pngMetadata.RepeatCount);
+ this.WriteAnimationControlChunk(stream, (uint)(image.Frames.Count - (pngMetadata.AnimateRootFrame ? 0 : 1)), pngMetadata.RepeatCount);
}
// If the first frame isn't animated, write it as usual and skip it when writing animated frames
- if (!pngMetadata.DefaultImageAnimated || image.Frames.Count == 1)
+ if (!pngMetadata.AnimateRootFrame || image.Frames.Count == 1)
{
FrameControl frameControl = new((uint)this.width, (uint)this.height);
this.WriteDataChunks(frameControl, currentFrame.PixelBuffer.GetRegion(), quantized, stream, false);
@@ -209,7 +209,7 @@ internal sealed class PngEncoderCore : IImageEncoderInternals, IDisposable
PngDisposalMethod previousDisposal = frameMetadata.DisposalMethod;
FrameControl frameControl = this.WriteFrameControlChunk(stream, frameMetadata, currentFrame.Bounds(), 0);
uint sequenceNumber = 1;
- if (pngMetadata.DefaultImageAnimated)
+ if (pngMetadata.AnimateRootFrame)
{
this.WriteDataChunks(frameControl, currentFrame.PixelBuffer.GetRegion(), quantized, stream, false);
}
diff --git a/src/ImageSharp/Formats/Png/PngMetadata.cs b/src/ImageSharp/Formats/Png/PngMetadata.cs
index 766377f7c9..d9028dd807 100644
--- a/src/ImageSharp/Formats/Png/PngMetadata.cs
+++ b/src/ImageSharp/Formats/Png/PngMetadata.cs
@@ -29,7 +29,7 @@ public class PngMetadata : IDeepCloneable
this.InterlaceMethod = other.InterlaceMethod;
this.TransparentColor = other.TransparentColor;
this.RepeatCount = other.RepeatCount;
- this.DefaultImageAnimated = other.DefaultImageAnimated;
+ this.AnimateRootFrame = other.AnimateRootFrame;
if (other.ColorTable?.Length > 0)
{
@@ -85,9 +85,9 @@ public class PngMetadata : IDeepCloneable
public uint RepeatCount { get; set; } = 1;
///
- /// Gets or sets a value indicating whether the default image is shown as part of the animated sequence
+ /// Gets or sets a value indicating whether the root frame is shown as part of the animated sequence
///
- public bool DefaultImageAnimated { get; set; } = true;
+ public bool AnimateRootFrame { get; set; } = true;
///
public IDeepCloneable DeepClone() => new PngMetadata(this);
diff --git a/tests/ImageSharp.Tests/Formats/Png/PngEncoderTests.Chunks.cs b/tests/ImageSharp.Tests/Formats/Png/PngEncoderTests.Chunks.cs
index 2e3390298b..76fd260dd5 100644
--- a/tests/ImageSharp.Tests/Formats/Png/PngEncoderTests.Chunks.cs
+++ b/tests/ImageSharp.Tests/Formats/Png/PngEncoderTests.Chunks.cs
@@ -68,7 +68,7 @@ public partial class PngEncoderTests
{
using Image image = provider.GetImage(PngDecoder.Instance);
PngMetadata metadata = image.Metadata.GetPngMetadata();
- int correctFrameCount = image.Frames.Count - (metadata.DefaultImageAnimated ? 0 : 1);
+ int correctFrameCount = image.Frames.Count - (metadata.AnimateRootFrame ? 0 : 1);
using MemoryStream memStream = new();
image.Save(memStream, PngEncoder);
memStream.Position = 0;
diff --git a/tests/ImageSharp.Tests/Formats/Png/PngEncoderTests.cs b/tests/ImageSharp.Tests/Formats/Png/PngEncoderTests.cs
index 6c4047be8e..ca5aae961c 100644
--- a/tests/ImageSharp.Tests/Formats/Png/PngEncoderTests.cs
+++ b/tests/ImageSharp.Tests/Formats/Png/PngEncoderTests.cs
@@ -470,7 +470,7 @@ public partial class PngEncoderTests
PngMetadata outputMetadata = output.Metadata.GetPngMetadata();
Assert.Equal(originalMetadata.RepeatCount, outputMetadata.RepeatCount);
- Assert.Equal(originalMetadata.DefaultImageAnimated, outputMetadata.DefaultImageAnimated);
+ Assert.Equal(originalMetadata.AnimateRootFrame, outputMetadata.AnimateRootFrame);
for (int i = 0; i < image.Frames.Count; i++)
{
diff --git a/tests/ImageSharp.Tests/Formats/Png/PngMetadataTests.cs b/tests/ImageSharp.Tests/Formats/Png/PngMetadataTests.cs
index 8308935d04..225e4deef2 100644
--- a/tests/ImageSharp.Tests/Formats/Png/PngMetadataTests.cs
+++ b/tests/ImageSharp.Tests/Formats/Png/PngMetadataTests.cs
@@ -33,7 +33,7 @@ public class PngMetadataTests
Gamma = 2,
TextData = new List { new PngTextData("name", "value", "foo", "bar") },
RepeatCount = 123,
- DefaultImageAnimated = false
+ AnimateRootFrame = false
};
PngMetadata clone = (PngMetadata)meta.DeepClone();
@@ -45,7 +45,7 @@ public class PngMetadataTests
Assert.False(meta.TextData.Equals(clone.TextData));
Assert.True(meta.TextData.SequenceEqual(clone.TextData));
Assert.True(meta.RepeatCount == clone.RepeatCount);
- Assert.True(meta.DefaultImageAnimated == clone.DefaultImageAnimated);
+ Assert.True(meta.AnimateRootFrame == clone.AnimateRootFrame);
clone.BitDepth = PngBitDepth.Bit2;
clone.ColorType = PngColorType.Palette;
@@ -153,7 +153,7 @@ public class PngMetadataTests
{
using Image image = provider.GetImage(PngDecoder.Instance);
PngMetadata meta = image.Metadata.GetFormatMetadata(PngFormat.Instance);
- Assert.False(meta.DefaultImageAnimated);
+ Assert.False(meta.AnimateRootFrame);
}
[Theory]
@@ -163,7 +163,7 @@ public class PngMetadataTests
{
using Image image = provider.GetImage(PngDecoder.Instance);
PngMetadata meta = image.Metadata.GetFormatMetadata(PngFormat.Instance);
- Assert.True(meta.DefaultImageAnimated);
+ Assert.True(meta.AnimateRootFrame);
}
[Theory]