@xpadev-net/niconicomments 0.0.2 → 0.0.6
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/LICENSE +11 -11
- package/README.md +20 -20
- package/dist/bundle.js +54 -54
- package/package.json +32 -32
package/LICENSE
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
The MIT License
|
|
2
|
-
===============
|
|
3
|
-
|
|
4
|
-
Copyright (c) 2021 xpadev https://xpadev.net
|
|
5
|
-
|
|
6
|
-
以下に定める条件に従い、本ソフトウェアおよび関連文書のファイル(以下「ソフトウェア」)の複製を取得するすべての人に対し、ソフトウェアを無制限に扱うことを無償で許可します。これには、ソフトウェアの複製を使用、複写、変更、結合、掲載、頒布、サブライセンス、および/または販売する権利、およびソフトウェアを提供する相手に同じことを許可する権利も無制限に含まれます。
|
|
7
|
-
|
|
8
|
-
上記の著作権表示および本許諾表示を、ソフトウェアのすべての複製または重要な部分に記載するものとします。
|
|
9
|
-
|
|
10
|
-
ソフトウェアは「現状のまま」で、明示であるか暗黙であるかを問わず、何らの保証もなく提供されます。ここでいう保証とは、商品性、特定の目的への適合性、および権利非侵害についての保証も含みますが、それに限定されるものではありません。
|
|
11
|
-
作者または著作権者は、契約行為、不法行為、またはそれ以外であろうと、ソフトウェアに起因または関連し、あるいはソフトウェアの使用またはその他の扱いによって生じる一切の請求、損害、その他の義務について何らの責任も負わないものとします。
|
|
1
|
+
The MIT License
|
|
2
|
+
===============
|
|
3
|
+
|
|
4
|
+
Copyright (c) 2021 xpadev https://xpadev.net
|
|
5
|
+
|
|
6
|
+
以下に定める条件に従い、本ソフトウェアおよび関連文書のファイル(以下「ソフトウェア」)の複製を取得するすべての人に対し、ソフトウェアを無制限に扱うことを無償で許可します。これには、ソフトウェアの複製を使用、複写、変更、結合、掲載、頒布、サブライセンス、および/または販売する権利、およびソフトウェアを提供する相手に同じことを許可する権利も無制限に含まれます。
|
|
7
|
+
|
|
8
|
+
上記の著作権表示および本許諾表示を、ソフトウェアのすべての複製または重要な部分に記載するものとします。
|
|
9
|
+
|
|
10
|
+
ソフトウェアは「現状のまま」で、明示であるか暗黙であるかを問わず、何らの保証もなく提供されます。ここでいう保証とは、商品性、特定の目的への適合性、および権利非侵害についての保証も含みますが、それに限定されるものではありません。
|
|
11
|
+
作者または著作権者は、契約行為、不法行為、またはそれ以外であろうと、ソフトウェアに起因または関連し、あるいはソフトウェアの使用またはその他の扱いによって生じる一切の請求、損害、その他の義務について何らの責任も負わないものとします。
|
package/README.md
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
# [niconicomments](https://xpadev.net/niconicomments/)
|
|
2
|
-
[](https://github.com/xpadev_net/niconicomments/LICENSE)
|
|
3
|
-
ニコニコ動画の公式プレイヤーに多少の互換性を持つコメント描画ライブラリです
|
|
4
|
-
This is a comment drawing library that is somewhat compatible with the official Nico Nico Douga player.
|
|
5
|
-
Reference: https://xpadev.net/niconicomments/docs/
|
|
6
|
-
Github: https://github.com/xpadev-net/niconicomments
|
|
7
|
-
|
|
8
|
-
## Installation
|
|
9
|
-
```html
|
|
10
|
-
<script src="https://cdn.jsdelivr.net/npm/niconicomments@latest/src/main.min.js"></script>
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
## Examples
|
|
14
|
-
```javascript
|
|
15
|
-
const niconiComments = new NiconiComments(canvas, comments);
|
|
16
|
-
niconiComments.drawCanvas(vpos)
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
## Sample
|
|
20
|
-
https://xpadev.net/niconicomments/sample.html
|
|
1
|
+
# [niconicomments](https://xpadev.net/niconicomments/)
|
|
2
|
+
[](https://github.com/xpadev_net/niconicomments/LICENSE)
|
|
3
|
+
ニコニコ動画の公式プレイヤーに多少の互換性を持つコメント描画ライブラリです
|
|
4
|
+
This is a comment drawing library that is somewhat compatible with the official Nico Nico Douga player.
|
|
5
|
+
Reference: https://xpadev.net/niconicomments/docs/
|
|
6
|
+
Github: https://github.com/xpadev-net/niconicomments
|
|
7
|
+
|
|
8
|
+
## Installation
|
|
9
|
+
```html
|
|
10
|
+
<script src="https://cdn.jsdelivr.net/npm/niconicomments@latest/src/main.min.js"></script>
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
## Examples
|
|
14
|
+
```javascript
|
|
15
|
+
const niconiComments = new NiconiComments(canvas, comments);
|
|
16
|
+
niconiComments.drawCanvas(vpos)
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Sample
|
|
20
|
+
https://xpadev.net/niconicomments/sample.html
|
package/dist/bundle.js
CHANGED
|
@@ -5,12 +5,12 @@
|
|
|
5
5
|
})(this, (function () { 'use strict';
|
|
6
6
|
|
|
7
7
|
class NiconiComments {
|
|
8
|
-
/**
|
|
9
|
-
* NiconiComments Constructor
|
|
10
|
-
* @param {HTMLCanvasElement} canvas - 描画対象のキャンバス
|
|
11
|
-
* @param {[]} data - 描画用のコメント
|
|
12
|
-
* @param {boolean} useLegacy - defontにsans-serifを適用するか(trueでニコニコ公式に準拠)
|
|
13
|
-
* @param {boolean} formatted - dataが独自フォーマットに変換されているか
|
|
8
|
+
/**
|
|
9
|
+
* NiconiComments Constructor
|
|
10
|
+
* @param {HTMLCanvasElement} canvas - 描画対象のキャンバス
|
|
11
|
+
* @param {[]} data - 描画用のコメント
|
|
12
|
+
* @param {boolean} useLegacy - defontにsans-serifを適用するか(trueでニコニコ公式に準拠)
|
|
13
|
+
* @param {boolean} formatted - dataが独自フォーマットに変換されているか
|
|
14
14
|
*/
|
|
15
15
|
constructor(canvas, data, useLegacy = false, formatted = false) {
|
|
16
16
|
this.canvas = canvas;
|
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
this.context.textAlign = "left";
|
|
20
20
|
this.context.textBaseline = "top";
|
|
21
21
|
this.context.lineWidth = "6";
|
|
22
|
-
this.commentYOffset = 0.
|
|
22
|
+
this.commentYOffset = 0.25;
|
|
23
23
|
this.commentYMarginTop = 0.05;
|
|
24
24
|
|
|
25
25
|
if (formatted) {
|
|
@@ -47,10 +47,10 @@
|
|
|
47
47
|
this.fpsCount = 0;
|
|
48
48
|
}, 500);
|
|
49
49
|
}
|
|
50
|
-
/**
|
|
51
|
-
* ニコニコが吐き出したデータを処理しやすいように変換する
|
|
52
|
-
* @param {[]} data - ニコニコが吐き出したコメントデータ
|
|
53
|
-
* @returns {*[]} - 独自フォーマットのコメントデータ
|
|
50
|
+
/**
|
|
51
|
+
* ニコニコが吐き出したデータを処理しやすいように変換する
|
|
52
|
+
* @param {[]} data - ニコニコが吐き出したコメントデータ
|
|
53
|
+
* @returns {*[]} - 独自フォーマットのコメントデータ
|
|
54
54
|
*/
|
|
55
55
|
|
|
56
56
|
|
|
@@ -93,8 +93,8 @@
|
|
|
93
93
|
});
|
|
94
94
|
return data_;
|
|
95
95
|
}
|
|
96
|
-
/**
|
|
97
|
-
* 事前に当たり判定を考慮してコメントの描画場所を決定する
|
|
96
|
+
/**
|
|
97
|
+
* 事前に当たり判定を考慮してコメントの描画場所を決定する
|
|
98
98
|
*/
|
|
99
99
|
|
|
100
100
|
|
|
@@ -103,8 +103,8 @@
|
|
|
103
103
|
this.getCommentSize();
|
|
104
104
|
this.getCommentPos();
|
|
105
105
|
}
|
|
106
|
-
/**
|
|
107
|
-
* コマンドをもとに各コメントに適用するフォントを決定する
|
|
106
|
+
/**
|
|
107
|
+
* コマンドをもとに各コメントに適用するフォントを決定する
|
|
108
108
|
*/
|
|
109
109
|
|
|
110
110
|
|
|
@@ -122,8 +122,8 @@
|
|
|
122
122
|
this.data[i].content = this.data[i].content.replaceAll("\t", " ").replaceAll(/(\n){3,}/g, "\n\n\n");
|
|
123
123
|
}
|
|
124
124
|
}
|
|
125
|
-
/**
|
|
126
|
-
* コメントの描画サイズを計算する
|
|
125
|
+
/**
|
|
126
|
+
* コメントの描画サイズを計算する
|
|
127
127
|
*/
|
|
128
128
|
|
|
129
129
|
|
|
@@ -150,8 +150,8 @@
|
|
|
150
150
|
}
|
|
151
151
|
}
|
|
152
152
|
}
|
|
153
|
-
/**
|
|
154
|
-
* 計算された描画サイズをもとに各コメントの配置位置を決定する
|
|
153
|
+
/**
|
|
154
|
+
* 計算された描画サイズをもとに各コメントの配置位置を決定する
|
|
155
155
|
*/
|
|
156
156
|
|
|
157
157
|
|
|
@@ -339,11 +339,11 @@
|
|
|
339
339
|
}
|
|
340
340
|
}
|
|
341
341
|
}
|
|
342
|
-
/**
|
|
343
|
-
* context.measureTextの複数行対応版
|
|
344
|
-
* 画面外にはみ出すコメントの縮小も行う
|
|
345
|
-
* @param comment - 独自フォーマットのコメントデータ
|
|
346
|
-
* @returns {{resized: boolean, width: number, width_max: number, fontSize: number, width_min: number, height: number}} - 描画サイズとリサイズの情報
|
|
342
|
+
/**
|
|
343
|
+
* context.measureTextの複数行対応版
|
|
344
|
+
* 画面外にはみ出すコメントの縮小も行う
|
|
345
|
+
* @param comment - 独自フォーマットのコメントデータ
|
|
346
|
+
* @returns {{resized: boolean, width: number, width_max: number, fontSize: number, width_min: number, height: number}} - 描画サイズとリサイズの情報
|
|
347
347
|
*/
|
|
348
348
|
|
|
349
349
|
|
|
@@ -401,10 +401,10 @@
|
|
|
401
401
|
"fontSize": comment.fontSize
|
|
402
402
|
};
|
|
403
403
|
}
|
|
404
|
-
/**
|
|
405
|
-
* コマンドをもとに所定の位置にコメントを表示する
|
|
406
|
-
* @param comment - 独自フォーマットのコメントデータ
|
|
407
|
-
* @param {number} vpos - 動画の現在位置の100倍 ニコニコから吐き出されるコメントの位置情報は主にこれ
|
|
404
|
+
/**
|
|
405
|
+
* コマンドをもとに所定の位置にコメントを表示する
|
|
406
|
+
* @param comment - 独自フォーマットのコメントデータ
|
|
407
|
+
* @param {number} vpos - 動画の現在位置の100倍 ニコニコから吐き出されるコメントの位置情報は主にこれ
|
|
408
408
|
*/
|
|
409
409
|
|
|
410
410
|
|
|
@@ -466,10 +466,10 @@
|
|
|
466
466
|
this.context.strokeStyle = "rgba(0,0,0,0.7)";
|
|
467
467
|
}
|
|
468
468
|
}
|
|
469
|
-
/**
|
|
470
|
-
* コメントに含まれるコマンドを解釈する
|
|
471
|
-
* @param comment- 独自フォーマットのコメントデータ
|
|
472
|
-
* @returns {{loc: string, size: string, color: string, fontSize: number, ender: boolean, font: string, full: boolean}}
|
|
469
|
+
/**
|
|
470
|
+
* コメントに含まれるコマンドを解釈する
|
|
471
|
+
* @param comment- 独自フォーマットのコメントデータ
|
|
472
|
+
* @returns {{loc: string, size: string, color: string, fontSize: number, ender: boolean, font: string, full: boolean}}
|
|
473
473
|
*/
|
|
474
474
|
|
|
475
475
|
|
|
@@ -669,9 +669,9 @@
|
|
|
669
669
|
ender
|
|
670
670
|
};
|
|
671
671
|
}
|
|
672
|
-
/**
|
|
673
|
-
* キャンバスを描画する
|
|
674
|
-
* @param vpos - 動画の現在位置の100倍 ニコニコから吐き出されるコメントの位置情報は主にこれ
|
|
672
|
+
/**
|
|
673
|
+
* キャンバスを描画する
|
|
674
|
+
* @param vpos - 動画の現在位置の100倍 ニコニコから吐き出されるコメントの位置情報は主にこれ
|
|
675
675
|
*/
|
|
676
676
|
|
|
677
677
|
|
|
@@ -702,8 +702,8 @@
|
|
|
702
702
|
this.context.fillText("FPS:" + this.fps, 100, 100);
|
|
703
703
|
}
|
|
704
704
|
}
|
|
705
|
-
/**
|
|
706
|
-
* キャンバスを消去する
|
|
705
|
+
/**
|
|
706
|
+
* キャンバスを消去する
|
|
707
707
|
*/
|
|
708
708
|
|
|
709
709
|
|
|
@@ -712,12 +712,12 @@
|
|
|
712
712
|
}
|
|
713
713
|
|
|
714
714
|
}
|
|
715
|
-
/**
|
|
716
|
-
* 配列を複数のキーでグループ化する
|
|
717
|
-
* @param {{}} array
|
|
718
|
-
* @param {string} key
|
|
719
|
-
* @param {string} key2
|
|
720
|
-
* @returns {{}}
|
|
715
|
+
/**
|
|
716
|
+
* 配列を複数のキーでグループ化する
|
|
717
|
+
* @param {{}} array
|
|
718
|
+
* @param {string} key
|
|
719
|
+
* @param {string} key2
|
|
720
|
+
* @returns {{}}
|
|
721
721
|
*/
|
|
722
722
|
|
|
723
723
|
|
|
@@ -739,12 +739,12 @@
|
|
|
739
739
|
|
|
740
740
|
return data;
|
|
741
741
|
};
|
|
742
|
-
/**
|
|
743
|
-
* フォント名とサイズをもとにcontextで使えるフォントを生成する
|
|
744
|
-
* @param {string} font
|
|
745
|
-
* @param {number} size
|
|
746
|
-
* @param {boolean} useLegacy
|
|
747
|
-
* @returns {string}
|
|
742
|
+
/**
|
|
743
|
+
* フォント名とサイズをもとにcontextで使えるフォントを生成する
|
|
744
|
+
* @param {string} font
|
|
745
|
+
* @param {number} size
|
|
746
|
+
* @param {boolean} useLegacy
|
|
747
|
+
* @returns {string}
|
|
748
748
|
*/
|
|
749
749
|
|
|
750
750
|
|
|
@@ -765,11 +765,11 @@
|
|
|
765
765
|
|
|
766
766
|
}
|
|
767
767
|
};
|
|
768
|
-
/**
|
|
769
|
-
* phpのarray_push的なあれ
|
|
770
|
-
* @param array
|
|
771
|
-
* @param {string} key
|
|
772
|
-
* @param push
|
|
768
|
+
/**
|
|
769
|
+
* phpのarray_push的なあれ
|
|
770
|
+
* @param array
|
|
771
|
+
* @param {string} key
|
|
772
|
+
* @param push
|
|
773
773
|
*/
|
|
774
774
|
|
|
775
775
|
|
package/package.json
CHANGED
|
@@ -1,32 +1,32 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@xpadev-net/niconicomments",
|
|
3
|
-
"version": "0.0.
|
|
4
|
-
"description": "NiconiComments is a comment drawing library that is somewhat compatible with the official Nico Nico Douga player.",
|
|
5
|
-
"main": "dist/
|
|
6
|
-
"scripts": {
|
|
7
|
-
"test": "echo \"Error: no test specified\" && exit 1",
|
|
8
|
-
"build": "rollup -c rollup.config.js",
|
|
9
|
-
"prepublishOnly": "rollup -c rollup.config.js"
|
|
10
|
-
},
|
|
11
|
-
"repository": {
|
|
12
|
-
"type": "git",
|
|
13
|
-
"url": "git+https://github.com/xpadev-net/niconicomments.git"
|
|
14
|
-
},
|
|
15
|
-
"keywords": [
|
|
16
|
-
"niconico"
|
|
17
|
-
],
|
|
18
|
-
"author": "xpadev(xpadev.net)",
|
|
19
|
-
"bugs": {
|
|
20
|
-
"url": "https://github.com/xpadev-net/niconicomments/issues"
|
|
21
|
-
},
|
|
22
|
-
"files": [
|
|
23
|
-
"dist/bundle.js"
|
|
24
|
-
],
|
|
25
|
-
"homepage": "https://xpadev.net/",
|
|
26
|
-
"license": "MIT",
|
|
27
|
-
"devDependencies": {
|
|
28
|
-
"babel-preset-es2015-rollup": "^3.0.0",
|
|
29
|
-
"rollup": "^2.60.2",
|
|
30
|
-
"rollup-plugin-babel": "^4.4.0"
|
|
31
|
-
}
|
|
32
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@xpadev-net/niconicomments",
|
|
3
|
+
"version": "0.0.6",
|
|
4
|
+
"description": "NiconiComments is a comment drawing library that is somewhat compatible with the official Nico Nico Douga player.",
|
|
5
|
+
"main": "dist/bundle.js",
|
|
6
|
+
"scripts": {
|
|
7
|
+
"test": "echo \"Error: no test specified\" && exit 1",
|
|
8
|
+
"build": "rollup -c rollup.config.js",
|
|
9
|
+
"prepublishOnly": "rollup -c rollup.config.js"
|
|
10
|
+
},
|
|
11
|
+
"repository": {
|
|
12
|
+
"type": "git",
|
|
13
|
+
"url": "git+https://github.com/xpadev-net/niconicomments.git"
|
|
14
|
+
},
|
|
15
|
+
"keywords": [
|
|
16
|
+
"niconico"
|
|
17
|
+
],
|
|
18
|
+
"author": "xpadev(xpadev.net)",
|
|
19
|
+
"bugs": {
|
|
20
|
+
"url": "https://github.com/xpadev-net/niconicomments/issues"
|
|
21
|
+
},
|
|
22
|
+
"files": [
|
|
23
|
+
"dist/bundle.js"
|
|
24
|
+
],
|
|
25
|
+
"homepage": "https://xpadev.net/",
|
|
26
|
+
"license": "MIT",
|
|
27
|
+
"devDependencies": {
|
|
28
|
+
"babel-preset-es2015-rollup": "^3.0.0",
|
|
29
|
+
"rollup": "^2.60.2",
|
|
30
|
+
"rollup-plugin-babel": "^4.4.0"
|
|
31
|
+
}
|
|
32
|
+
}
|