fixed dependencies
This commit is contained in:
50
vendor/github.com/go-latex/latex/mtex/render.go
generated
vendored
Normal file
50
vendor/github.com/go-latex/latex/mtex/render.go
generated
vendored
Normal file
@@ -0,0 +1,50 @@
|
||||
// Copyright ©2020 The go-latex Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package mtex
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"math"
|
||||
|
||||
"github.com/go-latex/latex/drawtex"
|
||||
"github.com/go-latex/latex/font/ttf"
|
||||
"github.com/go-latex/latex/tex"
|
||||
)
|
||||
|
||||
type Renderer interface {
|
||||
Render(w, h, dpi float64, cnv *drawtex.Canvas) error
|
||||
}
|
||||
|
||||
func Render(dst Renderer, expr string, size, dpi float64, fonts *ttf.Fonts) error {
|
||||
var (
|
||||
canvas = drawtex.New()
|
||||
backend *ttf.Backend
|
||||
)
|
||||
switch fonts {
|
||||
case nil:
|
||||
backend = ttf.New(canvas)
|
||||
default:
|
||||
backend = ttf.NewFrom(canvas, fonts)
|
||||
}
|
||||
|
||||
box, err := Parse(expr, size, 72, backend)
|
||||
if err != nil {
|
||||
return fmt.Errorf("could not parse math expression: %w", err)
|
||||
}
|
||||
|
||||
var sh tex.Ship
|
||||
sh.Call(0, 0, box.(tex.Tree))
|
||||
|
||||
w := box.Width()
|
||||
h := box.Height()
|
||||
d := box.Depth()
|
||||
|
||||
err = dst.Render(w/72, math.Ceil(h+math.Max(d, 0))/72, dpi, canvas)
|
||||
if err != nil {
|
||||
return fmt.Errorf("could not render math expression: %w", err)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user