Weiß jemand, wie man ein konvertiert UIImage
in einen Base64-String und ihn dann umkehrt?
Ich habe den folgenden Code; Das Originalbild vor dem Codieren ist gut, aber ich erhalte erst ein leeres Bild, nachdem ich es codiert und decodiert habe.
NSData *imageData = UIImagePNGRepresentation(viewImage);
NSString *b64EncStr = [self encode: imageData];
NSString *base64String = [self encodeBase64:imageData];
Antworten:
Schnell
Zuerst müssen wir die NSData des Bildes haben
Swift 2.0> Codierung
Swift 2.0> Dekodierung
Swift 3.0> Dekodierung
Codierung :
Dekodierung :
Swift 3.0
Ziel c
iOS7> Version
Sie können verwenden
NSData's
base64EncodedStringWithOptions
Codierung :
Dekodierung :
iOS 6.1 und <Version
Erste Option : Verwenden Sie diesen Link zu
encode
unddecode
BildFügen Sie Ihre Base64- Klasse hinzu
project
.Codierung :
Dekodierung :
Eine weitere Option : Verwenden Sie QSUtilities für
encoding
unddecoding
quelle
Base64
Klasse schläft für immer, ich erzwinge immer ziemlich xcode, wenn ich dies auch verwende, nachdem ich die Bildqualität auf 0,001f eingestellt habedata:image/jpeg;base64,
Swift 4.2 Erweiterungsmethode
XCode 9.1 und Swift 4.0
quelle
SWIFT 3.0, XCODE 8.0
Ersetzen Sie String durch Ihre URL. und testImage ist ein Ausgang von ImageView
Hoffe es hilft Danke.
quelle
Swift 5
Codierung
Dekodierung
Swift 4
Codierung
Dekodierung
quelle
Schnelles iOS8
quelle
Swift 3.0
So konvertieren Sie ein Bild in eine base64-Zeichenfolge
Auf dem Spielplatz getestet
quelle
quelle
Verwenden Sie in Swift 2.0 diese Erweiterung (Dank an Jonas Franz)
quelle
In Swift 3.0 und Xcode 8.0
Codierung:
Dekodierung:
quelle
Schnelle Erweiterung:
quelle
let imageData = UIImagePNGRepresentation(ImageView.image!); let strBase64:String = imageData!.base64EncodedString()
Swift 4
quelle
Swift 5.
quelle
Schnelle Version - Erstellen Sie base64 für das Image
Meiner Meinung nach implizit entpackt Optional im Falle von
UIImagePNGRepresenatation()
ist nicht sicher, daher empfehle ich die Verwendung der folgenden Erweiterung:quelle
quelle
In Swift 3.0
quelle
Ich habe alle Lösungen ausprobiert, keine hat für mich funktioniert (mit Swift 4). Dies ist die Lösung, die für mich funktioniert hat, wenn in Zukunft jemand das gleiche Problem hat.
quelle
Swift 4.2 | Xcode 10
quelle
Swift 5, Xcode 10.
quelle
quelle
Für iOS 7+, Objective-C, können Sie die Konvertierung mit einer Bild-URL beginnen:
quelle
Swift 3.0 und Xcode 8.0
quelle
Für den Base64-Code wie:
Verwenden Sie den Swift5.0-Code:
quelle
Es ist sehr gut zu verstehen, ob Sie das Präfix übergeben, wie Tyler Sheaffer sagte. Aus irgendeinem Grund benötigen Sie möglicherweise dieses Präfix, das den MIME-Typ am Anfang der Base64-Zeichenfolge beschreibt. Daher empfehle ich diesen Code, um einige Optionen vor dem Codieren zu übergeben ( Swift 5 ):
quelle