public void Stroke_LineJoins() { var doc = new PortableDocument(); doc.AddPage(100, 100); doc.SetLineWidth(3); doc.MoveTo(10, 10); doc.LineTo(50, 60); doc.LineTo(90, 10); doc.Stroke(false); doc.SetColor(1, 0, 0); doc.SetLineJoin(LineJoin.Bevel); doc.MoveTo(10, 20); doc.LineTo(50, 70); doc.LineTo(90, 20); doc.Stroke(false); doc.SetColor(0, 1, 0); doc.SetLineJoin(LineJoin.Miter); doc.MoveTo(10, 30); doc.LineTo(50, 80); doc.LineTo(90, 30); doc.Stroke(false); doc.SetColor(0, 0, 1); doc.SetLineJoin(LineJoin.Round); doc.MoveTo(10, 40); doc.LineTo(50, 90); doc.LineTo(90, 40); doc.Stroke(false); doc.Save(Folder + "Stroke_LineJoins.pdf"); }
public void Stroke_LineCaps() { var doc = new PortableDocument(); doc.AddPage(100, 100); doc.SetColor(0.5, 0.5, 0.5); doc.SetLineWidth(3); doc.MoveTo(10, 10); doc.LineTo(50, 60); doc.LineTo(90, 10); doc.Stroke(false); doc.SetColor(1, 0, 0); doc.SetLineCap(LineCap.Butt); doc.MoveTo(10, 20); doc.LineTo(50, 70); doc.LineTo(90, 20); doc.Stroke(false); doc.SetColor(0, 1, 0); doc.SetLineCap(LineCap.ProjectingSquare); doc.MoveTo(10, 30); doc.LineTo(50, 80); doc.LineTo(90, 30); doc.Stroke(false); doc.SetColor(0, 0, 1); doc.SetLineCap(LineCap.Round); doc.MoveTo(10, 40); doc.LineTo(50, 90); doc.LineTo(90, 40); doc.Stroke(false); doc.SetColor(0, 0, 0); doc.SetLineWidth(0.1); doc.MoveTo(10, 10); doc.LineTo(50, 60); doc.LineTo(90, 10); doc.MoveTo(10, 20); doc.LineTo(50, 70); doc.LineTo(90, 20); doc.MoveTo(10, 30); doc.LineTo(50, 80); doc.LineTo(90, 30); doc.MoveTo(10, 40); doc.LineTo(50, 90); doc.LineTo(90, 40); doc.Stroke(false); doc.Save(Folder + "Stroke_LineCaps.pdf"); }
public void DrawPolygon() { var doc = new PortableDocument(); doc.AddPage(200, 100); doc.MoveTo(50, 30); doc.LineTo(170, 30); doc.LineTo(100, 70); doc.SetColor(OxyColors.Orange); doc.SetFillColor(OxyColors.LightGreen); doc.FillAndStroke(); doc.MoveTo(5, 5); doc.LineTo(5, 25); doc.LineTo(25, 5); doc.Fill(); doc.MoveTo(195, 95); doc.LineTo(175, 95); doc.LineTo(195, 75); doc.Stroke(); doc.Save(Folder + "DrawPolygon.pdf"); }
public void FillRectangle() { var doc = new PortableDocument(); doc.AddPage(200, 100); doc.SetColor(OxyColors.Gainsboro); doc.SetFillColor(OxyColors.Navy); doc.FillRectangle(5, 5, 100, 70); doc.Save(Folder + "FillRectangle.pdf"); }
public void FillEllipse() { var doc = new PortableDocument(); doc.AddPage(200, 100); doc.SetColor(OxyColors.Orange); doc.SetFillColor(OxyColors.LightGreen); doc.FillEllipse(5, 5, 190, 90); doc.Save(Folder + "FillEllipse.pdf"); }
public void FillCircle() { var doc = new PortableDocument(); doc.AddPage(200, 200); doc.SetColor(OxyColors.Blue); doc.SetFillColor(OxyColors.LightBlue); doc.FillCircle(100, 100, 95); doc.Save(Folder + "FillCircle.pdf"); }
public void DrawRectangle() { var doc = new PortableDocument(); doc.AddPage(200, 100); doc.SetColor(OxyColors.Navy); doc.SetFillColor(OxyColors.Gainsboro); doc.DrawRectangle(5, 5, 100, 70, true); doc.DrawRectangle(185, 85, 10, 10); doc.Save(Folder + "DrawRectangle.pdf"); }
public void DrawEllipse() { var doc = new PortableDocument(); doc.AddPage(200, 100); doc.SetColor(OxyColors.Orange); doc.SetFillColor(OxyColors.LightGreen); doc.DrawEllipse(5, 5, 190, 90, true); doc.DrawEllipse(175, 85, 20, 10); doc.Save(Folder + "DrawEllipse.pdf"); }
public void DrawText_TopLeftCoordinateSystem() { var doc = new PortableDocument(); doc.AddPage(PageSize.A4); doc.Transform(1, 0, 0, -1, 0, doc.PageHeight); doc.SetHorizontalTextScaling(-100); // Note: negative font size doc.SetFont("Arial", -20); doc.DrawText(5, 25, "Hello world!"); doc.SetColor(OxyColors.Blue); doc.DrawCross(5, 25); doc.SetColor(OxyColors.Blue); doc.SetFillColor(OxyColors.LightBlue); doc.DrawEllipse(50, 100, 50, 40, true); doc.Save(Folder + "DrawText_TopLeftCoordinateSystem.pdf"); }
public void DrawLine_Colors() { var doc = new PortableDocument(); doc.AddPage(100, 100); double x = 0; double y0 = 78; double y1 = 10; doc.DrawLine(10, 95, 10, 80); doc.SetColor(0, 0, 0); doc.DrawLine(x += 10, y0, x, y1); doc.SetColor(1, 1, 1); doc.DrawLine(x += 10, y0, x, y1); doc.SetColor(1, 0, 0); doc.DrawLine(x += 10, y0, x, y1); doc.SetColor(0, 1, 0); doc.DrawLine(x += 10, y0, x, y1); doc.SetColor(0, 0, 1); doc.DrawLine(x += 10, y0, x, y1); doc.SetColor(1, 1, 0); doc.DrawLine(x += 10, y0, x, y1); doc.Save(Folder + "DrawLine_Colors.pdf"); }
public void SetClippingRectangle() { var doc = new PortableDocument(); doc.AddPage(200, 200); doc.SetColor(OxyColors.Blue); doc.SetFillColor(OxyColors.LightBlue); doc.SaveState(); doc.SetClippingRectangle(5, 5, 50, 50); doc.DrawCircle(100, 100, 95, true); doc.RestoreState(); doc.DrawCircle(120, 120, 70); doc.Save(Folder + "SetClippingRectangle.pdf"); }
public void RotateAt() { var doc = new PortableDocument(); doc.AddPage(200, 200); doc.SaveState(); doc.SetColor(1, 0, 0); doc.RotateAt(50, 20, 30); doc.DrawRectangle(50, 20, 100, 15); doc.RestoreState(); doc.DrawRectangle(50, 20, 100, 15); doc.Save(Folder + "RotateAt.pdf"); }
public void Translate() { var doc = new PortableDocument(); doc.AddPage(200, 200); doc.SaveState(); doc.SetColor(1, 0, 0); doc.Translate(20, 10); doc.DrawRectangle(10, 10, 100, 70); doc.RestoreState(); doc.DrawRectangle(10, 10, 100, 70); doc.Save(Folder + "Translate.pdf"); }
public void MeasureText() { var doc = new PortableDocument(); doc.AddPage(PageSize.A4); doc.SetFont("Arial", 96); var text = "qjQJKæ"; double width, height; doc.MeasureText(text, out width, out height); double y = doc.PageHeight - 400 - height; doc.SetColor(0, 0, 1); doc.DrawRectangle(50, y, width, height); doc.SetFillColor(0, 0, 0); doc.DrawText(50, y, text); doc.Save(Folder + "MeasureText.pdf"); }
/// <summary> /// Sets the stroke color. /// </summary> /// <param name="doc">The document.</param> /// <param name="c">The color.</param> public static void SetColor(this PortableDocument doc, OxyColor c) { doc.SetColor(c.R / 255.0, c.G / 255.0, c.B / 255.0); doc.SetStrokeAlpha(c.A / 255.0); }