GGB数学云 GGB+JS样例10 - 截屏

GGB+JS样例10 - 截屏

2016年11月22日 人阅读 GeoGebra»GGB+JS样例

摘要: 本文介绍基于GeoGebra和JavaScript的小程序样例 - GGB截屏。


网页代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>GGB截屏</title>
<style type="text/css">
img.snap {
max-width: 150px;
max-height: 150px;
}
</style>
</head>
<body>
<div id="applet"></div>
<img class="snap" src="">
<img class="snap" src="">
<img class="snap" src="">
<img class="snap" src="">
<script src="http://cdn.bootcss.com/zepto/1.2.0/zepto.min.js"></script>
<script src="../GeoGebra/deployggb.js"></script>
<script>
var busy = false;
var applet = new GGBApplet({ showToolbar: true, width: 500, height: 400, appletOnLoad: function() {
ggbApplet.registerAddListener('ggbChanged');
ggbApplet.registerUpdateListener('ggbChanged');
ggbApplet.registerRemoveListener('ggbChanged');
}});
applet.setHTML5Codebase('../GeoGebra/HTML5/5.0/web/', true);
window.onload = function() {
applet.inject('applet', 'html5');
};
function ggbChanged(name) {
if (name) {
return setTimeout('ggbChanged()', 100);
}
base64 = ggbApplet.getPNGBase64(0.6, true, 96);
if (base64) {
var $img = $('img.snap');
for (var i = 2; i >= 0; i--) {
if (/^data:image/.test($img[i].src)) {
$img[i + 1].src = $img[i].src;
}
}
$img[0].src = 'data:image/png;base64,' + base64;
}
}
</script>
</body>
</html>
分享到: 更多