Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用文本缩放svg以适应viewBox内部_Svg_Scale - Fatal编程技术网

使用文本缩放svg以适应viewBox内部

使用文本缩放svg以适应viewBox内部,svg,scale,Svg,Scale,很难知道文本需要什么尺寸,尤其是旋转时。因此,很容易使viewBox过小,然后文本在viewBox外消失。但是,如果viewBox太大,则会有大量额外的空白,这些空白也会被缩放。是否有办法缩放viewBox或svg内容以适应需要 我知道如何将viewBox缩放到svg的宽度和高度,但我想知道如何缩放以适应viewBox 更一般地说,如何确定文本的viewBox维度?简单的javascript方法是创建容器的属性并将其作为其viewBox属性应用 onclick=e=>{ const svg=d

很难知道文本需要什么尺寸,尤其是旋转时。因此,很容易使viewBox过小,然后文本在viewBox外消失。但是,如果viewBox太大,则会有大量额外的空白,这些空白也会被缩放。是否有办法缩放viewBox或svg内容以适应需要

我知道如何将viewBox缩放到svg的宽度和高度,但我想知道如何缩放以适应viewBox


更一般地说,如何确定文本的viewBox维度?

简单的javascript方法是创建容器的属性并将其作为其viewBox属性应用

onclick=e=>{
const svg=document.querySelector('svg');
const bbox=svg.getBBox();
setAttribute('viewBox',`${bbox.x}${bbox.y}${bbox.width}${bbox.height}`);
控制台日志(bbox);
};
svg{
边框:1px实心;
}
正文{
字体:16px“时代罗马”;
}

单击以进行调整

你是说动态?可以通过脚本来完成吗?您只是在寻找一种手动操作的通用方法吗?或者您正在寻找一些允许自动执行的标记?