Generieren Sie Animierte GIF mit GM in Node.js
also ich habe, um diese ein für ein paar Tage und habe den Punkt, wenn ich bereit bin, um Hilfe zu bitten.
Ich versuche zu generieren, eine animierte gif-Datei mit in ein node.js basierte app, mit der graphicsmagic Paket.
Habe ich generiert mehrere Folien, die sehen ein bisschen, wie
var slides = [];
for (var i=0; i < 10; i++) {
var slide = gm(200, 200, '#000000')
.fill('#ffffff')
.drawText("Slide #"+ i);
slides.push(slide);
}
Kann ich konvertieren Sie Sie entweder in den Stream oder Puffer, ich kann speichern Sie Sie als einzelne Dateien auf der Festplatte und ein bisschen arbeiten
Aber mein problem ist, wie man eine animierte gif von Dias, die völlig im Speicher, ohne speichern der einzelnen Dateien auf einer Festplatte?
Sehe ich gm
hat Methoden wie #delay()
und #page()
und technisch so konnte ich das Handwerk einen Befehl wie
convert -delay 200 -page slide1.gif -page slide2.gif output.gif
Ich weiß nur nicht, wie. Ich denke es sollte ungefähr so aussieht, dass
var end_image = gm(200, 200, '#000000');
end_image.delay(500);
for (var i=0; i < slides.length; i++) {
slides[i].toBuffer(function(err, buffer) {
end_image.page(200, 200, ????);
});
}
end_image.write("output.gif");
im Grunde weiß ich nicht, wie konvertiert einen Puffer in ein argument für gm
Jemand vorher getan? Vielleicht gibt es einen anderen Weg?
PS: ich habe versucht, die gifencoder
- Paket als gut, und erfolgreich gefüttert, die gm
Puffer als Bilder in ein gifencoder-API, aber der Ausgang war kaputt.
- Sie waren in der Lage, um dies herauszufinden? Ich habe versucht, sowohl die gifencoder (so weit wie es klingt wie Sie haben, bekomme aber "segmentation fault" beim Versuch Sie zu verwenden addFrame() mit Puffer) und die gif-Modul (das scheint zu funktionieren nur mit älteren Versionen von Knoten).
- nope, habe es durch dumping eine Reihe von Dateien in
/tmp
und Beschuss aus - Ich habe den code dazu mit dem JIMP Bibliothek, aber ich versuche herauszufinden, wie dies mit den GM selbst
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es die gif - Modul ermöglicht Ihnen das erstellen von statischen und animierten gifs, die Ihnen helfen können.
/tmp
Ordner. ich brauche, um zu verarbeiten, alles, wasEs ist vielleicht nicht genau die Antwort, die Sie gesucht, aber ich denke, dass im folgenden nicht die Frage beantworten, Titel: "so generieren Sie eine animierte gif-Datei mit GM in Node.js"
Für alle, die sich für eine JavaScript-encoder (im Gegensatz zu einer C++ - Knoten-Modul), gifencoder scheint in der Lage sein, die Arbeit zu tun. Ein Beispiel aus deren Seite: