草庐IT

mermaid-svg-u

全部标签

javascript - 在 A4 svg 绘图中绘制 1 像素笔画宽度图形

我目前正在尝试用svg画一些图形,纸张尺寸为A4,1个逻辑单元代表1mm。所以我将视口(viewport)设置为297mmx210mm,viewbox为297x210。现在的问题是我画的图stroke-width不再是1个像素。例如,即使我将其stroke-width设置为“1px”,上面的这3行也具有完全相同的线宽。在这种设置下是否仍然可以绘制1像素宽的线? 最佳答案 试试这个:vector-effect="non-scaling-stroke"是SVG1.2Tiny的一项功能,它强制笔划宽度完全符合您的指定,无论缩放或单位转换是

javascript - 从 javascript 编辑 SVG 样式

我有一张SVG世界地图,我想通过更改svg中每个区域的样式属性,按各种指标实时为每个区域着色。例如,我想将英国染成蓝色。这需要是动态的,因为数据经常变化并被推送到浏览器。 最佳答案 您可以将CSS样式应用于SVG元素。不用说,这需要合适的标记。因此,例如,如果您的map看起来像(非常简化:-)......您可以简单地执行以下操作:varcountry=document.getElementById("UK");country.setAttribute("style","fill:blue;stroke:black");当然也可以将样

javascript - 路径上特定点上的 SVG 标记中间

我得到了一些在Canvas上生成路径的代码。路径对象看起来与此类似:在View中(a,b,c字母只是为了说明问题):我的问题是我想在线的中间画一些箭头(标记),在“a”到“b”之间,但是当我创建一个标记并执行标记中间属性时,它会在b点生成。我试图在a和b之间做一些点,但是marker-mid在那里和b点上做了箭头。来自WEBAPI文档:Themarker-middefinesthearrowheadorpolymarkerthatshallbedrawnateveryvertexotherthanthefirstandlastvertexofthegivenelementorbasic

javascript - 你将如何创建一个 JQuery/svg 单击拖动选择轮廓效果?

不确定确切地调用它是什么,但我正在寻找一种方法来通过javascript/svg创建虚线轮廓/选择框效果,当您单击并拖动到一个区域上时,然后在mouseUp上消失(可能是如果不是原始部件,则添加)。如果有jQuery库就好了。我环顾四周,但没有找到我要找的东西。我想理论应该是从第一次点击开始获取坐标,跟踪鼠标坐标时刻并相应地调整框。但不从头开始编写它会很好。 最佳答案 这是我专为您制作的演示:)演示(静态):http://jsfiddle.net/HNH2f/1/演示(动画):http://jsfiddle.net/HNH2f/2/

javascript - 从浏览器中仅打印 SVG

我正在开发一个网页,该网页将根据用户交互动态呈现SVG图形。完成后,我希望用户能够只打印图形-而不是简单地打印他们所在的网页和SVG,而只是打印SVG。此外,理想情况下,打印版本的绘制方式与屏幕浏览器版本略有不同。当前的浏览器和SVG可以实现这种事情吗?在Java中,我可以为我的应用程序绘图例程提供绘图引擎或打印引擎,这可以简单地处理相同的问题。然而,我是SVG的新手,我无法确定是否存在某种类似的机制。 最佳答案 您可以使用jQuery。假设您的svg位于网页的DIV(svgDiv)中,包含一个调用以下内容的打印按钮,其中根svg具

javascript - SVG/VML 浏览器兼容性表

我有兴趣找到一个浏览器兼容性表,该表列出了每个版本的Opera、Safari、Chrome、Firefox和InternetExplorer(Konqueror也不错)支持的SVG/VML部分,与Quirksmode类似。.我找到了以下两个SVG兼容性表,但它们都没有提供足够的详细信息:http://caniuse.com/#cats=SVG&statuses=rechttp://www.codedread.com/svg-support.php第一个链接中的信息似乎与Raphael等库冲突它声称完全支持Firefox3.0+和Safari3.0+中的动画,而链接表明动画模块直到这两个

javascript - Chrome 在简单地添加和删除 SVG 元素时会泄漏内存

继续这个问题:Taskmanagershowsmemoryleak,butHeapsnapshotdoesn't我设法创建了一个非常简单的例子来说明这个漏洞,这里是完整的源代码:svgtestvarsvg;varinterval;varsvg;window.onload=function(){createSVG();start();}functionstart(){interval=setInterval(createElements,100);}functioncreateSVG(){vardiv=document.getElementById("svgdiv");div.inner

javascript - 使用 SVG 和 d3.js 创建滚动条

现在我已经使用d3创建了几个“框”,它们只是带有文本的SVG矩形:varcanvas=d3.select("body").append("svg").attr("width",800).attr("height",500);//specifiesdrawingareaforeachboxvarboxes=canvas.selectAll("rect").data(classData).enter();boxes.append("rect").attr("width",boxWidth).attr("height",boxHeight).attr("fill",boxColor).att

javascript - 使用基于 JavaScript 的 SVG 库在表头内垂直文本

我将jqGrid与许多包含bool信息的列一起使用,这些信息在表格内显示为复选框(参见http://www.ok-soft-gmbh.com/VerticalHeaders/TestFixedO.htm作为示例)。为了更紧凑地显示信息,我使用垂直列标题。它工作得很好,在所有浏览器的jqGrid中工作(请参阅我在jqGrid论坛中与TonyTomov的讨论http://www.trirand.com/blog/?page_id=393/feature-request/headers-with-vertical-orientation/),但在IE中垂直文本模糊并且看起来不够好(在IE中打

javascript - Chrome 不会在 SVG 中缓存图像

我刚刚发现,如果SVG中的cache-controlheader设置为no-cache,Chrome不会缓存放置在SVG中的图像。Firefox和IE10似乎忽略了这个设置。我创建了一个带有静态SVG的小测试页:HTML:Javascript:$(document).ready(function(){varcurXPos=80;//Localtestfunctionwhichrepresentsomeservercallsinmy"reallife"scenario//Justupdatesthex-positioninthetransformmatrixinthistestcasef