svg基础(四)模式(<pattern>)点阵图,棋盘图,网格图,坐标图

<pattern>

1 定义

<pattern>标签用于定义以重复平铺方式填充对象的图形

2 语法

<patternpatternUnits="units to define x,y, width and height attributes."patternContentUnits="units to define co-ordinate system of contents of pattern"patternTransform="definition of an additional transformation from the pattern coordinate system onto the target coordinate system"x="x-axis co-ordinate"y="y-axis co-ordinate"width="length"height="length"preserveAspectRatio="to preserve width/height ratio of original content"xlink:href="reference to another pattern">
</pattern>
属性解释
patternUnits用来定义图案效果区域的单位。 它为模式内的各种长度值以及定义模式子区域的属性指定坐标系。 如果patternUnits =“userSpaceOnUse”,则值表示使用'pattern'元素时当前用户坐标系中的值。 如果patternUnits =“objectBoundingBox”,则值表示在使用'pattern'元素时就地引用元素上的边界框的分数或百分比的值。 默认是userSpaceOnUse
patternContentUnits用来定义模式内容区域的单位。 它为模式内的各种长度值以及定义模式子区域的属性指定坐标系。 如果patternContentUnits =“userSpaceOnUse”,则值表示使用'pattern'元素时当前用户坐标系中的值。 如果patternContentUnits =“objectBoundingBox”,则值表示在使用'pattern'元素时就地引用元素上的边界框的分数或百分比值。 默认是userSpaceOnUse
x模式边界框的x轴坐标。 默认值是0
y模式边界框的y轴坐标。 默认值是0
width模式边界框的宽度。 默认值是0
height图案边界框的高度。 默认值是0
preserveAspectRatio以保留原始内容的宽高比。
xlink:href用于指另一种模式。。

3 示例

3.1 点阵图
 <svg width="390" height="390"><defs><pattern id="rect" patternUnits="userSpaceOnUse" width="60" height="60"><rect width="30" height="30" fill="black" x="30" y="30"></rect></pattern></defs><rectid="canvas"width="390"height="390"stroke="#aaa"fill="url(#rect)"/></svg>

在这里插入图片描述

3.2 棋盘图
 <svg width="390" height="390"><defs><pattern id="rect" patternUnits="userSpaceOnUse" width="60" height="60"><rect width="30" height="30" fill="skyblue" x="0" y="0"></rect><rect width="30" height="30" fill="skyblue" x="30" y="30"></rect></pattern></defs><rectid="canvas"width="100%"height="100%"stroke="#aaa"fill="url(#rect)"/></svg>

在这里插入图片描述

3.3 网格图
    <svg width="396" height="396"><defs><pattern id="rect" patternUnits="userSpaceOnUse" width="11" height="11"><rect width="10" height="10" fill="skyblue" x="0" y="0"></rect></pattern></defs><rectid="canvas"width="100%"height="100%"stroke="#aaa"fill="url(#rect)"/></svg>

在这里插入图片描述

3.4 坐标图(pattern两层嵌套)
<svgclass="grid"width="301"height="301"xmlns="http://www.w3.org/2000/svg"><defs><patternid="smallGrid"width="5"height="5"patternUnits="userSpaceOnUse"><pathd="M 5 0 L 0 0 0 5"fill="none"stroke="rgba(207, 207, 207, 0.3)"stroke-width="1"></path></pattern><pattern id="grid" width="20" height="20" patternUnits="userSpaceOnUse"><rect width="20" height="20" fill="url(#smallGrid)"></rect><pathd="M 20 0 L 0 0 0 20"fill="none"stroke="rgba(186, 186, 186, 0.5)"stroke-width="1"></path></pattern></defs><rect width="100%" height="100%" fill="url(#grid)"></rect></svg>

在这里插入图片描述

上面的图形,在smallGrid最小方格的有边框和下边框均有重叠,以下是更为严谨的写法(grid方格主要就是为了描边,所以重叠没问题)

 <svgclass="grid"width="301"height="301"xmlns="http://www.w3.org/2000/svg"><defs><patternid="smallGrid"width="5"height="5"patternUnits="userSpaceOnUse"><pathd="M 5 0 L 0 0 0 5"fill="none"stroke="rgba(0, 0, 0, 0.1)"stroke-width="1"></path></pattern><pattern id="grid" width="20" height="20" patternUnits="userSpaceOnUse"><rect width="100%" height="100%" fill="url(#smallGrid)"></rect><pathd="M 20 0 L 0 0 0 20"fill="none"stroke="rgba(0, 0, 0, 0.2)"stroke-width="1"></path></pattern></defs><rect width="100%" height="100%" fill="url(#grid)"></rect></svg>

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/459308.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

详述FlinkSql Join操作

