Güncelleme Cevap şimdi Temelde
:-) daha iyi kendim anlamak, base64 böyle openssl
kullanarak bir görüntü kodlamak:
openssl enc -base64 -in image.png > image.b64
Ancak eğer ImageMagick
'u okumak için, ImageMagick
'u aşağıdakileri söylemek için başlangıçta küçük bir başlık gerekir. başlık içermelidir: Yukarıdaki openssl
komutunu kullanarak oluşturulan sizin base64 kodlanmış verilerle
data:image/png;base64,
izledi. Yani, kabuk vardır özelliklere bağlı olarak, sen bash
bir bileşik ifadesiyle şöyle yapabilirsiniz:
{ echo "data:image/png;base64,"; openssl enc -base64 -in input.png; } > image.b64
veya Windows böyle
:
echo data:image/png;base64, > image.b64
openssl enc -base64 -in image.png >> image.b64
o görüntüyü sahip olduktan sonra biçimi, daha sonra böyle ImageMagick
ile işlemeye devam edebilirsiniz:
convert inline:image.b64 result.png
Orijinal Cevap
MUCH deneyinden sonra, yapabilirim!:-)
Eric'in (@emcconville) kurulumu ile
Başlangıç : şimdi
# For example
convert rose: rose.png
# Create base64 file
openssl enc -base64 -in rose.png -out rose.txt
ve son satır olarak bu pisliği ekleyin:
{ echo "data:image/png;base64,"; cat rose.txt; } | convert inline:- out.jpg
Ben data:image/png;base64,
tahmin base64 bulunmaz openssl
tarafından oluşturulan dosya, bu yüzden dosyayı artı ImageMagick
stdin
gönderen bir bileşik deyim oluşturmak.
Korkarım ki bana temelde aynı hatayı verdi: "convert: bozuk görüntü" veri: - '@ error/constitute.c/ReadInlineImage/910. " Orijinal dosyada satır bitişi (unix) dışında herhangi bir boşluk görmüyorum. – skiphoppy
Aynı mesajı yeni bir görüntüden yeniden oluşturabilir misiniz? – emcconville
Evet, kullandığım herhangi bir base64 görüntüsüyle anladım. – skiphoppy