Frage

Ist es möglich, dynamisch erstellen und ändern Bilder auf pro Pixelebene in JavaScript (auf Client-Seite)? Oder hat diese werden mit dem Server erfolgt basierend languaged, wie PHP?

Ihr Anwendungsfall ist wie folgt:

  • Der Benutzer öffnet die Homepage und lädt lokal gespeicherte Bild
  • Eine Vorschau des Bildes wird angezeigt
  • Der Benutzer kann das Bild mit einem Satz von Schiebern (Pixelebene Operationen)
  • ändern
  • Am Ende er das Bild auf seine lokale Festplatte herunterladen

Wenn in dem Web-Suche fand ich nur Beiträge über IE-Filterverfahren verwendet wird, aber nichts über Bildbearbeitungsfunktionen nicht in JavaScript finden.

War es hilfreich?

Lösung

haben diese auf der Serverseite durchgeführt werden. Eine Sache, die Sie tun aussehen könnte, wird so dass alle die Bearbeitung auf Client-Seite gehen, und dann am Ende des POST das endgültige Bild (via AJAX) an den Server, damit sie es für Sie als den richtigen MIME-Typ zurück, und richtig verpackt.

Andere Tipps

Einige Browser unterstützen die Leinwand: http://developer.mozilla.org/En/Drawing_Graphics_with_Canvas

Sie möchten überprüfen, Processing.js . John Resig von jQuery Ruhm schrieb es. Es unterstützt Pixelverarbeitung, leider nur 3 Firefox es ausreichend verarbeiten kann.

Schauen Sie auch unter Daten URIs (obwohl IE-Versionen unter 8 nicht unterstützen sie leider!)

Sie können einen Satz von JS Tools vorstellen, die der Benutzer zu definieren, welche Art von Transformation ermöglicht er tun möchte, aber die endgültige Arbeit der Transformation muss auf einem Server-Seite durchgeführt werden. JS auf der Client-Seite ist nicht in der Lage, eine Datei, aus Sicherheitsgründen zu erstellen.

Versuchen Sie Allicorn das Bild Retargetter - es ist wie das klingt ist das, was Sie suchen .

Lokale Bildmanipulation in JavaScript sollte möglich sein - einen Blick auf Verteidiger der Favicon . ;-) Die Frage ist, wie das Originalbild aus dem Dateisystem in der Seite zu bekommen (ich weiß nicht von irgendeiner anderen Art und Weise als einen HTTP Upload auf den Server zuerst tun).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top