FlinkSql 的 Join Flink 官网将其分为了 Joins 和 Window Joins两个大类&#xff0c;其中里面又分了很多 Join 方式 参考文档&#xff1a; Joins | Apache Flink Window JOIN | Apache Flink Joins 官网介绍共有6种方式&#xff1a; Regular Join&#xff1a;流与流的 Joi…

探索NLP中的N-grams:理解,应用与优化

简介 n-gram[1] 是文本文档中 n 个连续项目的集合&#xff0c;其中可能包括单词、数字、符号和标点符号。 N-gram 模型在许多与单词序列相关的文本分析应用中非常有用&#xff0c;例如情感分析、文本分类和文本生成。 N-gram 建模是用于将文本从非结构化格式转换为结构化格式的…

连杆的形状优化

前言 本示例使用优化模块在不改变连杆体积的情况下将连杆中的应力集中降至最低。 本页讨论 前言应用描述Abaqus建模方法和仿真技术文件参考 应用描述 此示例说明了连杆的形状优化。形状优化对曲面节点在设计区域中的位置进行轻微修改&#xff0c;以实现优化的解决方案。形状优…

K210开发板开箱介绍

一、正面有一个电容触摸屏 二、左上角是一个Type-C接口&#xff0c;可用来供电以及下载程序 三、右上角是一个三向的拨动开关&#xff0c;分别是向左、向右、向下三个通道 四、右侧这个是复位按键 五、这部分是wifi模块的一个串口以及按键 六、wifi模块在开发板的背面&#xff…

Linux文件和目录管理

目录基础 Linux操作系统以目录的方式来组织和管理系统中的所有文件。所谓的目录&#xff0c;就是将所有文件的说明信息采用树状结构组织起来。每个目录节点之下会有文件和子目录。 所有一切都从 ‘根’ 开始&#xff0c;用 ‘/’ 代表, 并且延伸到子目录。 bin&#xff1a;B…

Chrome 沙箱逃逸 -- Plaid CTF 2020 mojo

文章目录 前置知识参考文章环境搭建题目环境调试环境 题目分析附件分析漏洞分析OOBUAF 漏洞利用总结 前置知识 Mojo & Services 简介 chromium mojo 快速入门 Mojo docs Intro to Mojo & Services 译文&#xff1a;利用Mojo IPC的UAF漏洞实现Chrome浏览器沙箱逃逸原文…

ONLYOFFICE 文档开发者版 8.0:API和文档生成器更新

随着 8.0 版新功能的发布&#xff0c;我们更新了编辑器、文档生成器和插件的 API。请阅读本文了解详情。 PDF 支持 我们在 documentType 参数中添加了 pdf 文档这一类型。现在完全支持PDF文件*&#xff0c;包括含有可填写字段的文件&#xff0c;并且可以在ONLYOFFICE PDF 编辑…

网站被攻击有什么办法呢?

最近&#xff0c;德迅云安全遇到不少网站用户遇到攻击问题&#xff0c;来咨询安全解决方案。目前在所有的网络攻击方式中&#xff0c;DDoS是最常见&#xff0c;也是最高频的攻击方式之一。不少用户网站上线后&#xff0c;经常会遭受到攻击的困扰。有些攻击持续时间比较短影响较…

JavaScript页面生命周期:DOMContentLoaded,load,beforeunload,unload

&#x1f9d1;‍&#x1f393; 个人主页&#xff1a;《爱蹦跶的大A阿》 &#x1f525;当前正在更新专栏&#xff1a;《VUE》 、《JavaScript保姆级教程》、《krpano》、《krpano中文文档》 ​ ​ ✨ 前言 页面加载 是 web 开发中的一个重要概念&#xff0c;指的是浏览器加载…

【Nicn的刷题日常】之有序序列合并

1.题目描述 描述 输入两个升序排列的序列&#xff0c;将两个序列合并为一个有序序列并输出。 数据范围&#xff1a; 1≤&#xfffd;,&#xfffd;≤1000 1≤n,m≤1000 &#xff0c; 序列中的值满足 0≤&#xfffd;&#xfffd;&#xfffd;≤30000 0≤val≤30000 输入描述…

Oracle 面试题 | 17.精选Oracle高频面试题

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

【知识图谱+大模型的紧耦合新范式】Think-on-Graph:解决大模型在医疗、法律、金融等垂直领域的幻觉

Think-on-Graph&#xff1a;解决大模型在医疗、法律、金融等垂直领域的幻觉 Think-on-Graph 原理ToG 算法步骤&#xff1a;想想再查&#xff0c;查查再想实验结果 论文&#xff1a;https://arxiv.org/abs/2307.07697 代码&#xff1a;https://github.com/IDEA-FinAI/ToG Think…