本文整理汇总了Golang中github.com/llgcode/draw2d.GraphicContext类的典型用法代码示例。如果您正苦于以下问题:Golang GraphicContext类的具体用法?Golang GraphicContext怎么用?Golang GraphicContext使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了GraphicContext类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: Main
// Main draws "Hello World" and returns the filename. This should only be
// used during testing.
func Main(gc draw2d.GraphicContext, ext string) (string, error) {
// Draw hello world
Draw(gc, fmt.Sprintf("Hello World %d dpi", gc.GetDPI()))
// Return the output filename
return samples.Output("helloworld", ext), nil
}
示例2: drawSnake
func (h *spaceFillingImage) drawSnake(gc draw2d.GraphicContext, snake *draw2d.Path) {
gc.SetStrokeColor(h.SnakeColor)
gc.SetLineCap(draw2d.SquareCap)
gc.SetLineJoin(draw2d.MiterJoin)
gc.SetLineWidth(2)
gc.Stroke(snake)
}
示例3: UseImageWithContext
// UseImageWithContext specifies both an image
// and a graphic context to create the canvas from.
// The minimum point of the given image
// should probably be 0,0.
func UseImageWithContext(img draw.Image, gc draw2d.GraphicContext) option {
return func(c *Canvas) uint32 {
c.img = img
c.gc = gc
c.dpi = gc.GetDPI()
return setsDPI | setsSize
}
}
示例4: lineCircle
func lineCircle(gc d2d.GraphicContext, cx, cy, r float64) {
count := int(1000.0 * r)
trace := traceCircle(count, cx, cy, r)
gc.MoveTo(cx+r, cy)
for _, pos := range trace {
gc.LineTo(pos.X, pos.Y)
}
}
示例5: Draw
func (ps *PolygonSymbolizer) Draw(gc draw2d.GraphicContext, shape geom.Shape) {
if !ps.Applies(shape) {
return
}
if polygon, ok := shape.(geom.PolygonShape); ok {
gc.SetFillColor(ps.s.Fill)
for _, path := range polygon.Polygon() {
l := ps.r.coordsAsPath(path)
gc.Fill(l)
}
}
}
示例6: draw
func (c squareplot) draw(gc d2d.GraphicContext) {
for _, cb := range c.boxes {
gc.SetStrokeColor(black)
gc.SetFillColor(clear)
gc.SetLineWidth(1.0)
side := cb.Radius / 2.0
lineSquare(gc, cb.P.X, cb.P.Y, side)
gc.Close()
gc.FillStroke()
}
}
示例7: Draw
// Draw "Hello World"
func Draw(gc draw2d.GraphicContext, text string) {
// Draw a rounded rectangle using default colors
draw2dkit.RoundedRectangle(gc, 5, 5, 135, 95, 10, 10)
gc.FillStroke()
// Set the font luximbi.ttf
gc.SetFontData(draw2d.FontData{Name: "luxi", Family: draw2d.FontFamilyMono, Style: draw2d.FontStyleBold | draw2d.FontStyleItalic})
// Set the fill text color to black
gc.SetFillColor(image.Black)
gc.SetFontSize(14)
// Display Hello World
gc.FillStringAt("Hello World", 8, 52)
}
示例8: Main
// Main draws vertically spaced lines and returns the filename.
// This should only be used during testing.
func Main(gc draw2d.GraphicContext, ext string) (string, error) {
gc.SetFillRule(draw2d.FillRuleWinding)
gc.Clear()
// Draw the line
for x := 5.0; x < 297; x += 10 {
Draw(gc, x, 0, x, 210)
}
gc.ClearRect(100, 75, 197, 135)
draw2d.Ellipse(gc, 148.5, 105, 35, 25)
gc.SetFillColor(color.RGBA{0xff, 0xff, 0x44, 0xff})
gc.FillStroke()
// Return the output filename
return samples.Output("line", ext), nil
}
示例9: drawRectange
func (h *spaceFillingImage) drawRectange(gc draw2d.GraphicContext, px1, py1, px2, py2 float64) {
gc.SetFillColor(h.BackgroundColor)
gc.SetStrokeColor(h.GridColor)
gc.SetLineWidth(1)
draw2dkit.Rectangle(gc, px1, py1, px2, py2)
gc.FillStroke()
}
示例10: Plot
func Plot(g draw2d.GraphicContext, points []Point) {
g.MoveTo(0, 0)
for _, p := range points {
g.LineTo(p.x*100, p.y*100)
}
g.Close()
g.FillStroke()
}
示例11: Main
// Main draws the tiger
func Main(gc draw2d.GraphicContext, ext string) (string, error) {
gc.Save()
// flip the image
gc.Translate(0, 200)
gc.Scale(0.35, -0.35)
gc.Translate(70, -200)
// Tiger postscript drawing
tiger := samples.Resource("image", "tiger.ps", ext)
// Draw tiger
Draw(gc, tiger)
gc.Restore()
// Return the output filename
return samples.Output("postscript", ext), nil
}
示例12: Main
// Main draws a left hand and ear of a gopher. Afterwards it returns
// the filename. This should only be used during testing.
func Main(gc draw2d.GraphicContext, ext string) (string, error) {
gc.Save()
gc.Scale(0.5, 0.5)
// Draw a (partial) gopher
Draw(gc)
gc.Restore()
// Return the output filename
return samples.Output("gopher", ext), nil
}
示例13: lineSquare
func lineSquare(gc d2d.GraphicContext, x, y, side float64) {
xmin, ymin := x-side, y-side
xmax, ymax := x+side, y+side
gc.MoveTo(xmin, ymin)
gc.LineTo(xmin, ymax)
gc.LineTo(xmax, ymax)
gc.LineTo(xmax, ymin)
gc.LineTo(xmin, ymin)
}
示例14: drawText
func drawText(gc draw2d.GraphicContext, text string, x, y float64) {
var fontSize float64 = 14
fontSizeHeight := fontSize + 14
if y < fontSizeHeight {
return
}
gc.SetFontData(draw2d.FontData{Name: "luxi", Family: draw2d.FontFamilyMono, Style: draw2d.FontStyleNormal})
// Set the fill text color to black
gc.SetFillColor(image.Black)
gc.SetFontSize(fontSize)
// 9px width each letter and 2px letter spacing at font-size 14
var yPos float64
for ; yPos < y; yPos = yPos + fontSizeHeight {
gc.FillStringAt(text, x, yPos)
}
}
示例15: drawText
func (h *spaceFillingImage) drawText(gc draw2d.GraphicContext, px1, py1 float64, t int) {
if !h.DrawText {
return
}
text := strconv.Itoa(t)
_, top, _, _ := gc.GetStringBounds(text)
gc.SetFillColor(h.TextColor)
gc.FillStringAt(text, px1+h.TextMargin, py1-top+h.TextMargin)
}