lyb-pixi-js 1.12.81 → 1.12.83

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.
@@ -0,0 +1,5 @@
1
+ import { BitmapText } from "pixi.js";
2
+ /** @description 自定义位图文本 */
3
+ export declare class LibPixiBit extends BitmapText {
4
+ constructor(fontName: string, text: string | number, fontSize: number);
5
+ }
@@ -0,0 +1,10 @@
1
+ import { BitmapText } from "pixi.js";
2
+ /** @description 自定义位图文本 */
3
+ export class LibPixiBit extends BitmapText {
4
+ constructor(fontName, text, fontSize) {
5
+ super(text.toString(), {
6
+ fontName,
7
+ fontSize,
8
+ });
9
+ }
10
+ }
package/README.md CHANGED
@@ -61,23 +61,6 @@ const box = new LibPixiRectBgColor({
61
61
  app.stage.addChild(box);
62
62
  ```
63
63
 
64
- **通过 `CDN ` 使用 `LibPixiJs`**
65
-
66
- > 你可以借助 `script` 标签直接通过 `CDN` 来使用 `LibPixiJs`
67
-
68
- ```html
69
- <script src="https://unpkg.com/lyb-pixi-js/lyb-pixi.js"></script>
70
-
71
- <script>
72
- const text = new LibPixiJs.Base.LibPixiText({
73
- text: "Hello World!",
74
- fontSize: 50,
75
- fontColor: "red",
76
- });
77
- app.stage.addChild(text);
78
- </script>
79
- ```
80
-
81
64
  ## 目录
82
65
 
83
66
  ### 基础组件
@@ -86,6 +69,8 @@ app.stage.addChild(box);
86
69
 
87
70
  \- [LibPixiHtmlText-富文本](#LibPixiHtmlText-富文本)
88
71
 
72
+ \- [LibPixiBit-位图简化使用](#LibPixiBit-位图简化使用)
73
+
89
74
  \- [LibPixiBitText-位图](#LibPixiBitText-位图)
90
75
 
91
76
  \- [LibPixiContainer-容器](#LibPixiContainer-容器)
@@ -206,8 +191,6 @@ app.stage.addChild(box);
206
191
 
207
192
  \- [LibPixiIsOutOfView-离开可视区检测](#LibPixiIsOutOfView-离开可视区检测)
208
193
 
209
- \- [LibBitTextGroup-美术字组](#LibBitTextGroup-美术字组)
210
-
211
194
  ## Base-基础
212
195
 
213
196
  ### LibPixiText-文本
@@ -284,6 +267,8 @@ interface LibPixiHtmlTextParams {
284
267
  }
285
268
  ```
286
269
 
270
+ ### LibPixiBit-位图简化使用
271
+
287
272
  ### LibPixiBitText-位图
288
273
 
289
274
  > 自定义位图文本
@@ -1373,8 +1358,4 @@ LibPixiEmitContainerEvent(this, "EVENT_NAME", {});
1373
1358
 
1374
1359
  ### LibPixiIsOutOfView-离开可视区检测
1375
1360
 
1376
- > 检测元素是否离开可视区
1377
-
1378
- ### LibBitTextGroup-美术字组
1379
-
1380
- > 通过将美术字的 `fnt` 字体文件,循环创建位图文本进行拼接
1361
+ > 检测元素是否离开可视区
@@ -1,7 +1,2 @@
1
- /** @description 间隔触发
2
- * @param callback 回调函数
3
- * @param interval 间隔毫秒,或随机范围
4
- * @param immediately 是否立即执行一次
5
- * @link 使用方法:https://www.npmjs.com/package/lyb-pixi-js#LibPixiIntervalTrigger-间隔触发
6
- */
1
+ /** @description 间隔触发(共享 Ticker 版) */
7
2
  export declare const libPixiIntervalTrigger: (callback: () => void, interval: number | [number, number], immediately?: boolean) => () => void;
@@ -1,35 +1,25 @@
1
1
  import { Ticker } from "pixi.js"; //@ts-ignore
2
2
  import { libJsRandom } from "lyb-js/Random/LibJsRandom.js";
3
- /** @description 间隔触发
4
- * @param callback 回调函数
5
- * @param interval 间隔毫秒,或随机范围
6
- * @param immediately 是否立即执行一次
7
- * @link 使用方法:https://www.npmjs.com/package/lyb-pixi-js#LibPixiIntervalTrigger-间隔触发
8
- */
3
+ /** @description 间隔触发(共享 Ticker 版) */
9
4
  export const libPixiIntervalTrigger = (callback, interval, immediately = true) => {
10
- let elapsedTime = 0;
11
- // 创建一个新的 Ticker 实例
12
- const ticker = new Ticker();
13
- // 创建回调函数
5
+ let nextInterval = Array.isArray(interval)
6
+ ? libJsRandom(interval[0], interval[1], 2)
7
+ : interval;
8
+ let elapsed = 0;
9
+ if (immediately)
10
+ callback();
14
11
  const tickerCallback = () => {
15
- elapsedTime += ticker.elapsedMS;
16
- let intervalNum = 0;
17
- if (Array.isArray(interval)) {
18
- intervalNum = libJsRandom(interval[0], interval[1], 2);
19
- }
20
- else {
21
- intervalNum = interval;
22
- }
23
- if (elapsedTime >= intervalNum) {
12
+ elapsed += Ticker.shared.deltaMS;
13
+ if (elapsed >= nextInterval) {
14
+ elapsed -= nextInterval;
24
15
  callback();
25
- elapsedTime = 0;
16
+ nextInterval = Array.isArray(interval)
17
+ ? libJsRandom(interval[0], interval[1], 2)
18
+ : interval;
26
19
  }
27
20
  };
28
- immediately && callback();
29
- ticker.add(tickerCallback);
30
- ticker.start();
21
+ Ticker.shared.add(tickerCallback);
31
22
  return () => {
32
- ticker.remove(tickerCallback);
33
- ticker.stop();
23
+ Ticker.shared.remove(tickerCallback);
34
24
  };
35
25
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lyb-pixi-js",
3
- "version": "1.12.81",
3
+ "version": "1.12.83",
4
4
  "description": "自用Pixi.JS方法库",
5
5
  "license": "ISC",
6
6
  "exports": {
@@ -1,21 +0,0 @@
1
- import { Container } from "pixi.js";
2
- import { LibPixiArrangeLinearV2 } from "./LibPixiArrangeLinearV2";
3
- interface LibBitTextGroupParams {
4
- /** 字体 */
5
- family: string;
6
- /** 文本 */
7
- text: string;
8
- /** 字体大小 */
9
- fontSize: number;
10
- /** 间隔 */
11
- gap?: number;
12
- /** 锚点X */
13
- anchorX?: number;
14
- /** 锚点Y */
15
- anchorY?: number;
16
- }
17
- /** @description 美术字组 */
18
- export declare class LibBitTextGroup extends LibPixiArrangeLinearV2<Container> {
19
- constructor(params: LibBitTextGroupParams);
20
- }
21
- export {};
@@ -1,21 +0,0 @@
1
- import { LibPixiBitText } from "../Base/LibPixiBitText";
2
- import { LibPixiArrangeLinearV2 } from "./LibPixiArrangeLinearV2";
3
- /** @description 美术字组 */
4
- export class LibBitTextGroup extends LibPixiArrangeLinearV2 {
5
- constructor(params) {
6
- const { family, text, fontSize, gap = -3, anchorX = 0.5, anchorY = 0.5, } = params;
7
- super({
8
- direction: "x",
9
- gap,
10
- anchorX,
11
- anchorY,
12
- });
13
- const bit = new LibPixiBitText(family, fontSize);
14
- for (const char of text) {
15
- const bitText = bit.createText(char);
16
- bitText.anchor.y = 0.5;
17
- this.push(bit.createText(char));
18
- }
19
- this.layout();
20
- }
21
- }