嵌入带有参数的 svg 对象

发布于 2024-12-04 18:55:51 字数 982 浏览 1 评论 0原文

谁有想法或提示

我想在die svg标签中嵌入一个svg对象并更改此参数

HTML/SVG(不进行)

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
   <title>Test</title>   
</head>
<body>
<svg width="2000" height="2000">
       <object type="image/svg+xml" data="lamp.svg" style="width: 450px; height:150px;">
          <param name="color" value="yellow" />
       </object>
</svg>
</body>
</html>

SVG文件lamp.svg:

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="40" height="40">
<title>lamp</title>
  <circle cx="30" cy="30" r="15" fill="param(color)" stroke-width=""/>
</svg>

使用IMAGE标签,无法传递标签参数。

<image x="0" y="0" width="20" height="20" xlink:href="lamp.svg"><param name="color" value="yellow" /></image>

Who has an idea or a hint

I would like to embed a svg object inside die svg Tag and change this parameter

HTML/SVG (not going on)

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
   <title>Test</title>   
</head>
<body>
<svg width="2000" height="2000">
       <object type="image/svg+xml" data="lamp.svg" style="width: 450px; height:150px;">
          <param name="color" value="yellow" />
       </object>
</svg>
</body>
</html>

SVG File lamp.svg:

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="40" height="40">
<title>lamp</title>
  <circle cx="30" cy="30" r="15" fill="param(color)" stroke-width=""/>
</svg>

With the IMAGE TAG no tag parameter passing is possible.

<image x="0" y="0" width="20" height="20" xlink:href="lamp.svg"><param name="color" value="yellow" /></image>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

甜警司 2024-12-11 18:55:51

目前浏览器不支持以这种方式传递参数,尽管有一个 SVG 参数规范< /a> 由 W3C 开发。规范中的示例使用脚本来模拟支持对于该功能。

注意:垫片 param.js 位于SVG 文件,而不是 html 文件:

例如,

<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink"
width="68" height="68">
<rect x="10" y="10" height="48" width="48" stroke="black" stroke-width="1" fill="param(color) red">
</rect>
<rect x="29" y="0" height="10" width="10" fill="black"></rect>
<text x="24" y="46" fill="param(text) black" style="font-size:32px;"
  content-value="param(number) 1">1</text>

<script type="text/ecmascript" xlink:href="param.js" /> 

</svg>

Currently browsers don't support passing parameters this way, though there's an SVG Parameters spec being developed by W3C. The examples in the spec use a script to emulate support for the feature.

Note: the shim param.js goes in the SVG file, not the html file:

e.g.,

<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink"
width="68" height="68">
<rect x="10" y="10" height="48" width="48" stroke="black" stroke-width="1" fill="param(color) red">
</rect>
<rect x="29" y="0" height="10" width="10" fill="black"></rect>
<text x="24" y="46" fill="param(text) black" style="font-size:32px;"
  content-value="param(number) 1">1</text>

<script type="text/ecmascript" xlink:href="param.js" /> 

</svg>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文