Ich habe eine einfache mobile App. Es startet mit dem Auflauf des Benutzerfunction handleFileSelect(evt) {
var files = evt.target.files;
var f = files[0];
console.log(evt);
var ctx = document.getElementById("myCanvas").getContext('2d'),
img = new Image(),
f = document.getElementById("uploadbutton").files[0],
url = window.URL || window.webkitURL,
src = url.createObjectURL(f);
img.src = src;
lastImage = img;
img.onload = function()
{
window.requestAnimationFrame(function(){
var w = window.innerWidth;
var h = window.innerHeight;
ctx.clearRect(0, 0, w, h);
ctx.drawImage(lastImage, 0, 0);
//url.revokeObjectURL(src);
});
}}
< /code>
In meinem Webbrowser und auf meinem Telefon wird das Bild in einer Leinwand ordnungsgemäß geladen und angezeigt. Ich habe jedoch von einem Benutzer gehört, der es auf einem Razr Maxx HD mit Google Chrome ausgeführt hat, dass er "Fehler nicht laden kann, da es den vorherigen Vorgang aufgrund eines geringen Speichers lädt". Ich vermute, dass dieses
Problem nicht durch Lesen im Bild gelöst werden kann und es dann vor der Anzeige skaliert wird, da das vollständige Bild bereits in den Speicher geladen wurde, auch wenn nicht angezeigt wird. Gibt es eine Möglichkeit, eine skalierte Version eines Bildes in den Speicher zu laden, ohne zuerst das gesamte Ding zu laden? Eine Idee, was dieses
Problem verursacht, da ich in der Lage bin, massive Bilder auf meinem Galaxy S3 in Chrome zu laden, und das Galaxy S3 hat die gleiche Menge RAM wie der Razr Maxx HD?
Ich habe eine einfache mobile App. Es startet mit dem Auflauf des Benutzerfunction handleFileSelect(evt) {
var files = evt.target.files;
var f = files[0];
console.log(evt);
var ctx = document.getElementById("myCanvas").getContext('2d'),
img = new Image(),
f = document.getElementById("uploadbutton").files[0],
url = window.URL || window.webkitURL,
src = url.createObjectURL(f);
img.src = src;
lastImage = img;
img.onload = function()
{
window.requestAnimationFrame(function(){
var w = window.innerWidth;
var h = window.innerHeight;
ctx.clearRect(0, 0, w, h);
ctx.drawImage(lastImage, 0, 0);
//url.revokeObjectURL(src);
});
}}
< /code>
In meinem Webbrowser und auf meinem Telefon wird das Bild in einer Leinwand ordnungsgemäß geladen und angezeigt. Ich habe jedoch von einem Benutzer gehört, der es auf einem Razr Maxx HD mit Google Chrome ausgeführt hat, dass er "Fehler nicht laden kann, da es den vorherigen Vorgang aufgrund eines geringen Speichers lädt". Ich vermute, dass dieses [url=viewtopic.php?t=26065]Problem[/url] nicht durch Lesen im Bild gelöst werden kann und es dann vor der Anzeige skaliert wird, da das vollständige Bild bereits in den Speicher geladen wurde, auch wenn nicht angezeigt wird. Gibt es eine Möglichkeit, eine skalierte Version eines Bildes in den Speicher zu laden, ohne zuerst das gesamte Ding zu laden? Eine Idee, was dieses [url=viewtopic.php?t=26065]Problem[/url] verursacht, da ich in der Lage bin, massive Bilder auf meinem Galaxy S3 in Chrome zu laden, und das Galaxy S3 hat die gleiche Menge RAM wie der Razr Maxx HD?