Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
F
fyge_for_tb
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
王剑峰
fyge_for_tb
Commits
0cc8f760
Commit
0cc8f760
authored
Sep 29, 2020
by
wjf
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
l
parent
0da8bf37
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
20 additions
and
14 deletions
+20
-14
Stage.ts
src/2d/display/Stage.ts
+6
-5
Loader.ts
src/2d/loader/Loader.ts
+2
-2
TextField.ts
src/2d/text/TextField.ts
+3
-6
tbminiAdapte.ts
src/2d/utils/tbminiAdapte.ts
+8
-0
index.ts
src/index.ts
+1
-1
No files found.
src/2d/display/Stage.ts
View file @
0cc8f760
...
@@ -12,6 +12,7 @@ import { WebglRenderer } from "../renderers/WebglRenderer";
...
@@ -12,6 +12,7 @@ import { WebglRenderer } from "../renderers/WebglRenderer";
import
{
CanvasRenderer
}
from
"../renderers/CanvasRenderer"
;
import
{
CanvasRenderer
}
from
"../renderers/CanvasRenderer"
;
import
{
SystemRenderer
}
from
"../renderers/SystemRenderer"
;
import
{
SystemRenderer
}
from
"../renderers/SystemRenderer"
;
import
{
getEnv
}
from
"../utils"
;
export
class
Stage
extends
Container
{
export
class
Stage
extends
Container
{
...
@@ -161,7 +162,7 @@ export class Stage extends Container {
...
@@ -161,7 +162,7 @@ export class Stage extends Container {
s
.
divHeight
=
divHeight
;
s
.
divHeight
=
divHeight
;
//@ts-ignore淘宝小程序环境下提前记录canvas偏移,到时需要修改id传入,再说把
//@ts-ignore淘宝小程序环境下提前记录canvas偏移,到时需要修改id传入,再说把
if
(
my
)
my
.
createSelectorQuery
().
select
(
'#canvas'
).
boundingClientRect
().
exec
((
r
)
=>
{
if
(
getEnv
()
==
"tb"
)
my
.
createSelectorQuery
().
select
(
'#canvas'
).
boundingClientRect
().
exec
((
r
)
=>
{
s
.
_canvasOffsetX
=
r
[
0
].
left
;
s
.
_canvasOffsetX
=
r
[
0
].
left
;
s
.
_canvasOffsetY
=
r
[
0
].
top
;
s
.
_canvasOffsetY
=
r
[
0
].
top
;
});
});
...
@@ -289,8 +290,8 @@ export class Stage extends Container {
...
@@ -289,8 +290,8 @@ export class Stage extends Container {
* @private
* @private
*/
*/
onMouseEvent
(
e
:
any
):
void
{
onMouseEvent
(
e
:
any
):
void
{
//
@ts-ignore
//
web环境才有
if
(
!
my
)
e
.
preventDefault
();
if
(
getEnv
()
==
"web"
)
e
.
preventDefault
();
let
s
:
Stage
=
this
;
let
s
:
Stage
=
this
;
//检查mouse或touch事件是否有,如果有的话,就触发事件函数
//检查mouse或touch事件是否有,如果有的话,就触发事件函数
if
(
EventDispatcher
.
_totalMEC
>
0
)
{
if
(
EventDispatcher
.
_totalMEC
>
0
)
{
...
@@ -316,8 +317,8 @@ export class Stage extends Container {
...
@@ -316,8 +317,8 @@ export class Stage extends Container {
// title: '55729:' + points.length
// title: '55729:' + points.length
// });
// });
let
offSetX
=
s
.
_canvasOffsetX
,
offSetY
=
s
.
_canvasOffsetY
;
let
offSetX
=
s
.
_canvasOffsetX
,
offSetY
=
s
.
_canvasOffsetY
;
//
@ts-ignore
//
web环境实时获取
if
(
!
my
)
{
if
(
getEnv
()
==
"web"
)
{
let
doc
=
document
.
documentElement
;
let
doc
=
document
.
documentElement
;
let
box
=
s
.
canvas
.
getBoundingClientRect
();
let
box
=
s
.
canvas
.
getBoundingClientRect
();
offSetX
=
box
.
left
+
window
.
pageXOffset
-
doc
.
clientLeft
;
offSetX
=
box
.
left
+
window
.
pageXOffset
-
doc
.
clientLeft
;
...
...
src/2d/loader/Loader.ts
View file @
0cc8f760
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
import
{
EventDispatcher
}
from
"../events/EventDispatcher"
;
import
{
EventDispatcher
}
from
"../events/EventDispatcher"
;
import
{
getCreateImage
}
from
"../utils"
;
import
{
getCreateImage
,
getEnv
}
from
"../utils"
;
/**
/**
* 加载器,不做缓存判断,所有的外部自行缓存,或者判断是否要进加载器
* 加载器,不做缓存判断,所有的外部自行缓存,或者判断是否要进加载器
...
@@ -93,7 +93,7 @@ export class Loader extends EventDispatcher {
...
@@ -93,7 +93,7 @@ export class Loader extends EventDispatcher {
// callback(false, res)
// callback(false, res)
// }
// }
// });
// });
if
(
my
)
{
if
(
getEnv
()
==
"tb"
)
{
this
.
tbLoad
(
callback
,
url
,
"utf8"
)
this
.
tbLoad
(
callback
,
url
,
"utf8"
)
return
return
}
}
...
...
src/2d/text/TextField.ts
View file @
0cc8f760
import
{
SCALE_MODES
,
TEXT_ALIGN
,
TEXT_lINETYPE
,
VERTICAL_ALIGN
,
osType
}
from
"../const"
;
import
{
SCALE_MODES
,
TEXT_ALIGN
,
TEXT_lINETYPE
,
VERTICAL_ALIGN
,
osType
}
from
"../const"
;
import
Texture
from
"../texture/Texture"
;
import
Texture
from
"../texture/Texture"
;
import
{
getRGBA
,
createCanvas
}
from
"../utils"
;
import
{
getRGBA
,
createCanvas
,
getEnv
}
from
"../utils"
;
import
{
Rectangle
}
from
"../math"
;
import
{
Rectangle
}
from
"../math"
;
import
Sprite
from
"../display/Sprite"
;
import
Sprite
from
"../display/Sprite"
;
import
{
BaseTexture
}
from
"../texture"
;
import
{
BaseTexture
}
from
"../texture"
;
...
@@ -450,11 +450,8 @@ export class TextField extends Sprite {
...
@@ -450,11 +450,8 @@ export class TextField extends Sprite {
* @since 1.0.0
* @since 1.0.0
*/
*/
private
_getMeasuredWidth
(
text
:
string
):
number
{
private
_getMeasuredWidth
(
text
:
string
):
number
{
let
ctx
=
this
.
context
;
//如果不是淘宝环境,就用canvas的api measureText
//ctx.save();
if
(
getEnv
()
==
"web"
)
return
this
.
context
.
measureText
(
text
).
width
// let w = ctx.measureText(text).width;
//ctx.restore();
// return w;
//暂时没修复,用最简单的量尺寸UuUuAaaA
//暂时没修复,用最简单的量尺寸UuUuAaaA
//中文
//中文
var
patternCh
=
new
RegExp
(
"[
\
u4E00-
\
u9FA5]+"
);
var
patternCh
=
new
RegExp
(
"[
\
u4E00-
\
u9FA5]+"
);
...
...
src/2d/utils/tbminiAdapte.ts
View file @
0cc8f760
let
env
:
"tb"
|
"web"
=
"web"
;
//如果是浏览器环境,声明个my为null,为了无声明不报错
if
(
window
)
window
[
"my"
]
=
null
;
export
function
getEnv
():
"tb"
|
"web"
{
return
env
}
/**
/**
* 创建一个离屏的canvas
* 创建一个离屏的canvas
*/
*/
...
@@ -19,6 +26,7 @@ export function initedByCanvas(canvas) {
...
@@ -19,6 +26,7 @@ export function initedByCanvas(canvas) {
requestAnimationFrame
:
canvas
.
requestAnimationFrame
.
bind
(
canvas
),
requestAnimationFrame
:
canvas
.
requestAnimationFrame
.
bind
(
canvas
),
cancelAnimationFrame
:
canvas
.
cancelAnimationFrame
.
bind
(
canvas
),
cancelAnimationFrame
:
canvas
.
cancelAnimationFrame
.
bind
(
canvas
),
}
}
env
=
"tb"
;
}
}
export
function
destroyCanvasContent
()
{
export
function
destroyCanvasContent
()
{
if
(
contentByCanvas
)
{
if
(
contentByCanvas
)
{
...
...
src/index.ts
View file @
0cc8f760
...
@@ -38,7 +38,7 @@ export * from "./tween";
...
@@ -38,7 +38,7 @@ export * from "./tween";
export
*
from
"./3d"
;
export
*
from
"./3d"
;
//如果是浏览器环境,声明个my为null,为了无声明不报错
//如果是浏览器环境,声明个my为null,为了无声明不报错
if
(
window
)
window
[
"my"
]
=
null
//
if (window) window["my"] = null
export
*
from
"./Stats"
;
export
*
from
"./Stats"
;
/**
/**
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment