allow percentage sizes

change height and width options to be floats, and interpret values
between 0 and 1 to be percentages.  For example, an options strings of
"0.5x" specifies 50% width and proportional height.
This commit is contained in:
Will Norris 2013-12-06 15:03:17 -08:00
parent 036d0c51c4
commit cd1112f7ac
4 changed files with 28 additions and 12 deletions

View file

@ -91,11 +91,11 @@ func (p *Proxy) ServeHTTP(w http.ResponseWriter, r *http.Request) {
return
}
if p.MaxWidth > 0 && req.Options.Width > p.MaxWidth {
req.Options.Width = p.MaxWidth
if p.MaxWidth > 0 && int(req.Options.Width) > p.MaxWidth {
req.Options.Width = float64(p.MaxWidth)
}
if p.MaxHeight > 0 && req.Options.Height > p.MaxHeight {
req.Options.Height = p.MaxHeight
if p.MaxHeight > 0 && int(req.Options.Height) > p.MaxHeight {
req.Options.Height = float64(p.MaxHeight)
}
u := req.URL.String()