gridjs-spreadsheet 25.6.0 → 25.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/113a871731ce1f8a28d02ff60e8d9478.svg +914 -0
- package/9ab1b217edd126e8925e88cc8f25a154.svg +88 -0
- package/example/Dockerfile +7 -10
- package/example/pom.xml +3 -3
- package/example/src/main/java/com/aspose/gridjs/demo/MyConfig.java +2 -14
- package/example/src/main/java/com/aspose/gridjs/demo/controller/GridJs2Controller.java +9 -9
- package/example/src/main/resources/application.properties +7 -3
- package/example/src/main/resources/templates/fileFromUpload.html +18 -17
- package/example/src/main/resources/templates/index.html +1 -1
- package/package.json +1 -1
- package/readme.md +35 -22
- package/xspreadsheet.css +256 -7
- package/xspreadsheet.js +5 -5
- package/example/src/main/java/com/aspose/gridjs/demo/MyConfig.java.bak +0 -31
- package/example/src/main/resources/static/xspread/content/img/20130527034914143.gif +0 -0
- package/example/src/main/resources/static/xspread/content/img/20130527034914229.gif +0 -0
- package/example/src/main/resources/static/xspread/content/img/20130527034916363.gif +0 -0
- package/example/src/main/resources/static/xspread/content/img/20130527034917946.gif +0 -0
- package/example/src/main/resources/static/xspread/content/img/20130527034918372.gif +0 -0
- package/preview.gif +0 -0
- /package/{555f60323063f2b68b6eac7ce9c45b19.svg → example/src/main/resources/static/xspread/555f60323063f2b68b6eac7ce9c45b19.svg} +0 -0
- /package/{a3b683289420fd8ec937908397907279.svg → example/src/main/resources/static/xspread/a3b683289420fd8ec937908397907279.svg} +0 -0
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<!-- Generator: Adobe Illustrator 25.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
|
3
|
+
<svg version="1.1" id="图层_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
|
4
|
+
viewBox="0 0 22 22" style="enable-background:new 0 0 22 22;" xml:space="preserve">
|
|
5
|
+
<style type="text/css">
|
|
6
|
+
.st0{fill:url(#SVGID_1_);}
|
|
7
|
+
.st1{fill:url(#SVGID_2_);}
|
|
8
|
+
.st2{fill:url(#SVGID_3_);}
|
|
9
|
+
.st3{fill:url(#SVGID_4_);}
|
|
10
|
+
.st4{opacity:0.6;}
|
|
11
|
+
.st5{opacity:0.38;fill:url(#SVGID_5_);enable-background:new ;}
|
|
12
|
+
.st6{opacity:0.38;fill:url(#SVGID_6_);enable-background:new ;}
|
|
13
|
+
.st7{opacity:0.38;fill:url(#SVGID_7_);enable-background:new ;}
|
|
14
|
+
.st8{opacity:0.38;fill:url(#SVGID_8_);enable-background:new ;}
|
|
15
|
+
</style>
|
|
16
|
+
<g>
|
|
17
|
+
|
|
18
|
+
<radialGradient id="SVGID_1_" cx="519.1851" cy="-127.3083" r="8.2454" gradientTransform="matrix(0 1 -0.9943 0 -113.4659 -506.377)" gradientUnits="userSpaceOnUse">
|
|
19
|
+
<stop offset="0.1429" style="stop-color:#D5EFFC"/>
|
|
20
|
+
<stop offset="0.8424" style="stop-color:#3C8EC6"/>
|
|
21
|
+
<stop offset="1" style="stop-color:#3399CC"/>
|
|
22
|
+
</radialGradient>
|
|
23
|
+
<path class="st0" d="M21,13.6c0-0.5,0.5-6.4-4.6-9.1C14.1,3.2,10.9,3.2,9.1,5C6,8.2,8.6,11.5,9.6,11.8c0,0,0,0,0-0.1
|
|
24
|
+
c-1.6-6.3,9.3-7.4,11.2,1.8C20.9,13.9,21,13.9,21,13.6z"/>
|
|
25
|
+
|
|
26
|
+
<radialGradient id="SVGID_2_" cx="446.2906" cy="702.4343" r="5.9862" gradientTransform="matrix(0.9943 0 0 1 -430.3552 -688)" gradientUnits="userSpaceOnUse">
|
|
27
|
+
<stop offset="0.1429" style="stop-color:#FEE588"/>
|
|
28
|
+
<stop offset="0.5636" style="stop-color:#F79B30"/>
|
|
29
|
+
<stop offset="0.6867" style="stop-color:#F58B2D"/>
|
|
30
|
+
<stop offset="0.8883" style="stop-color:#F3752A"/>
|
|
31
|
+
<stop offset="1" style="stop-color:#F36C29"/>
|
|
32
|
+
</radialGradient>
|
|
33
|
+
<path class="st1" d="M8.5,21.2c0.5,0,6.4,0.5,9.1-4.6c1.3-2.4,1.2-5.6-0.5-7.4c-3.1-3.1-6.4-0.5-6.8,0.5c0,0,0,0,0.1,0
|
|
34
|
+
c6.2-1.6,7.3,9.3-1.8,11.3C8.3,21,8.3,21.1,8.5,21.2z"/>
|
|
35
|
+
|
|
36
|
+
<radialGradient id="SVGID_3_" cx="-378.6884" cy="623.4329" r="8.246" gradientTransform="matrix(0 -1 0.9943 0 -610.95 -369.3066)" gradientUnits="userSpaceOnUse">
|
|
37
|
+
<stop offset="0" style="stop-color:#FCB116"/>
|
|
38
|
+
<stop offset="0.193" style="stop-color:#FBB318"/>
|
|
39
|
+
<stop offset="0.3352" style="stop-color:#F9B91C"/>
|
|
40
|
+
<stop offset="0.461" style="stop-color:#F6C323"/>
|
|
41
|
+
<stop offset="0.5767" style="stop-color:#F4D12D"/>
|
|
42
|
+
<stop offset="0.6727" style="stop-color:#F0E03A"/>
|
|
43
|
+
<stop offset="0.7439" style="stop-color:#E5D534"/>
|
|
44
|
+
<stop offset="0.8645" style="stop-color:#CFBD24"/>
|
|
45
|
+
<stop offset="1" style="stop-color:#B19E11"/>
|
|
46
|
+
</radialGradient>
|
|
47
|
+
<path class="st2" d="M1,8.6c0,0.5-0.5,6.4,4.6,9.1C8,19,11.2,18.9,13,17.2c3.1-3.2,0.5-6.5-0.5-6.8c0,0,0,0,0,0.1
|
|
48
|
+
c1.6,6.3-9.3,7.4-11.2-1.8C1.2,8.3,1.1,8.3,1,8.6z"/>
|
|
49
|
+
|
|
50
|
+
<radialGradient id="SVGID_4_" cx="445.619" cy="696.9989" r="8.2461" gradientTransform="matrix(0.9943 0 0 1 -430.3552 -688)" gradientUnits="userSpaceOnUse">
|
|
51
|
+
<stop offset="0" style="stop-color:#A1C43A"/>
|
|
52
|
+
<stop offset="0.4545" style="stop-color:#A0CC3A"/>
|
|
53
|
+
<stop offset="1" style="stop-color:#3C943A"/>
|
|
54
|
+
</radialGradient>
|
|
55
|
+
<path class="st3" d="M13.5,1C13,1,7.1,0.6,4.5,5.7C3.2,8.1,3.2,11.3,5,13c3.1,3.1,6.4,0.5,6.8-0.5c0,0,0,0-0.1,0
|
|
56
|
+
c-6.2,1.6-7.3-9.3,1.8-11.3C13.8,1.2,13.8,1.1,13.5,1z"/>
|
|
57
|
+
<g class="st4">
|
|
58
|
+
|
|
59
|
+
<radialGradient id="SVGID_5_" cx="413.168" cy="345.1736" r="9.5277" gradientTransform="matrix(1.0925 0 0 1.6216 -440.2973 -540.7683)" gradientUnits="userSpaceOnUse">
|
|
60
|
+
<stop offset="0" style="stop-color:#F9E788"/>
|
|
61
|
+
<stop offset="1" style="stop-color:#FFFFFF"/>
|
|
62
|
+
</radialGradient>
|
|
63
|
+
<path class="st5" d="M11,5.2c-0.9,0-1.7,0.2-2.4,0.5c-2.3,3,0.1,5.9,1,6.2c0,0,0,0,0-0.1C8.7,8,12.4,6,15.8,7.2
|
|
64
|
+
C14.7,6,12.9,5.2,11,5.2z"/>
|
|
65
|
+
|
|
66
|
+
<radialGradient id="SVGID_6_" cx="413.1686" cy="345.1745" r="9.5274" gradientTransform="matrix(1.0925 0 0 1.6216 -440.2973 -540.7683)" gradientUnits="userSpaceOnUse">
|
|
67
|
+
<stop offset="0" style="stop-color:#F9E788"/>
|
|
68
|
+
<stop offset="1" style="stop-color:#FFFFFF"/>
|
|
69
|
+
</radialGradient>
|
|
70
|
+
<path class="st6" d="M10.3,9.7C10.3,9.7,10.3,9.7,10.3,9.7c3.8-0.9,5.7,2.7,4.6,6.1c1.5-1.1,2.4-2.8,2.4-4.7
|
|
71
|
+
c0-0.7-0.1-1.4-0.4-2.1C13.8,6.1,10.6,8.7,10.3,9.7z"/>
|
|
72
|
+
|
|
73
|
+
<radialGradient id="SVGID_7_" cx="413.1689" cy="345.1732" r="9.526" gradientTransform="matrix(1.0925 0 0 1.6216 -440.2973 -540.7683)" gradientUnits="userSpaceOnUse">
|
|
74
|
+
<stop offset="0" style="stop-color:#F9E788"/>
|
|
75
|
+
<stop offset="1" style="stop-color:#FFFFFF"/>
|
|
76
|
+
</radialGradient>
|
|
77
|
+
<path class="st7" d="M12.5,10.4C12.4,10.3,12.4,10.4,12.5,10.4c0.9,3.9-2.7,5.8-6.2,4.6C7.4,16.2,9.1,17,11,17
|
|
78
|
+
c0.9,0,1.7-0.2,2.4-0.5C15.7,13.6,13.4,10.7,12.5,10.4z"/>
|
|
79
|
+
|
|
80
|
+
<radialGradient id="SVGID_8_" cx="413.168" cy="345.1736" r="9.5275" gradientTransform="matrix(1.0925 0 0 1.6216 -440.2973 -540.7683)" gradientUnits="userSpaceOnUse">
|
|
81
|
+
<stop offset="0" style="stop-color:#F9E788"/>
|
|
82
|
+
<stop offset="1" style="stop-color:#FFFFFF"/>
|
|
83
|
+
</radialGradient>
|
|
84
|
+
<path class="st8" d="M11.8,12.5C11.8,12.5,11.8,12.5,11.8,12.5C8,13.5,6.1,9.9,7.2,6.4c-1.5,1.1-2.4,2.8-2.4,4.7
|
|
85
|
+
c0,0.7,0.1,1.4,0.4,2.1C8.3,16.1,11.4,13.5,11.8,12.5z"/>
|
|
86
|
+
</g>
|
|
87
|
+
</g>
|
|
88
|
+
</svg>
|
package/example/Dockerfile
CHANGED
|
@@ -1,33 +1,30 @@
|
|
|
1
1
|
FROM maven:3.8.6-amazoncorretto-17 AS build
|
|
2
|
-
#
|
|
2
|
+
# 设置工作目录
|
|
3
3
|
WORKDIR /usr/src/app
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
# �����ص� Maven �����ļ��ͻ������������ļ����Ƶ�������
|
|
5
|
+
# 将本地的 Maven 设置文件和环境变量设置文件复制到容器中
|
|
9
6
|
COPY .mvn .mvn
|
|
10
7
|
COPY pom.xml .
|
|
11
8
|
COPY src src
|
|
12
|
-
|
|
9
|
+
|
|
13
10
|
RUN ls -l *
|
|
14
|
-
#
|
|
11
|
+
# 使用 Maven 构建应用
|
|
15
12
|
RUN mvn package -DskipTests
|
|
16
13
|
|
|
17
14
|
FROM eclipse/ubuntu_jdk8
|
|
18
15
|
WORKDIR /app
|
|
19
|
-
#
|
|
16
|
+
# 将构建的 jar 文件复制到新的容器中
|
|
20
17
|
COPY --from=build /usr/src/app/target/*.jar /app/app.jar
|
|
21
18
|
|
|
22
19
|
|
|
23
20
|
# web port
|
|
24
21
|
EXPOSE 8080
|
|
25
|
-
# Install Fonts because the SDK image contains very few fonts. The command copies font files from local to docker image. Make sure you have a local
|
|
22
|
+
# Install Fonts because the SDK image contains very few fonts. The command copies font files from local to docker image. Make sure you have a local “fonts” directory that contains all the fonts you need to install. In this example, the local “fonts” directory is put in the same directory as the Dockerfile.
|
|
26
23
|
# COPY fonts/* /usr/share/fonts/
|
|
27
24
|
RUN mkdir -p /app/wb
|
|
28
25
|
RUN mkdir -p /app/grid_cache/streamcache
|
|
29
26
|
RUN mkdir -p /app/upload
|
|
30
27
|
COPY wb/*.xlsx /app/wb/
|
|
31
28
|
# RUN ls -l /app/
|
|
32
|
-
#
|
|
29
|
+
# 启动应用
|
|
33
30
|
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app/app.jar"]
|
package/example/pom.xml
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
<parent>
|
|
6
6
|
<groupId>org.springframework.boot</groupId>
|
|
7
7
|
<artifactId>spring-boot-starter-parent</artifactId>
|
|
8
|
-
<version>2.
|
|
8
|
+
<version>2.7.18</version>
|
|
9
9
|
<relativePath/> <!-- lookup parent from repository -->
|
|
10
10
|
</parent>
|
|
11
11
|
<repositories>
|
|
@@ -51,12 +51,12 @@
|
|
|
51
51
|
<dependency>
|
|
52
52
|
<groupId>com.aspose</groupId>
|
|
53
53
|
<artifactId>aspose-cells</artifactId>
|
|
54
|
-
<version>25.
|
|
54
|
+
<version>25.8</version>
|
|
55
55
|
</dependency>
|
|
56
56
|
<dependency>
|
|
57
57
|
<groupId>com.aspose</groupId>
|
|
58
58
|
<artifactId>aspose-cells</artifactId>
|
|
59
|
-
<version>25.
|
|
59
|
+
<version>25.8</version>
|
|
60
60
|
<classifier>gridjs</classifier>
|
|
61
61
|
</dependency>
|
|
62
62
|
<!-- <dependency>
|
|
@@ -2,13 +2,9 @@ package com.aspose.gridjs.demo;
|
|
|
2
2
|
|
|
3
3
|
import org.springframework.beans.factory.annotation.Value;
|
|
4
4
|
import org.springframework.context.annotation.Bean;
|
|
5
|
-
import org.springframework.context.annotation.ComponentScan;
|
|
6
5
|
import org.springframework.context.annotation.Configuration;
|
|
7
6
|
|
|
8
7
|
import com.aspose.gridjs.GridJsOptions;
|
|
9
|
-
import com.aspose.gridjs.GridJsService;
|
|
10
|
-
import com.aspose.gridjs.GridJsWorkbook;
|
|
11
|
-
import com.aspose.gridjs.IGridJsService;
|
|
12
8
|
|
|
13
9
|
@Configuration
|
|
14
10
|
public class MyConfig {
|
|
@@ -21,20 +17,12 @@ public class MyConfig {
|
|
|
21
17
|
|
|
22
18
|
|
|
23
19
|
@Bean
|
|
24
|
-
public GridJsWorkbook gridJsWorkbook() {
|
|
25
|
-
return new GridJsWorkbook();
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
@Bean
|
|
30
20
|
public GridJsOptions gridJsOptions() {
|
|
31
21
|
GridJsOptions options=new GridJsOptions();
|
|
32
22
|
options.setFileCacheDirectory(cachePath);
|
|
33
23
|
return options;
|
|
34
24
|
}
|
|
35
25
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
return new GridJsService(gridJsOptions);
|
|
39
|
-
}
|
|
26
|
+
|
|
27
|
+
|
|
40
28
|
}
|
|
@@ -170,8 +170,8 @@ public class GridJs2Controller extends GridJsControllerBase{
|
|
|
170
170
|
@GetMapping("/ImageUrl")
|
|
171
171
|
public ResponseEntity<String> getImageUrl(@RequestParam String id, @RequestParam String uid) {
|
|
172
172
|
return super.getImageUrl(id, uid);
|
|
173
|
-
|
|
174
|
-
|
|
173
|
+
}
|
|
174
|
+
|
|
175
175
|
@GetMapping("/Ole")
|
|
176
176
|
public ResponseEntity<?> getOle(HttpServletRequest request) {
|
|
177
177
|
return super.getOle(request);
|
|
@@ -180,16 +180,16 @@ public class GridJs2Controller extends GridJsControllerBase{
|
|
|
180
180
|
@GetMapping("/GetFile")
|
|
181
181
|
public ResponseEntity<?> getFile(@RequestParam("id") String id) {
|
|
182
182
|
return super.getFile(id);
|
|
183
|
-
|
|
184
|
-
|
|
183
|
+
}
|
|
184
|
+
|
|
185
185
|
@PostMapping("/Download")
|
|
186
186
|
public ResponseEntity<String> download(HttpServletRequest request) {
|
|
187
187
|
return super.download(request);
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
188
|
+
}
|
|
189
|
+
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
|
|
193
193
|
|
|
194
194
|
|
|
195
195
|
}
|
|
@@ -2,12 +2,16 @@ spring.application.name=gridjsdemo
|
|
|
2
2
|
spring.servlet.multipart.enabled=true
|
|
3
3
|
spring.servlet.multipart.max-file-size=10MB
|
|
4
4
|
spring.servlet.multipart.max-request-size=10MB
|
|
5
|
+
#for local test
|
|
5
6
|
#testconfig.ListDir=D:\\codebase\\customerissue\\wb\\tempfromdownload\\
|
|
6
|
-
#
|
|
7
|
+
#testconfig.FileName=excelColumnWordBreak.xlsm
|
|
8
|
+
#testconfig.CachePath=F:\\storage\\gridjs_temp
|
|
9
|
+
#testconfig.UploadPath=F:\\storage\\upload
|
|
10
|
+
#testconfig.AsposeLicensePath=F:\\aspose.lic
|
|
11
|
+
#for docker linux
|
|
7
12
|
testconfig.ListDir=/app/wb
|
|
8
|
-
testconfig.FileName=
|
|
13
|
+
testconfig.FileName=controls.xlsx
|
|
9
14
|
testconfig.CachePath=/app/grid_cache
|
|
10
15
|
testconfig.UploadPath=/app/upload
|
|
11
16
|
testconfig.AsposeLicensePath=/app/license
|
|
12
|
-
|
|
13
17
|
|
|
@@ -5,23 +5,24 @@
|
|
|
5
5
|
<meta name="viewport" content="width=device-width" />
|
|
6
6
|
<title>gridjs-web-demo</title>
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
8
|
+
<style>
|
|
9
|
+
::-webkit-scrollbar, ::-webkit-scrollbar-button {
|
|
10
|
+
width: 8px;
|
|
11
|
+
height: 8px;
|
|
12
|
+
}
|
|
13
13
|
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
14
|
+
::-webkit-scrollbar-track {
|
|
15
|
+
-webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
|
|
16
|
+
border-radius: 10px;
|
|
17
|
+
background-color: #FFF;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
::-webkit-scrollbar-thumb {
|
|
21
|
+
border-radius: 10px;
|
|
22
|
+
-webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
|
|
23
|
+
background-color: #AAA;
|
|
24
|
+
}
|
|
19
25
|
|
|
20
|
-
::-webkit-scrollbar-thumb {
|
|
21
|
-
border-radius: 10px;
|
|
22
|
-
-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,.3);
|
|
23
|
-
background-color: #AAA;
|
|
24
|
-
}
|
|
25
26
|
html, body {
|
|
26
27
|
margin: 0;
|
|
27
28
|
padding: 0;
|
|
@@ -42,8 +43,8 @@ html, body {
|
|
|
42
43
|
height: 100%;
|
|
43
44
|
object-fit: contain; /* 对于图像或视频很有用 */
|
|
44
45
|
}
|
|
45
|
-
|
|
46
|
-
|
|
46
|
+
</style>
|
|
47
|
+
<!--<link rel="stylesheet" href="./quantumui.min.22.5.5.2.css?v=20220312" />-->
|
|
47
48
|
<link rel="stylesheet" href="/xspread/bootstrap.min.22.5.5.2.css?v=20220315" />
|
|
48
49
|
<script src="/xspread/jquery-2.1.1.js"></script>
|
|
49
50
|
<link rel="stylesheet" href="/xspread/jquery-ui.min.css" />
|
|
@@ -52,7 +52,7 @@ html, body {
|
|
|
52
52
|
<!-- <script src="vconsole.min.js"></script> -->
|
|
53
53
|
<!--for local reference-->
|
|
54
54
|
<!--
|
|
55
|
-
|
|
55
|
+
<link rel="stylesheet" href="/xspread/xspreadsheet.css?v=20230525" />
|
|
56
56
|
<script src="/xspread/xspreadsheet.js?v=20230525"></script>
|
|
57
57
|
-->
|
|
58
58
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "gridjs-spreadsheet",
|
|
3
|
-
"version": "25.
|
|
3
|
+
"version": "25.8.0",
|
|
4
4
|
"description": "this is the client side script for GridJs which is a lightweight, scalable, and customizable toolkit that provides cross-platform web applications, enables convenient development for editing or viewing Excel/Spreadsheet files, offers simple deployment, and provides easy-to-use APIs based on JSON format.",
|
|
5
5
|
"types": "index.d.ts",
|
|
6
6
|
"main": "xspreadsheet.js",
|
package/readme.md
CHANGED
|
@@ -163,11 +163,11 @@ const s = new Spreadsheet("#gridjs-demo")
|
|
|
163
163
|
|
|
164
164
|
## Bind events
|
|
165
165
|
```javascript
|
|
166
|
-
//
|
|
166
|
+
//single selection
|
|
167
167
|
xs.on('cell-selected', (cell, ri, ci) => {});
|
|
168
|
-
//
|
|
168
|
+
//range selection
|
|
169
169
|
xs.on('cells-selected', (cell, { sri, sci, eri, eci }) => {});
|
|
170
|
-
//
|
|
170
|
+
//shape/image selection
|
|
171
171
|
xs.on('object-selected', (obj) => { console.log('obj id:', obj.id, ', type: ', obj.type); })
|
|
172
172
|
// edited on cell
|
|
173
173
|
xs.on('cell-edited', (text, ri, ci) => {});
|
|
@@ -289,13 +289,13 @@ Modern browsers(chrome, firefox, Safari).
|
|
|
289
289
|
|
|
290
290
|
v24.9.1:
|
|
291
291
|
|
|
292
|
-
-
|
|
293
|
-
-
|
|
294
|
-
-
|
|
292
|
+
- Fix bug that fail to insert column in the new added worksheet
|
|
293
|
+
- Fix bug that fail to rename worksheet
|
|
294
|
+
- Support lazy loading
|
|
295
295
|
|
|
296
296
|
v24.10:
|
|
297
297
|
|
|
298
|
-
-
|
|
298
|
+
- Support a view option to show formulas
|
|
299
299
|
|
|
300
300
|
v24.11:
|
|
301
301
|
|
|
@@ -303,39 +303,52 @@ v24.11:
|
|
|
303
303
|
|
|
304
304
|
v24.12:
|
|
305
305
|
|
|
306
|
-
-
|
|
307
|
-
-
|
|
308
|
-
-
|
|
309
|
-
-
|
|
310
|
-
-
|
|
306
|
+
- Support API to show HTML nodes and interact with HTML nodes at specified cell positions
|
|
307
|
+
- Support pre-check event for row/column delete/insert operations
|
|
308
|
+
- Support row/column insert/delete events for client APIs
|
|
309
|
+
- Support events for updating cells
|
|
310
|
+
- Support multiple instances on one page
|
|
311
311
|
|
|
312
312
|
v25.1:
|
|
313
313
|
|
|
314
|
-
-
|
|
314
|
+
- Support copy/paste from MS-Excel
|
|
315
315
|
|
|
316
316
|
v25.2:
|
|
317
317
|
|
|
318
|
-
-
|
|
319
|
-
-
|
|
318
|
+
- Support copy/paste from MS-Excel
|
|
319
|
+
- Enhancement for automatic operations for user’s convenience, such as extending blank row/column, page scrolling, …
|
|
320
320
|
|
|
321
321
|
v25.3:
|
|
322
322
|
|
|
323
|
-
-
|
|
324
|
-
-
|
|
323
|
+
- Support more shotcut keys
|
|
324
|
+
- Support pasting the content copied from excel to multiple target areas
|
|
325
325
|
|
|
326
326
|
v25.4:
|
|
327
327
|
|
|
328
|
-
-
|
|
328
|
+
- Support show statistics information in the lower right corner when cells are selected
|
|
329
329
|
|
|
330
330
|
v25.5:
|
|
331
331
|
|
|
332
|
-
-
|
|
333
|
-
-
|
|
332
|
+
- Add support for Polish menus.
|
|
333
|
+
- Support APIs for insert/delete rows/columns
|
|
334
334
|
|
|
335
335
|
v25.6:
|
|
336
336
|
|
|
337
|
-
-
|
|
338
|
-
-
|
|
337
|
+
- Support APIs for resize rows/columns
|
|
338
|
+
- Support APIs for hide/unhide rows/columns
|
|
339
|
+
|
|
340
|
+
v25.7:
|
|
341
|
+
|
|
342
|
+
- Support APIs to enable /disable editable range
|
|
343
|
+
- Support APIs to add/modify/delete worksheet
|
|
344
|
+
- Support APIs to add/modify/delete comment
|
|
345
|
+
- Support APIs to set attribute for range of cells
|
|
346
|
+
- Support APIs to delete for range of cells
|
|
347
|
+
|
|
348
|
+
v25.8:
|
|
349
|
+
|
|
350
|
+
- Support automatic text wrapping
|
|
351
|
+
- Support API to apply font setting in textbox control
|
|
339
352
|
|
|
340
353
|
## License
|
|
341
354
|
|