OOXML入门学习
进入-飞入
<par>
<!-- 这是一个并行动画序列的开始。"par"代表并行,意味着在这个标签内的所有动画将同时开始。 --><cTn id="5" presetID="2" presetClass="entr" presetSubtype="4" fill="hold" grpId="0" nodeType="clickEffect"><!-- 这是一个动画节点。这个节点的id是5,预设ID是2,预设类别是"entr"(入场),预设子类型是4,填充类型是"hold"(保持),组ID是0,节点类型是"clickEffect"(点击效果)。 --><stCondLst><!-- 这是开始条件列表的开始。这个列表定义了动画开始的条件。 --><cond delay="0" /><!-- 这是一个开始条件。这个条件表示动画将在延迟0毫秒后开始。 --></stCondLst><set><!-- 这是一个设置动画的开始。设置动画用于改变一个对象的属性。 --><cBhvr><!-- 这是一个公共行为的开始。"cBhvr"代表"common Behavior",是所有行为的基类。 --><cTn id="6" dur="1" fill="hold"><!-- 这是一个动画节点。这个节点的id是6,持续时间是1毫秒,填充类型是"hold"(保持)。 --><stCondLst><!-- 这是开始条件列表的开始。这个列表定义了动画开始的条件。 --><cond delay="0" /><!-- 这是一个开始条件。这个条件表示动画将在延迟0毫秒后开始。 --></stCondLst><!-- 这是开始条件列表的结束。 --></cTn><!-- 这是动画节点的结束。 --><tgtEl><!-- 这是目标元素的开始。这个元素定义了动画将应用于哪个对象。--><spTgt spid="4" /><!-- 这是一个形状目标。这个目标表示动画将应用于id为4的形状。 --></tgtEl><!-- 这是目标元素的结束。 --><attrNameLst><!-- 这是属性名称列表的开始。这个列表定义了将被改变的属性。 --><attrName>style.visibility</attrName><!-- 这是一个属性名称。这个名称表示将被改变的属性是"style.visibility"。 --></attrNameLst><!-- 这是属性名称列表的结束。 --></cBhvr><!-- 这是公共行为的结束。 --><to><strVal val="visible" /><!--这是动画的目标值。这个值表示"style.visibility"属性将被设置为"visible"。 --></to><!-- 是设置动画的结束。 --></set><anim calcmode="lin" valueType="num"><!-- 这是一个动画的开始。"calcmode"属性设置为"lin"表示这是一个线性动画,"valueType"属性设置为"num"表示动画的值是数字类型。 --><cBhvr additive="base"><!-- 这是一个公共行为的开始。"additive"属性设置为"base"表示这个动画将添加到基础值上。 --><cTn id="7" dur="500" fill="hold" /><!-- 这是一个动画节点。这个节点的id是7,持续时间是500毫秒,填充类型是"hold"(保持)。 --><tgtEl><!-- 这是目标元素的开始。这个元素定义了动画将应用于哪个对象。 --><spTgt spid="4" /><!-- 这是一个形状目标。这个目标表示动画将应用于id为4的形状。 --></tgtEl><!-- 这是目标元素的结束。 --><attrNameLst><!-- 这是属性名称列表的开始。这个列表定义了将被改变的属性。 --><attrName>ppt_x</attrName><!-- 这是一个属性名称。这个名称表示将被改变的属性是"ppt_x"。 --></attrNameLst><!-- 这是属性名称列表的结束。 --></cBhvr><!-- 这是公共行为的结束。 --><tavLst><!-- 是时间值列表的开始。这个列表定义了动画的关键帧。 --><tav tm="0"><val><strVal val="#ppt_x" /></val></tav><!-- 这是一个时间值。这个值表示在动画开始时(时间为0),"ppt_x"属性的值是"#ppt_x"。 --><tav tm="100000"><val><strVal val="#ppt_x" /></val></tav><!-- 这是一个时间值。这个值表示在动画结束时(时间为100000毫秒),"ppt_x"属性的值仍然是"#ppt_x"。 --></tavLst><!-- 这是时间值列表的结束。 --></anim><!-- 这是动画的结束。 --><anim calcmode="lin" valueType="num"><!-- 这是一个动画的开始。"calcmode"属性设置为"lin"表示这是一个线性动画,"valueType"属性设置为"num"表示动画的值是数字类型。 --><cBhvr additive="base"><!-- 这是一个公共行为的开始。"additive"属性设置为"base"表示这个动画将添加到基础值上。 --><cTn id="8" dur="500" fill="hold" /><!-- 这是一个动画节点。这个节点的id是8,持续时间是500毫秒,填充类型是"hold"(保持)。 --><tgtEl><!-- 这是目标元素的开始。这个元素定义了动画将应用于哪个对象。 --><spTgt spid="4" /><!-- 这是一个形状目标。这个目标表示动画将应用于id为4的形状。 --></tgtEl><!-- 这是目标元素的结束。 --><attrNameLst><!-- 这是属性名称列表的开始。这个列表定义了将被改变的属性。 --><attrName>ppt_y</attrName><!-- 这是一个属性名称。这个名称表示将被改变的属性是"ppt_y"。 --></attrNameLst><!-- 这是属性名称列表的结束。 --></cBhvr><!-- 这是公共行为的结束。 --><tavLst><!-- 这是时间值列表的开始。这个列表定义了动画的关键帧。 --><tav tm="0"><val><strVal val="1+#ppt_h/2" /></val></tav><!-- 这是一个时间值。这个值表示在动画开始时(时间为0),"ppt_y"属性的值是"1+#ppt_h/2"。这可能是一个计算表达式,表示"ppt_y"属性的初始值是1加上形状高度的一半。 --><tav tm="100000"><val><strVal val="#ppt_y" /></val></tav><!-- 这是一个时间值。这个值表示在动画结束时(时间为100000毫秒),"ppt_y"属性的值是"#ppt_y"。这可能是一个引用,表示"ppt_y"属性的结束值是它的当前值。 --></tavLst><!-- 这是时间值列表的结束。 --></anim><!-- 这是动画的结束。 --></cTn>
</par>
强调-放大/缩小
<par><!-- 这是一个动画序列的开始。"par"代表并行,意味着在这个标签内的所有动画将同时开始。 --><cTn id="10" presetID="6" presetClass="emph" presetSubtype="0" fill="hold" grpId="0" nodeType="afterEffect"><!-- 这是一个动画节点。"cTn"代表"common Time Node",是所有时间节点的基类。这个节点的id是10,预设ID是6,预设类别是"emph"(强调),预设子类型是0,填充类型是"hold"(保持),组ID是0,节点类型是"afterEffect"(后效果)。 --><stCondLst><!-- 这是开始条件列表的开始。这个列表定义了动画开始的条件。 --><cond delay="0" /><!-- 这是一个开始条件。这个条件表示动画将在延迟0毫秒后开始。 --></stCondLst><!-- 这是开始条件列表的结束。 --><childTnLst><!-- 这是子时间节点列表的开始。这个列表包含了所有的子动画。 --><animScale><!-- 这是一个缩放动画的开始。 --><cBhvr><!-- 这是一个公共行为的开始。"cBhvr"代表"common Behavior",是所有行为的基类。 --><cTn id="11" dur="2000" fill="hold" /><!-- 这是另一个动画节点。这个节点的id是11,持续时间是2000毫秒,填充类型是"hold"(保持)。 --><tgtEl><!-- 这是目标元素的开始。这个元素定义了动画将应用于哪个对象。 --><spTgt spid="2" /><!-- 这是一个形状目标。这个目标表示动画将应用于id为2的形状。 --></tgtEl><!-- 这是目标元素的结束。 --></cBhvr><!-- 这是公共行为的结束。 --><by x="150000" y="150000" /><!-- 这是动画的参数。这个参数表示形状将在x轴和y轴上分别缩放150000。 --></animScale><!-- 这是缩放动画的结束。 --></childTnLst><!-- 这是子时间节点列表的结束。 --></cTn><!-- 这是动画节点的结束。 -->
</par>
<!-- 这是动画序列的结束。 -->
动作路径-直线
<par>
<!-- 这是一个并行时间容器的开始。并行时间容器中的所有子元素将同时开始。 --><cTn id="13" presetID="50" presetClass="path" presetSubtype="0" accel="50000" decel="50000" fill="hold" grpId="1" nodeType="afterEffect"><!-- 这是一个动画节点。这个节点的id是13,预设ID是50,预设类是"path",预设子类型是0,加速度是50000,减速度是50000,填充类型是"hold",组ID是1,节点类型是"afterEffect"。 --><stCondLst><!-- 这是开始条件列表的开始。这个列表定义了动画开始的条件。 --><cond delay="0" /><!-- 这是一个开始条件。这个条件表示动画将在延迟0毫秒后开始。 --></stCondLst><childTnLst><!-- 这是子节点列表的开始。这个列表定义了动画节点的子节点。 --><animMotion origin="layout" path="M 6.25E-7 1.11111E-6 L 0.125 1.11111E-6 C 0.18099 1.11111E-6 0.25 0.06898 0.25 0.125 L 0.25 0.25 " pathEditMode="relative" rAng="0" ptsTypes="AAAA"><!-- 这是一个动画运动的开始。"origin"属性设置为"layout"表示动画的原点是布局,"path"属性定义了动画的路径,"pathEditMode"属性设置为"relative"表示路径是相对的,"rAng"属性设置为0表示旋转角度是0。 --><cBhvr><!-- 这是一个公共行为的开始。 --><cTn id="14" dur="2000" fill="hold" /><!-- 这是一个动画节点。这个节点的id是14,持续时间是2000毫秒,填充类型是"hold"。 --><tgtEl><!-- 这是目标元素的开始。这个元素定义了动画将应用于哪个对象。 --><spTgt spid="2" /><!-- 这是一个形状目标。这个目标表示动画将应用于id为2的形状。 --></tgtEl><attrNameLst><!-- 这是属性名称列表的开始。这个列表定义了将被改变的属性。 --><attrName>ppt_x</attrName><attrName>ppt_y</attrName><!-- 这是属性名称。这些名称表示将被改变的属性是"ppt_x"和"ppt_y"。 --></attrNameLst><!-- 这是属性名称列表的结束 --></cBhvr><!-- </cBhvr>: --><rCtr x="12500" y="12500" /><!-- 这是旋转中心的设置。这个设置表示旋转中心的x坐标和y坐标都是12500。 --></animMotion><!-- 这是动画运动的结束。 --></childTnLst><!-- 这是子节点列表的结束。 --></cTn><!-- 这是动画节点的结束。 -->
</par>
<!-- 这是并行时间容器的结束。 -->
<!-- 总的来说,这段代码描述了一个并行动画,这个动画将在延迟0毫秒后开始,将id为2的形状沿着一个预设的路径移动,并改变"ppt_x"和"ppt_y"属性的值。 -->
相关文章:
OOXML入门学习
进入-飞入 <par> <!-- 这是一个并行动画序列的开始。"par"代表并行,意味着在这个标签内的所有动画将同时开始。 --><cTn id"5" presetID"2" presetClass"entr" presetSubtype"4" fill"hold&…...
k8s集群node节点加入失败
出现这种情况: [preflight] FYI: You can look at this config file with kubectl -n kube-system get cm kubeadm-config -o yaml [kubelet-start] Writing kubelet configuration to file "/var/lib/kubelet/config.yaml" [kubelet-start] Writing kub…...
layui+jsp项目中实现table单元格嵌入下拉选择框功能,下拉选择框可手动输入内容或选择默认值,修改后数据正常回显。
需求 table列表中的数据实现下拉框修改数据,当默认的下拉框不符合要求时,可手动输入内容保存。内容修改后表格显示修改后的值同时表格不刷新。 实现 layui框架下拉框组件只能选择存在的数据,不支持将输入的内容显示在input中的功能&#x…...
2024年客户体验的几个预测
数字化转型、以客户为中心的理念、数字技术的发展和产品的不断创新,都为客户体验带来了巨大的改变。 目前,我们看到很多公司都在致力于塑造一种以客户为中心的商业模式。企业开始用更多技术、更多数据和更多产品来强化自己在客户体验方面的能力。 那么&a…...
【C++】动态内存管理new和delete
文章目录 一、C的内存管理方式二、new和delete的用法1.操作内置类型2.操作自定义内置类型 三、new和delete的底层实现1.operator new和operator delete函数2.new和delete的实现原理 四、定位new表达式五、malloc/free和new/delete的区别 一、C的内存管理方式 之前在C语言的动态…...
Java面向对象特性
Java继承: 继承的概念: 在Java中,继承(inheritance)是面向对象编程的一个重要概念,它允许一个类(子类)继承另一个类(父类)的属性和方法。通过继承,…...
odoo17 tree视图添加按钮
需求描述 点击下图中tree视图上的同步退货单按钮,弹出相应的form视图进行退货单同步,然后点击同步按钮调用后端python代码处理。 实现步骤 主要文件目录结构 js文件的创建 /** @odoo-module **/ import {registry } from "@web/core/registry"; import {listVie…...
PreparedStatement 与Statement 的区别,以及为什么推荐使用 PreparedStatement ?
在Java中,PreparedStatement和Statement都是用于执行SQL语句的重要接口,但它们在功能、安全性和性能上有着显著的差异。理解这些差异对于编写高效且安全的数据库应用程序至关重要。 Statement:基本的SQL执行者 首先,让我们从Sta…...
wsl ubuntu 安装Anaconda3步骤
如何在Ubuntu上安装Anaconda3呢?本章记录整个安装过程。 1、下载脚本 https://mirrors.bfsu.edu.cn/anaconda/archive/Anaconda3-2023.09-0-Linux-x86_64.sh 下载之后,将脚本上传到Ubuntu里。 2、安装脚本 bash Anaconda3-2021.11-Linux-x86_64.sh根据提示进行安装,提示输…...
Vue3响应式 ref全家桶
<template><div>{{ man.name }}<hr><button click"change">修改</button></div> </template> <script setup lang"ts"> const man {name:"cc"} const change () >{man.name "大cc&q…...
Mac(M1芯片)安装多个jdk,Mac卸载jdk
1.jdk下载 oracle官方链接:oracle官方下载链接 2.安装 直接下一步,下一步就行 3.查看是否安装成功 出现下图内容表示安装成功。 4.配置环境变量 open -e .bash_profile 路径建议复制过去 #刷新环境变量 source ~/.bash_profile 5.切换方法 6.jdk…...
Warning message:package ‘ggplot2’ is not available (for R version 3.2.3)
install.packages(ggplot2) Installing package into ‘/usr/local/lib/R/site-library’ (as ‘lib’ is unspecified) Warning message: package ‘ggplot2’ is not available (for R version 3.2.3) 根据你提供的信息,警告消息表明在你的R版本(3.2.3…...
Spring Boot 过滤器和拦截器详解
目录 Spring Boot 过滤器1.什么是过滤器2.工作机制3.实现过滤器 Spring Boot 拦截器1. 什么是拦截器2. 工作原理3.实现4.拓展(MethodInterceptor 拦截器)实现 过滤器和拦截器区别过滤器和拦截器应用场景过滤器拦截器 Spring Boot 过滤器 1.什么是过滤器 …...
Eureka介绍与使用
Eureka是一个开源的服务发现框架,由Netflix开发并在2015年成为Apache的顶级项目。Eureka的核心功能是服务注册与发现,它允许微服务应用在启动时将自己注册到Eureka服务器,并能通过Eureka服务器来发现其他已注册的服务。 使用Eureka有以下几个…...
JVM专题九:JVM分代知识点梳理
今天开始,咱们开始剖析JVM内存划分的原理细节,以及我们创建的那些对象在JVM中到底是如何分配,如何流动的,首先解决第一个问题:JVM内存的一个分代模型:年轻代、老年代、永久通过之前的专题我们知道,那就是我…...
wireshark常用过滤命令
wireshark常用过滤命令 wireshark抓包介绍单机单点:单机多点:双机并行: wireshark界面认识默认布局调整布局(常用)显示FCS错误 wireshark常见列Time回包数据报对应网络模型 wireshark基本操作结束抓包再次开始抓包 **wireshark常用过滤命令**…...
「全新升级,性能更强大——ONLYOFFICE 桌面编辑器 8.1 深度评测」
文章目录 一、背景二、界面设计与用户体验三、主要新功能亮点3.1 高效协作处理3.2 共同编辑,毫无压力3.3 批注与提及3.4 追踪更改3.5 比较与合并3.6 管理版本历史 四、性能表现4.1 集成 AI 工具4.2 插件强化 五、用户反馈与使用案例 一、背景 Ascensio System SIA -…...
线程版服务器实现(pthread_server)
用到的所有方法所需要的参数可以在wrap.c文件中查询,wrap中找不到的直接通过man手册查询 1.首先介绍一下我自己写的包裹文件,里面有各种在可能要用到的方法 wrap.c: #include <stdlib.h> #include <stdio.h> #include <unistd.h> #…...
js异常处理方案
文章目录 异常处理方案同步代码的异常处理Promise 的异常处理async await 的异常处理 感谢阅读,觉得有帮助可以点点关注点点赞,谢谢! 异常处理方案 在JS开发中,处理异常包括两步:先抛出异常,然后捕获异常。…...
C++文件路径处理2 - 路径拼接路径解析
1. 关键词2. filesystem.h3. filepath.cpp6. 测试代码7. 运行结果8. 源码地址 1. 关键词 关键词: C 文件路径处理 路径拼接 获取父目录的路径 获取文件名 获取拓展名 跨平台 应用场景: 路径的拼接路径的解析 2. filesystem.h #pragma once#include…...
数据结构5---矩阵和广义表
一、矩阵的压缩存储 特殊矩阵:矩阵中很多值相同的元素并且它们的分布有一定的规律。 稀疏矩阵:矩阵中有很多零元素。压缩存储的基本思想是: (1)为多个值相同的元素只分配一个存储空间; (2)对零元素不分配存储空间。 1、特殊矩阵的压缩存储 (1)对称矩…...
jquery使用infinitescroll无线滚动+自定义翻页
jquery版本 jquery-1.8.3.js infinitescroll版本 2.0.0 如果infinitescroll版本最新的jquery版本也要用新的 接口用nodejs jquery.infinitescroll.js官网地址 前端代码《接口返回JSON数据》 <!DOCTYPE html> <html lang"en"> <head><meta cha…...
【漏洞复现】锐捷统一上网行为管理与审计系统——远程命令执行漏洞
声明:本文档或演示材料仅供教育和教学目的使用,任何个人或组织使用本文档中的信息进行非法活动,均与本文档的作者或发布者无关。 文章目录 漏洞描述漏洞复现测试工具 漏洞描述 锐捷统一上网行为管理与审计系统naborTable/static_convert.php…...
通义灵码上线 Visual Studio 插件市场啦!
通义灵码,是阿里云出品的一款基于通义大模型的智能编码辅助工具,提供行级/函数级实时续写、自然语言生成代码、单元测试生成、代码优化、注释生成、代码解释、研发智能问答、异常报错排查等能力,提供代码智能生成、研发智能问答能力。 通义灵…...
GESP 四级急救包(2):客观题真题集
客观题真题集 一、选择题1. 真题梳理2. 真题答案3. 重难点点播(1) 指针和地址(2) 时间复杂度 二、判断题1. 真题梳理2. 真题答案 一、选择题 1. 真题梳理 若函数声明为 void f(int &a, int b, const int &c),且在主函数内已经声明了 x , y , z x,y,z x,y,…...
VERYCLOUD睿鸿股份确认参展2024年ChinaJoy BTOB商务洽谈馆,期待与你相聚
作为在全球数字娱乐领域兼具知名度与影响力的年度盛会,2024年第二十一届ChinaJoy将于7月26日至7月29日在上海新国际博览中心盛大召开,本届展会主题为:初心“游”在,精彩无限!(Stay True, Game On.ÿ…...
Java面试题:讨论Spring框架的核心组件,如IoC容器、AOP、事务管理等
Spring框架是一个功能强大且灵活的Java企业级应用开发框架,其核心组件包括以下几个主要部分: 1. IoC容器(Inversion of Control Container) IoC容器是Spring框架的核心部分,用于管理应用程序的依赖注入(D…...
【方案】基于5G智慧工业园区解决方案(PPT原件)
5G智慧工业园区整体解决方案旨在通过集成5G通信技术、物联网、大数据和云计算等先进技术,实现园区的智能化、高效化和绿色化。 该方案首先构建高速、稳定的5G网络,确保园区内设备、人员与物流的实时连接和高效沟通。其次,通过工业物联网技术&…...
使用System.currentTimeMillis获取当前时间
使用System.currentTimeMillis获取当前时间 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们来探讨Java中如何使用System.currentTimeMillis()方法来获取…...
手机远程控制另一台手机的全新使用教程(安卓版)
看完这篇文章,你可以了解到安卓手机如何远程控制安卓手机,以及苹果手机如何远程控制安卓手机。 如果想要用安卓手机远程管控苹果手机,或者苹果手机远程管控另一台苹果手机,请点击查看视频《手机远程管控另一台手机的全新使用教程…...
属于网站开发工具的是/如何做好一个营销方案
传送门 好题啊。 考虑前面的32分,直接维护后缀trietrietrie树就行了。 如果#号不在字符串首? 只需要维护第一个#前面的字符串和最后一个#后面的字符串。 分开用两棵trie树并且维护第一棵树上当前点到根的路径上的所有点在第二棵树上的对应点。 于是支持对…...
做五金出口在哪个网站好点/个人免费域名注册网站
自学编程,看书还是视频? 01、书,有什么好处呢? 前提条件先说一下,烂书除外。 第一,书籍比较全面,系统化,可以针对一个技术点、一门语言,循序渐进,深度挖掘…...
广西建设工会网站/防恶意竞价点击软件
阿里云服务器 发送邮箱 STMP 25端口 465端口问题 PHPMailer是一个用于发送电子邮件的PHP函数包。它提供的功能包括: *.在发送邮时指定多个收件人,抄送地址,暗送地址和回复地址*.支持多种邮件编码包括:8bit,base64&…...
创意设计字体/seo团队
🍒 作者简介:大学机械本科,野生程序猿,学过C语言,玩过前端,还鼓捣过嵌入式,设计也会一点点,不过如今痴迷于网络爬虫,因此现深耕Python、数据库、seienium、JS逆向、安卓逆…...
wordpress复制按钮插件/b2b平台有哪些网站
打算从今天开始学java啊,待会滚去找资料了。现在谈一下学习java阶段性的理解。由于现在对java真的啥也不知道啊,不过还是要瞎鸡儿写点自己的看法,以下看法应该也使适用于其它语言: 第一阶段,入门级,初步地总…...
网站建设步骤电脑/网站设计培训
中国电信、中国移动、中国联通于2020年4月8日,首次提出“5G消息”的概念。作为传统短信业务的升级,5G消息具有以下特点和优势。业务功能丰富。5G消息复用短彩信入口,兼容短彩信服务的同时,突破了传统短信对信息长度和内容格式的限…...