当前位置: 首页 > news >正文

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"代表并行&#xff0c;意味着在这个标签内的所有动画将同时开始。 --><cTn id"5" presetID"2" presetClass"entr" presetSubtype"4" fill"hold&…...

k8s集群node节点加入失败

出现这种情况&#xff1a; [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列表中的数据实现下拉框修改数据&#xff0c;当默认的下拉框不符合要求时&#xff0c;可手动输入内容保存。内容修改后表格显示修改后的值同时表格不刷新。 实现 layui框架下拉框组件只能选择存在的数据&#xff0c;不支持将输入的内容显示在input中的功能&#x…...

2024年客户体验的几个预测

数字化转型、以客户为中心的理念、数字技术的发展和产品的不断创新&#xff0c;都为客户体验带来了巨大的改变。 目前&#xff0c;我们看到很多公司都在致力于塑造一种以客户为中心的商业模式。企业开始用更多技术、更多数据和更多产品来强化自己在客户体验方面的能力。 那么&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继承&#xff1a; 继承的概念&#xff1a; 在Java中&#xff0c;继承&#xff08;inheritance&#xff09;是面向对象编程的一个重要概念&#xff0c;它允许一个类&#xff08;子类&#xff09;继承另一个类&#xff08;父类&#xff09;的属性和方法。通过继承&#xff0c…...

odoo17 tree视图添加按钮

