public override void Run() { ICollection <double> chapters = this.Theory.Chapters; StripCanvasSize scs = this.Manager.GenerateStripCanvasSize(chapters.Count); double dw = scs.CanvasSize.Width; double dh = scs.CanvasSize.Height; using (PdfSurface surface = new PdfSurface(this.Manager.OutputFile, scs.TotalWidth, scs.TotalHeight)) { using (Context ctx = new Context(surface)) { int index = 0x00; IPoint3 p; foreach (double chapter in chapters) { p = scs.GetCanvasOffset(index); ctx.Save(); ctx.Translate(p.X, p.Y); ctx.Rectangle(0.0d, 0.0d, dw, dh); ctx.Stroke(); this.Theory.Time = chapter; CairoEngine engine = new CairoEngine(this.Theory); engine.Context = ctx; engine.Process(); ctx.Restore(); index++; } } } }
public override void Run() { StripCanvasSize scs = this.Manager.GenerateStripCanvasSize(0x01); using (PdfSurface surface = new PdfSurface(this.Manager.OutputFile, scs.TotalWidth, scs.TotalHeight)) { using (Context ctx = new Context(surface)) { IPoint3 p = scs.GetCanvasOffset(0x00); ctx.Save(); ctx.Translate(p.X, p.Y); this.Theory.Time = this.Manager.Time; CairoEngine engine = new CairoEngine(this.Theory); engine.Context = ctx; engine.Process(); ctx.Restore(); } } }