Pixi.js: base64 데이터 URLκ³Ό ν•¨κ»˜ μž‘λ™ν•˜μ§€ μ•ŠλŠ” PIXI.Sprite.from()

에 λ§Œλ“  2019λ…„ 11μ›” 19일  Β·  3μ½”λ©˜νŠΈ  Β·  좜처: pixijs/pixi.js

μ˜ˆμƒλ˜λŠ” λ™μž‘

base64 데이터 URL λ¬Έμžμ—΄μ„ μ‚¬μš©ν•˜μ—¬ 이미지λ₯Ό Pixi μΊ”λ²„μŠ€μ— μ‚½μž…ν•˜λ €κ³  ν•©λ‹ˆλ‹€. 이미지가 카메라 ν”Όλ“œ(λΉ„λ””μ˜€ νƒœκ·Έ)μ—μ„œ μƒμ„±λ˜κΈ° λ•Œλ¬Έμ— μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€.

ν˜„μž¬ 행동

Sprite.from 의 첫 번째 μΈμˆ˜μ— 일반 이미지 URL을 μ‚½μž…ν•˜λ©΄ μž‘λ™ν•˜μ§€λ§Œ base64 데이터 URL을 μ‚¬μš©ν•  λ•ŒλŠ” μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

예: https://codepen.io/gigamesh/pen/GRRzdrL?editors=1111

λ‚΄κ°€ μ‹œλ„ν•˜λŠ” 것이 κ°€λŠ₯ν•œκ°€? κ·Έλ ‡λ‹€λ©΄ μ–΄λ–»κ²Œ?

ν™˜κ²½

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

이 μŠ€λ ˆλ“œλ₯Ό μ°ΎλŠ” μ‚¬λžŒμ„ μœ„ν•œ μ†”λ£¨μ…˜μ€ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

// img tag points to base64 URL
  const image = document.querySelector('img')
  const base = new PIXI.BaseTexture(image);
  const texture = new PIXI.Texture(base);
  const sprite = new PIXI.Sprite(texture);

https://codepen.io/Slaz/pen/bGGzxPw?editors=1111

λͺ¨λ“  3 λŒ“κΈ€

data:image/gif - λΆˆκ°€λŠ₯ν•©λ‹ˆλ‹€. μžμ‹ μ˜ gif 디코더가 ν•„μš”ν•©λ‹ˆλ‹€. μ–΄λ””μ„ κ°€ 가지고 μžˆμ—ˆλŠ”λ°...

ν…μŠ€μ²˜ μƒμ„±μžμ— 직접 λΉ„λ””μ˜€ μš”μ†Œλ₯Ό 전달할 수 μžˆμŠ΅λ‹ˆλ‹€( from 호좜).

이 μŠ€λ ˆλ“œλ₯Ό μ°ΎλŠ” μ‚¬λžŒμ„ μœ„ν•œ μ†”λ£¨μ…˜μ€ λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

// img tag points to base64 URL
  const image = document.querySelector('img')
  const base = new PIXI.BaseTexture(image);
  const texture = new PIXI.Texture(base);
  const sprite = new PIXI.Sprite(texture);

https://codepen.io/Slaz/pen/bGGzxPw?editors=1111

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