• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Jak złączyć kilka obrazów w jeden za pomocą javascripta lub jquery?

+1 głos
522 wizyt
pytanie zadane 28 czerwca 2020 w JavaScript przez SCpl Użytkownik (590 p.)
edycja 29 czerwca 2020 przez SCpl

Ja potrzebuję to do innego kodu, ale żeby było prościej daje ten:

<html lang="pl">
	<head>
		<meta charset="utf-8">
		<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
	</head>
	<body>
		<canvas style="position: absolute" id="bg-canvas" width="512" height="288"></canvas>
		<canvas style="position: absolute" id="fg-canvas" width="512" height="288"></canvas>
        <img id="image">

		<script src="script.js"></script>
	</body>
</html>
window.onload = start();

function start() {
	[...]
    var finishImage = [...];
    [...]
    document.getElementById("image").src = finishImage; 
}

I zakładamy, że funkcja start ma połączone obrazy wyświetlić pod płótnami. Z łączeniem obrazów chodzi mi o to, żeby tam gdzie na fg-canvas są przezroczyste piksele było widać piksele, które były w tym samym miejscu na bg-canvas. Serdecznie pozdrawiam. :D

Z powodu nieścisłości dam pewien przykład zastosowania takiego mechanizmu. Załóżmy, że chciałbym zrobić painta w przeglądarce z warstwami obrazu, a potem dać możliwość pobrania pliku w formacie png ze złączonymi warstwami. Czyli jak mamy dwie warstwy to w miejscach, gdzie są przezroczyste na wyższej warstwie widać piksele, które są na tej niższej.

komentarz 29 czerwca 2020 przez VBService Ekspert (256,660 p.)
komentarz 29 czerwca 2020 przez SCpl Użytkownik (590 p.)
No chodzi, żeby na złączonym obrazie były widoczne wszystkie piksele fg-canvas i wszystkie piksele bg-canvas, które są na tej samej pozycji co przezroczyste piksele fg-canvas.
komentarz 29 czerwca 2020 przez SCpl Użytkownik (590 p.)
edycja 29 czerwca 2020 przez SCpl
Na złączonym*. I on ma właśnie powstać z dwóch innych, które są na płótnach. Przykładowo chciałbym zrobić painta w przeglądarce z warstwami obrazu, a potem dać możliwość pobrania pliku w formacie png ze złączonymi warstwami.
komentarz 29 czerwca 2020 przez VBService Ekspert (256,660 p.)
edycja 29 czerwca 2020 przez VBService

1 odpowiedź

+1 głos
odpowiedź 29 czerwca 2020 przez DawidK Nałogowiec (37,890 p.)

Przypuszczam, że właściwość: globalCompositeOperation może Ci pomóc, daje różne możliwości zachowania się dodawanych elementów i tych już umieszczonych na canvasie, typu odejmowanie, miksowanie, dodawanie, pokazywanie na wierzchu /pod spodem.

Podobne pytania

0 głosów
4 odpowiedzi 1,454 wizyt
+1 głos
2 odpowiedzi 1,761 wizyt
+1 głos
1 odpowiedź 284 wizyt
pytanie zadane 5 stycznia 2016 w JavaScript przez Majkel Nowicjusz (210 p.)

93,771 zapytań

142,731 odpowiedzi

323,383 komentarzy

63,371 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...