UImage zu NSData für Core-Daten in Swift 3.0

8

Also konnte ich in Swift 2.2 Entity.image = UIImagePNGRepresentation(UIImage(named: "Image Name")!)

verwenden

Aber jetzt in Swift 3.0 scheint es, dass wir jetzt einen zusätzlichen Schritt brauchen. Entity.image = NSData(data: UIImagePNGRepresentation(UIImage(named: "Image Name")!)) Oder das Objektäquivalent von UIImage(name: "Image Name")

Gibt es in Swift 3.0 eine neue Möglichkeit, von UIImage zu NSData zu wechseln?

    
Jason Brady 02.10.2016, 23:43
quelle

4 Antworten

25

Versuchen Sie Folgendes:

%Vor%     
Quang Hà 03.10.2016, 04:02
quelle
7

Um Code sicher auszuführen, verwenden Sie if-let mit Daten blockieren, da die Funktion UIImagePNGRepresentation einen optionalen Wert zurückgibt.

%Vor%
  

Hinweis: Daten ist Swift 3-Klasse. Verwenden Sie Daten statt NSData mit   Swift 3

Generische Bildoperationen (wie zB png & amp; jpg):

%Vor%

Durch Verwendung der Erweiterung:

%Vor%     
Krunal 18.02.2017 08:50
quelle
1
___ antwort43370612 ___

Die Verwendung von UIImagePNGRepresentation zum Konvertieren von UIImage in Data kann bei der Konvertierung der Daten manchmal zu verzerrten Bildern führen, da bei der ursprünglichen Konvertierung einige wichtige Metadaten aus den ursprünglichen Daten entfernt werden.

Nach einigen Recherchen habe ich den folgenden Code erhalten, um UIImage in Data zu konvertieren:

%Vor%     
___ answer39824459 ___

Versuchen Sie Folgendes:

%Vor%     
___ tag123ios ___ iOS ist das mobile Betriebssystem, das auf dem Apple iPhone, iPod touch und iPad ausgeführt wird. Verwenden Sie dieses Tag [ios] für Fragen zur Programmierung auf der iOS-Plattform. Verwenden Sie die verwandten Tags [objective-c] und [swift] für Probleme, die für diese Programmiersprachen spezifisch sind. ___ answer43304658 ___

Verwenden Sie als Erweiterung, um PNG- oder JPG-imageData als NSData zu erhalten.

%Vor%     
___ tag123swift3 ___ Verwenden Sie dieses Tag nur für Fragen, die sich direkt auf Änderungen in Version 3 der Apple Swift-Programmiersprache beziehen. Verwenden Sie das Tag [swift] für allgemeinere Sprachfragen oder die Tags [ios], [cocoa], [apple-watch] usw. für Fragen zur Entwicklung auf Apple-Plattformen. ___ tag123uiimage ___ Die grundlegende Bildverarbeitungsklasse von Cocoa-Touch unter iOS. Es ist verfügbar in iOS 2.0 und höher. ___ tag123ios10 ___ iOS 10 ist die zehnte Version von Apples iOS-Mobilbetriebssystem. Es wurde am 13. Juni 2016 auf der Apple Worldwide Developers Conference (WWDC) des Unternehmens angekündigt. Das ios10-Tag sollte für Fragen verwendet werden, die für das Betriebssystem Apple iOS 10 spezifisch sind. Allgemeine iOS-Fragen sollten das ios-Tag verwenden. ___ tag123nsdata ___ Die NSData-Klasse ist eine Apple-Klasse zum Speichern generischer Daten. Wird oft beim Lesen / Schreiben von Dateien und im Internet verwendet. ___ qstnhdr ___ UImage zu NSData für Core-Daten in Swift 3.0 ___ qstntxt ___

Also konnte ich in Swift 2.2 %code%

verwenden

Aber jetzt in Swift 3.0 scheint es, dass wir jetzt einen zusätzlichen Schritt brauchen. %code% Oder das Objektäquivalent von %code%

Gibt es in Swift 3.0 eine neue Möglichkeit, von %code% zu %code% zu wechseln?

    
___ answer42313083 ___

Um Code sicher auszuführen, verwenden Sie if-let mit Daten blockieren, da die Funktion UIImagePNGRepresentation einen optionalen Wert zurückgibt.

%Vor%
  

Hinweis: Daten ist Swift 3-Klasse. Verwenden Sie Daten statt NSData mit   Swift 3

Generische Bildoperationen (wie zB png & amp; jpg):

%Vor%

Durch Verwendung der Erweiterung:

%Vor%     
___
Ely 12.04.2017 13:14
quelle
0

Verwenden Sie als Erweiterung, um PNG- oder JPG-imageData als NSData zu erhalten.

%Vor%     
quelle

Tags und Links