javascript - 无法使用 SVG.js 在原点绘制。可能在 .viewBox() 调用中做错了什么?
问题描述
创建 SVG 元素:
var draw = SVG('drawing').size(window.innerWidth, window.innerHeight);
draw.viewbox(0, 0, 100, 100);
我认为问题出在某个地方。当我尝试稍后在 x=0 处绘制一个点时,
var line = draw.line(0, 0, 100, 100).stroke({ width: 1 })
解决方案
那么你的 viewBox 是“0 0 100 100”。那是一个正方形的形状。但它的容器似乎是一个长方形。那么你的绘图应该如何显示呢?
默认情况下,如果您指定 viewBox,则保留纵横比(正方形),这意味着您在长方形中看到整个绘图区域仍然是正方形,这样长方形的最小边就是正方形的大小,因此存在间隙在最长边的两侧。
如果您不希望这样,可以通过设置preserveAspectRatio 属性来选择各种替代方案。
推荐阅读
- c# - 选项卡式页面未显示,但我收到 0 个错误
- kubernetes - Traefik v2 IngressRoute CRD 到非 docker 服务
- keras - 无论如何使用带有 KerasRegressor 包装器的 fit_generator() 方法?
- java - 无法解析 com.google.firebase:firebase-bom:[15.0.0, 16.0.0)
- python - 在 Pandas 中,如何用最接近的非 nan 值替换零值?
- c - leetcode 560. 子数组和等于 K
- javascript - 如何将比特币的价格从 API 发布到 HTML?
- javascript - 在 iPhone 上的 textarea 和输入字段中看不到输入的文本
- python-2.7 - Maximo:获取折线资产的中点
- vb.net - VB.NET:新用户登录时如何重新加载表单?