Lösung Funktion mergeImgs(Liste) { const imgDom = document.createElement('img') Dokument.Body.AnhängenUntergeordnetesElement(imgDom) const canvas = document.createElement('canvas') Leinwandbreite = 500 Leinwandhöhe = 500 * Listenlänge const Kontext = Canvas.getContext('2d') Liste.Map((Element, Index) => { const img = neues Bild() img.src = Artikel // Domänenübergreifend img.crossOrigin = "Anonym" img.onload = () => { Kontext.drawImage(Bild, 0, 500 * Index, 500, 500) const base64 = canvas.toDataURL('bild/png') imgDom.setAttribute('src', base64) // console.log(Basisliste) } }) } const urlList = ['./img/timg%20(1).jpg', './img/timg.jpg'] Bilder zusammenführen(URL-Liste) Optimieren Sie den Code leicht und ändern Sie ihn in eine öffentliche Methode /** * Mehrere Bilder zusammenführen und ein neues Bild zurückgeben * @param {Array} Liste Bild-URL-Array * @param {Number} cwith Die Leinwandbreite beträgt standardmäßig 500 * @param {Number} cheight Die Standardhöhe der Leinwand beträgt 500 */ Funktion mergeImgs(Liste, cwith = 500, cheight = 500) { returniere neues Promise((lösen, ablehnen) => { const Basisliste = [] const canvas = document.createElement('canvas') canvas.width = cmit Leinwandhöhe = Leinwandhöhe * Listenlänge const Kontext = Canvas.getContext('2d') Liste.Map((Element, Index) => { const img = neues Bild() img.src = Artikel // Domänenübergreifend img.crossOrigin = "Anonym" img.onload = () => { Kontext.drawImage(Bild, 0, cheight * Index, cwith, cheight) const base64 = canvas.toDataURL('bild/png') Basisliste.push(base64) if (Basisliste[Listenlänge - 1]) { console.log(Basisliste) //Gib das neue Bild zurück: resolve(baseList[list.length - 1]) } } }) }) } const urlList = ['./img/timg%20(1).jpg', './img/timg.jpg'] mergeImgs(urlList ).then(base64 => { const imgDom = document.createElement('img') imgDom.src = base64 Dokument.Body.AnhängenUntergeordnetesElement(imgDom) }) Wirkung Dies ist das Ende dieses Artikels über den Implementierungscode von js mit Canvas zum Zusammenführen mehrerer Bilder zu einem. Weitere relevante Inhalte zum Zusammenführen von js-Canvas-Bildern finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
>>: Grundkenntnisse zum Lastenausgleich und ein einfaches Beispiel zum Lastenausgleich mit nginx
Unter Ubuntu kommt es häufig vor, dass sich das T...
In diesem Artikel wird der spezifische Code von j...
Der Dateiserver ist einer der am häufigsten verwe...
Lösung 1: Verwenden Sie bedingten Import im HTML-...
Wenn viele Daten angezeigt werden müssen, ist die...
Kerncode -- Im Folgenden werde ich die Implementi...
Geben Sie den laufenden Container ein # Geben Sie...
Vorwort Projektanforderungen: Installieren Sie da...
Fügen Sie secure_file_priv = ' '; führen ...
1. Schreiben Sie ein Split-Skript (splitNginxLog....
Besonderer Hinweis: Es wird nur die Swoole-Erweit...
Bei der Arbeit an einem Projekt bin ich kürzlich ...
Das MySQL auf einem Server im Computerraum lief e...
Einführung: Im Internet gibt es zahlreiche Inform...
1. Auf welche Probleme sind wir gestoßen? In Stan...