public override Cloneable Clone() { CourseImage clone = (CourseImage)this.MemberwiseClone(); clone.Bitmap = (Bitmap)Bitmap.Clone(); return(clone as Cloneable); }
public CourseImage CreateImage(CourseImage prototype, string imagePath) { CourseImage image = (CourseImage)prototype.Clone(); using (var blend = Image.FromFile(imagePath)) { using (var canvas = Graphics.FromImage(image.Bitmap)) { canvas.DrawImage(blend, 115, 32); } } return(image); }
public void Run() { CourseImage prototype = new CourseImage(); prototype.Initialise(); // create image of laptop with blueprint CourseImageMaker maker = new CourseImageMaker(); CourseImage blueprint = maker.CreateImage(prototype, "course_image_1.png"); // create image of laptop with threads CourseImage threads = maker.CreateImage(prototype, "course_image_2.png"); // create image of laptop with memory cards CourseImage memory = maker.CreateImage(prototype, "course_image_3.png"); }