Das HTML-Spezifikationsdokument führt das Crossorigin-Attribut für Bilder ein. Durch Festlegen der entsprechenden Header-Informationen CORS können img-Bilder von anderen Websites geladen und in Canvas verwendet werden, als ob sie direkt von der aktuellen Website (aktueller Ursprung) heruntergeladen worden wären. Einzelheiten zur Verwendung des Crossorigin-Attributs finden Sie unter CORS-Einstellungsattribute. Was ist „verunreinigte“ Leinwand? Obwohl es möglich ist, Bilder in der Leinwand ohne CORS-Autorisierung zu verwenden, wird hierdurch die Leinwand beschädigt. Sobald die Leinwand verunreinigt ist, können Sie keine Daten mehr aus der Leinwand extrahieren, was bedeutet, dass Sie keine Methoden wie toBlob(), toDataURL() und getImageData() mehr aufrufen können, da sonst ein Sicherheitsfehler ausgegeben wird. Dies dient dazu, die persönlichen Daten des Benutzers zu schützen und zu verhindern, dass Bildinformationen des Benutzers ohne Erlaubnis von Remote-Websites geladen werden, was zu einem Verstoß gegen die Privatsphäre führen würde.
Beispiel: Bild von anderer Site speichern Zuerst muss der Bildserver den entsprechenden <IfModule mod_setenvif.c> <IfModule mod_headers.c> <FilesMatch "\.(cur|gif|ico|jpe?g|png|svgz?|webp)$"> SetEnvIf Herkunft ":" IS_CORS Header-Satz Access-Control-Allow-Origin "*" env=IS_CORS </FilesMatch> </IfModule> </IfModule> Wenn diese Einstellungen wirksam sind, können Sie Bilder von anderen Sites wie Ihre eigenen Ressourcen im DOM-Speicher (oder anderswo) speichern. var img = neues Bild, Leinwand = Dokument.createElement("Leinwand"), ctx = canvas.getContext("2d"), src = "http://example.com/image"; // Spezifische Bildadresse img.crossOrigin = "Anonymous"; img.onload = Funktion() { Leinwand.Breite = Bild.Breite; Leinwandhöhe = Bildhöhe; ctx.drawImage(Bild, 0, 0); localStorage.setItem( "savedImageData", canvas.toDataURL("image/png") ); } img.src = Quelle; // Stellen Sie sicher, dass zwischengespeicherte Bilder auch das Ladeereignis auslösen, wenn ( img.complete || img.complete === undefined ) { img.src = "data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw=="; img.src = Quelle; } Browserkompatibilität Desktop
Mobile
Siehe auch Chrome: Verwenden von Cross-Origin-Bildern in WebGL HTML-Spezifikation - Crossorigin-Attribut Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird. |
>>: Detailliertes Beispiel zum Einfügen benutzerdefinierter HTML-Datensätze im Quill-Editor
Inhaltsverzeichnis 1. Inline-Stile 2. Importmetho...
Natürlich fließen auch einige persönliche Erfahrun...
Eine kurze Einführung in protobuf Protobuf ist Go...
Inhaltsverzeichnis 1. Erstellen regulärer Ausdrüc...
1.v-bind (Abkürzung:) Um in Daten definierte Date...
1. MySQL herunterladen 1. Melden Sie sich auf der...
Hintergrund Der Unternehmenscode wird Dritten zur...
Dieses Tutorial ist nur auf Windows-Systemen anwe...
Inhaltsverzeichnis Vorwort 1. Ereignisse und Zwis...
Closures sind eines der traditionellen Features r...
In diesem Artikelbeispiel wird der spezifische Co...
Vorne geschrieben Im heutigen Internetbereich ist...
Inhaltsverzeichnis Vorwort analysieren Daten insg...
Definition und Verwendung Das <input>-Tag w...
Zum Einfügen von Bildern in HTML sind HTML-Tags f...