webentwicklung-frage-antwort-db.com.de

Wie kann ich einem Asset-Katalog in Xcode JPEGs hinzufügen?

Ist es möglich, andere Assets als PNG-Dateien zu einem Xcode-Asset-Katalog hinzuzufügen? 

Wenn ich JPEG-Dateien in einen Asset-Katalog ziehe, werden sie von der Benutzeroberfläche nicht akzeptiert.

57

Sie können Nicht-PNG-Assets hinzufügen, indem Sie die JSON-Darstellung des Assets manuell bearbeiten. Am einfachsten ist es, ein vorhandenes Asset zu kopieren und zu ändern:

  1. Klicken Sie mit der rechten Maustaste auf ein vorhandenes Asset und wählen Sie In Finder anzeigen
  2. Kopieren Sie das vorhandene .imageset-Element, fügen Sie es ein und benennen Sie es um, z. my_image.imageset
  3. Doppelklicken Sie auf den neuen .imageset.
  4. Löschen Sie alle vorhandenen Bilder im Ordner
  5. Kopieren Sie in Ihre JPEG-Dateien
  6. Bearbeiten Sie die Datei Contents.json und ersetzen Sie die Werte für den Schlüssel filename durch Ihre JPEG-Dateinamen

Ihr Contents.json sieht ungefähr so ​​aus:

{
  "images" : [
    {
      "idiom" : "universal",
      "scale" : "1x",
      "filename" : "my_image.jpg"
    },
    {
      "idiom" : "universal",
      "scale" : "2x",
      "filename" : "[email protected]"
    }
  ],
  "info" : {
    "version" : 1,
    "author" : "xcode"
  }
}

Vergewissern Sie sich, dass Sie sich auf Ihr Bild mit Namen und ohne Erweiterung beziehen:

[UIImage imageNamed:@"my_image"]

Dieser Ansatz funktioniert für GIFs und andere Assets, da diese zum Erstellungszeitpunkt nur in das Hauptpaket der App kopiert werden. Es ist erwähnenswert, dass die Bilder beim Kopieren in das Bundle mit einer PNG-Erweiterung enden, aber trotzdem korrekt geladen werden.

46

Ab Xcode 6.1 können nun JPG-Bilder einem Bestandskatalog hinzugefügt werden. Die Schritte zum Hinzufügen sind:

  1. Exportieren Sie Ihre JPG in der gewünschten Qualität unter Verwendung der gleichen Namenskonventionen wie für PNGs (d. H. heart.jpg[email protected][email protected]).
  2. Ziehen Sie die JPGs aus dem Finder in Ihren Asset-Katalog, und fügen Sie dem Asset alle spleiß- oder gerätespezifischen Einstellungen hinzu
  3. Ändern Sie "Rendern als" in "Originalbild" für alle JPGs (andernfalls erscheinen sie im Simulator und auf dem Gerät leer).
33
Kevin Sylvestre

Es scheint, Sie können jetzt JPEGs in Xcode 6.0 Beta ziehen und ablegen

11
onbek

In Xcode 6.x können Sie JPEG-Dateien per Drag & Drop in den Asset-Katalog ziehen. Wenn Sie einen UIImage aus dem Asset erstellen, stellen Sie sicher, dass Sie die Erweiterung .jpg wie folgt verwenden:

[UIImage imageNamed:@"myimage.jpg"];

Wenn die Erweiterung nicht enthalten ist, erscheint das Bild nur weiß/leer.

4
gavdotnet

Sie können image.jpg auch in image.png umbenennen, wenn Sie die Contents.json-Datei nicht ändern möchten. Sie können die Bilder dann dem Bestandskatalog hinzufügen, obwohl sie intern noch JPEG-Dateien sind. Sie können sie sogar mit Xcode schneiden.

Wenn die Anwendung kompiliert wird, werden alle Assets in der Datei Assets.car gespeichert. Ich habe nicht überprüft, ob sie zu diesem Zeitpunkt in png konvertiert werden.

1
Carlos Parada

Probieren Sie Folgendes aus: Importieren Sie schnell Ressourcenskripts, um die Importgeschwindigkeit zu beheben und Probleme umzubenennen https://github.com/qdvictory/happyxcasset

0
Seamus