O que é um imageset?

Um imageset do Xcode é uma pasta de recurso com nome, que contém os arquivos de imagem e uma descrição Contents.json. Ela fica dentro de um catálogo Assets.xcassets. O app usa o nome do recurso, e o catálogo descreve qual arquivo fornece cada escala ou representação.

O exportador de image assets para iOS cria essa estrutura de pastas a partir de uma arte que você envia ou de um resultado que você já desbloqueou. Ele pode empacotar um SVG vetorial simples ou renderizar variantes em PNG transparente. Ele não transforma uma foto em caminhos vetoriais só por colocá-la dentro de um catálogo.

Escolha vetor para uma arte simples e escalável

Escolha SVG vetorial quando a imagem original for um SVG feito de caminhos sólidos e formas simples. O exportador achata a geometria compatível e grava um imageset com Preserve Vector Data ativado. Image assets em SVG exigem iOS 13 ou posterior.

O conversor usa, de propósito, um conjunto restrito de recursos vetoriais. O texto deve ser convertido em contornos antes, e degradês, máscaras, recortes e outros efeitos exigem saída em PNG nesta ferramenta. Recursos não compatíveis geram um erro, para você escolher uma alternativa adequada. Tudo o que não é seguro, como um script, é removido e listado; leia os avisos antes de importar os arquivos.

Um arquivo vetorial preserva a geometria escalável, mas não melhora o design automaticamente. Um traçado complicado demais, com milhares de formas minúsculas, pode ser menos útil que um bitmap limpo. Confira a imagem nos tamanhos que a sua interface realmente usa, principalmente onde houver traços finos ou letras pequenas.

Escolha PNG para recursos de imagem de tamanho fixo

As variantes em PNG aceitam SVG, PNG, JPEG, WebP e HEIC. Um SVG é renderizado em PNG; um PNG, JPEG, WebP ou HEIC enviado tem os metadados removidos. A transparência é mantida. Isso é útil quando um efeito renderizado compatível importa mais do que a geometria editável.

O controle de largura é em pontos, não na quantidade final de pixels. Com uma largura de 64 pontos, o exportador gera estes arquivos:

Escala Largura em pixels Nome do arquivo
1× 64 artwork@1x.png
2× 128 artwork@2x.png
3× 192 artwork@3x.png

A altura acompanha a proporção original. Uma imagem duas vezes mais alta do que larga gera uma imagem de 64 por 128 pixels em 1×. Escolha uma largura menor em pontos se uma imagem alta passar do limite de altura da exportação. A largura não redimensiona um imageset vetorial, que mantém o próprio viewBox.

Importe sem substituir o seu catálogo

Descompacte o download e localize Assets.xcassets/artwork.imageset, ou a pasta equivalente com o nome de recurso que você escolheu. Arraste esse imageset para o seu catálogo existente. Não substitua o catálogo inteiro: ele pode ter cores, ícones e outros recursos de que o seu app já precisa.

No SwiftUI, um recurso chamado artwork pode ser usado com Image("artwork"). Aplique no app o layout e o comportamento de escala que a sua interface precisa. Confira o asset importado no Xcode e num dispositivo, incluindo as bordas transparentes sobre superfícies claras e escuras.

Um imageset não é um SF Symbol e não herda o comportamento de criação desse formato de símbolo. Ele também é separado do ícone do app no launcher. Use o gerador de ícone de app para Android e iOS quando precisar de um catálogo AppIcon, ou o conversor de SVG para Android VectorDrawable para um drawable de interface do Android.