需求描述 点击下图中tree视图上的同步退货单按钮,弹出相应的form视图进行退货单同步,然后点击同步按钮调用后端python代码处理。 实现步骤 主要文件目录结构 js文件的创建 /** @odoo-module **/ import {registry } from "@web/core/registry"; import {listVie…...

PreparedStatement 与Statement 的区别,以及为什么推荐使用 PreparedStatement ?

在Java中&#xff0c;PreparedStatement和Statement都是用于执行SQL语句的重要接口&#xff0c;但它们在功能、安全性和性能上有着显著的差异。理解这些差异对于编写高效且安全的数据库应用程序至关重要。 Statement&#xff1a;基本的SQL执行者 首先&#xff0c;让我们从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官方链接&#xff1a;oracle官方下载链接 2.安装 直接下一步&#xff0c;下一步就行 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) 根据你提供的信息&#xff0c;警告消息表明在你的R版本&#xff08;3.2.3…...

Spring Boot 过滤器和拦截器详解

目录 Spring Boot 过滤器1.什么是过滤器2.工作机制3.实现过滤器 Spring Boot 拦截器1. 什么是拦截器2. 工作原理3.实现4.拓展&#xff08;MethodInterceptor 拦截器&#xff09;实现 过滤器和拦截器区别过滤器和拦截器应用场景过滤器拦截器 Spring Boot 过滤器 1.什么是过滤器 …...

Eureka介绍与使用

Eureka是一个开源的服务发现框架&#xff0c;由Netflix开发并在2015年成为Apache的顶级项目。Eureka的核心功能是服务注册与发现&#xff0c;它允许微服务应用在启动时将自己注册到Eureka服务器&#xff0c;并能通过Eureka服务器来发现其他已注册的服务。 使用Eureka有以下几个…...

JVM专题九:JVM分代知识点梳理

今天开始&#xff0c;咱们开始剖析JVM内存划分的原理细节&#xff0c;以及我们创建的那些对象在JVM中到底是如何分配&#xff0c;如何流动的&#xff0c;首先解决第一个问题&#xff1a;JVM内存的一个分代模型:年轻代、老年代、永久通过之前的专题我们知道&#xff0c;那就是我…...

wireshark常用过滤命令

wireshark常用过滤命令 wireshark抓包介绍单机单点&#xff1a;单机多点&#xff1a;双机并行&#xff1a; wireshark界面认识默认布局调整布局(常用)显示FCS错误 wireshark常见列Time回包数据报对应网络模型 wireshark基本操作结束抓包再次开始抓包 **wireshark常用过滤命令**…...

「全新升级,性能更强大——ONLYOFFICE 桌面编辑器 8.1 深度评测」

文章目录 一、背景二、界面设计与用户体验三、主要新功能亮点3.1 高效协作处理3.2 共同编辑&#xff0c;毫无压力3.3 批注与提及3.4 追踪更改3.5 比较与合并3.6 管理版本历史 四、性能表现4.1 集成 AI 工具4.2 插件强化 五、用户反馈与使用案例 一、背景 Ascensio System SIA -…...

线程版服务器实现(pthread_server)

用到的所有方法所需要的参数可以在wrap.c文件中查询&#xff0c;wrap中找不到的直接通过man手册查询 1.首先介绍一下我自己写的包裹文件&#xff0c;里面有各种在可能要用到的方法 wrap.c: #include <stdlib.h> #include <stdio.h> #include <unistd.h> #…...

js异常处理方案

文章目录 异常处理方案同步代码的异常处理Promise 的异常处理async await 的异常处理 感谢阅读&#xff0c;觉得有帮助可以点点关注点点赞&#xff0c;谢谢&#xff01; 异常处理方案 在JS开发中&#xff0c;处理异常包括两步&#xff1a;先抛出异常&#xff0c;然后捕获异常。…...

C++文件路径处理2 - 路径拼接路径解析

1. 关键词2. filesystem.h3. filepath.cpp6. 测试代码7. 运行结果8. 源码地址 1. 关键词 关键词&#xff1a; C 文件路径处理 路径拼接 获取父目录的路径 获取文件名 获取拓展名 跨平台 应用场景&#xff1a; 路径的拼接路径的解析 2. filesystem.h #pragma once#include…...

Prompt Tuning、P-Tuning、Prefix Tuning的区别

一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...

循环冗余码校验CRC码 算法步骤+详细实例计算

通信过程&#xff1a;&#xff08;白话解释&#xff09; 我们将原始待发送的消息称为 M M M&#xff0c;依据发送接收消息双方约定的生成多项式 G ( x ) G(x) G(x)&#xff08;意思就是 G &#xff08; x ) G&#xff08;x) G&#xff08;x) 是已知的&#xff09;&#xff0…...

mongodb源码分析session执行handleRequest命令find过程

mongo/transport/service_state_machine.cpp已经分析startSession创建ASIOSession过程&#xff0c;并且验证connection是否超过限制ASIOSession和connection是循环接受客户端命令&#xff0c;把数据流转换成Message&#xff0c;状态转变流程是&#xff1a;State::Created 》 St…...

数据链路层的主要功能是什么

数据链路层&#xff08;OSI模型第2层&#xff09;的核心功能是在相邻网络节点&#xff08;如交换机、主机&#xff09;间提供可靠的数据帧传输服务&#xff0c;主要职责包括&#xff1a; &#x1f511; 核心功能详解&#xff1a; 帧封装与解封装 封装&#xff1a; 将网络层下发…...

AspectJ 在 Android 中的完整使用指南

一、环境配置&#xff08;Gradle 7.0 适配&#xff09; 1. 项目级 build.gradle // 注意&#xff1a;沪江插件已停更&#xff0c;推荐官方兼容方案 buildscript {dependencies {classpath org.aspectj:aspectjtools:1.9.9.1 // AspectJ 工具} } 2. 模块级 build.gradle plu…...

在web-view 加载的本地及远程HTML中调用uniapp的API及网页和vue页面是如何通讯的?

uni-app 中 Web-view 与 Vue 页面的通讯机制详解 一、Web-view 简介 Web-view 是 uni-app 提供的一个重要组件&#xff0c;用于在原生应用中加载 HTML 页面&#xff1a; 支持加载本地 HTML 文件支持加载远程 HTML 页面实现 Web 与原生的双向通讯可用于嵌入第三方网页或 H5 应…...

SiFli 52把Imagie图片,Font字体资源放在指定位置,编译成指定img.bin和font.bin的问题

分区配置 (ptab.json) img 属性介绍&#xff1a; img 属性指定分区存放的 image 名称&#xff0c;指定的 image 名称必须是当前工程生成的 binary 。 如果 binary 有多个文件&#xff0c;则以 proj_name:binary_name 格式指定文件名&#xff0c; proj_name 为工程 名&…...

VM虚拟机网络配置(ubuntu24桥接模式):配置静态IP

编辑-虚拟网络编辑器-更改设置 选择桥接模式&#xff0c;然后找到相应的网卡&#xff08;可以查看自己本机的网络连接&#xff09; windows连接的网络点击查看属性 编辑虚拟机设置更改网络配置&#xff0c;选择刚才配置的桥接模式 静态ip设置&#xff1a; 我用的ubuntu24桌…...

C++ 设计模式 《小明的奶茶加料风波》

&#x1f468;‍&#x1f393; 模式名称&#xff1a;装饰器模式&#xff08;Decorator Pattern&#xff09; &#x1f466; 小明最近上线了校园奶茶配送功能&#xff0c;业务火爆&#xff0c;大家都在加料&#xff1a; 有的同学要加波霸 &#x1f7e4;&#xff0c;有的要加椰果…...

比较数据迁移后MySQL数据库和OceanBase数据仓库中的表

设计一个MySQL数据库和OceanBase数据仓库的表数据比较的详细程序流程,两张表是相同的结构,都有整型主键id字段,需要每次从数据库分批取得2000条数据,用于比较,比较操作的同时可以再取2000条数据,等上一次比较完成之后,开始比较,直到比较完所有的数据。比较操作需要比较…...