diff --git a/src/ImageSharp/Image.cs b/src/ImageSharp/Image.cs
index 9014f8653..9dbfacbba 100644
--- a/src/ImageSharp/Image.cs
+++ b/src/ImageSharp/Image.cs
@@ -61,5 +61,11 @@ namespace ImageSharp
{
return new PixelAccessor(this);
}
+
+ ///
+ internal override ImageFrame ToFrame()
+ {
+ return new ImageFrame(this);
+ }
}
}
diff --git a/src/ImageSharp/ImageFrame.cs b/src/ImageSharp/ImageFrame.cs
new file mode 100644
index 000000000..80e255fe6
--- /dev/null
+++ b/src/ImageSharp/ImageFrame.cs
@@ -0,0 +1,46 @@
+//
+// Copyright (c) James Jackson-South and contributors.
+// Licensed under the Apache License, Version 2.0.
+//
+
+namespace ImageSharp
+{
+ using System.Diagnostics;
+
+ ///
+ /// An optimized frame for the class.
+ ///
+ [DebuggerDisplay("ImageFrame: {Width}x{Height}")]
+ public class ImageFrame : ImageFrame
+ {
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ public ImageFrame()
+ {
+ }
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ ///
+ /// The image to create the frame from.
+ ///
+ public ImageFrame(ImageBase image)
+ : base(image)
+ {
+ }
+
+ ///
+ public override PixelAccessor Lock()
+ {
+ return new PixelAccessor(this);
+ }
+
+ ///
+ internal override ImageFrame ToFrame()
+ {
+ return new ImageFrame(this);
+ }
+ }
+}