2011-09-15 2 views

Répondre

3

L'image à neuf points est l'image .png habituelle avec une bordure noire de 1 pixel (link). Je pense que si vous pouvez le modifier PhotoShop. Notez que la bordure ne peut pas être cassée.

Une autre méthode consiste à: éditer l'image source dans PhotoShop et utiliser Draw 9-patch tool pour créer une bordure de 1 pixel. Il inclut dans le SDK Android standard et il est gratuit.

1

Non, ils ne sont plus 9patch.

Disons que nous redimensionnons 8x8 à 4x4, il y a 4 pixels de l'original à 1 pixel (simplifié). Alors vous perdez beaucoup d'informations. Lors d'un redimensionnement de 256x256 à 255x255, la perte d'informations est si faible qu'il y a de bonnes chances que les bordures restent compatibles. La seule méthode pour redimensionner ces images (par de très petits facteurs) est "Plus proche voisin", car tous les autres utilisent l'interpolation des valeurs de couleur avec les pixels environnants (la bordure noire devient grise). Dans votre cas de développement d'application, je prendrais le temps et utiliserais "l'autre sens" de la réponse de "Dmitriy_Boichenko" et ferais le 9patch-chose de la base, parce que les bogues graphiques sont disgracieux.

+0

Oui. L'outil de patch 9 est cruel cependant. Je voudrais dessiner la bordure avec une touche au lieu de jouer avec la souris. J'ai des centaines d'icônes à refaire –

0

vous pouvez éditer 9-patch inside photoshop bien sûr. En fait, vous pouvez éditer dans n'importe quel éditeur supportant png. C'est un simple fichier PNG à la fin.

Il n'y a que 2 règles très importantes: L'extension de fichier doit être .9.png La bordure autour de l'image doit avoir une largeur d'un pixel et ne contenir que du noir pur ou un pixel entièrement transparent.

Il n'est pas nécessaire de créer une densité différente si vous le faites correctement, à moins que vous n'aimiez pas le look une fois qu'il est augmenté ou réduit.

Maintenant que vous avez mentionné les icônes, je ne ferais pas d'icônes en utilisant 9-patch. Je créerais 3 densité différente pour chaque icône.

Suivez les instructions ici: http://developer.android.com/guide/practices/ui_guidelines/icon_design.html

10

Je viens sur uploadé code.google.com un outil qui fait le redimensionnement pour vous: https://github.com/redwarp/9-Patch-Resizer

Il est très simple: il suffit de glisser déposer un patch n xhdpi 9, et il va créer les densités inférieures (ldpi, mdpi et hdpi).

J'espère que ça aide! Editer: déplacé vers github

+0

Je viens de passer une heure à convertir xhdpi 9-patches en hdpi. Je vais certainement essayer la prochaine fois et vous laisser savoir comment ça se passe. Merci! – ABentSpoon

+0

Juste essayé, comme un tas de mes tranches créées gimp échoué. J'ai bien travaillé! – ABentSpoon

+0

Mis à jour à 1.1.1, vérifiez-le :-) – Redwarp

Questions connexes