În primul rând, eu sunt un dezvoltator de mobil și risc să dezvolt un aspect pentru aplicația mea, chiar de la început. am găsit următoarea problemă, Photoshop folosește PX ca unitate de măsură pentru formulare și în dezvoltare aplicația folosește DP, știu cum funcționează conversia De la PX la PD
dp = px * (160 / dpi)
Cu toate acestea, atunci când aplic o formulă și folosesc valorile în programare, pauzele de aspect, Aș dori să știu dacă există o configurație de fișier PSD, cum ar fi înălțimea, lățimea, densitatea pixelilor, pe care o pot folosi ca bază pentru a-mi moca aplicația, astfel încât să facilitați efectuarea acestor măsuri pentru dispozitive mobile și tablete?
Răspuns
Photoshop folosește PX ca unitate de măsură pentru formulare și în dezvoltarea aplicației folosește DP, știu cum funcționează conversia De la PX la DP
Conversia va depinde de n cum a fost construit designul original din Photoshop. dp
unitățile Android sunt pixeli independenți de densitate. 1dp poate fi redat ca 1 pixel de ecran, sau 2, sau 3, sau 4 sau o altă valoare, în funcție de setările dispozitivului și Android.
Iată o listă a conversiilor obișnuite:
- 1 dp = 1 pixel sau 1 × pentru afișajele
mdpi
(~ 160PPI). - 1 dp = 1,5 pixeli sau 1,5 × , pentru afișajele
hdpi
(~ 240PPI). - 1 dp = 2 pixeli sau 2 ×, pentru
xhdpi
afișează (~ 320PPI). - 1 dp = 3 pixeli sau 3 ×, pentru afișajele
xxhdpi
(~ 480PPI). - 1 dp = 4 pixeli sau 4 ×, pentru afișajele
xxxhdpi
(~ 640PPI).
Deci, marea întrebare este ce densitate doriți să-ți construiești machetele? Puteți alege oricare dintre densitățile de mai sus. Alegerea dvs. va dicta conversia și alți factori.
Preferința mea este să proiectez la 1 ×, o scară în care 1 dp
= 1 px
= 1 CSS px
= 1 iOS point
. Asta va însemna că machetele dvs. au o rezoluție mai mică decât dispozitivul în sine, dar înseamnă că conversia nu necesită nicio modificare a valorii.
Când ați terminat, Photoshop are câteva modalități de a exporta active pentru diferitele densități. . Export As
și Generator
pot construi celelalte scale sau puteți utiliza Save for Web
și felii ( așa cum fac eu ).
Iată fereastra Photoshop Export As, cu exportul configurat pentru densități 1 ×, 2 × și 3 × ( pentru iOS, în acest caz).
Răspuns
Formula dvs. este incorectă. Ca referință, Ghid de dezvoltare Android spune:
px = dp * (dpi / 160)
deci formula reală pentru dp este
dp = px / (dpi / 160)
Sper că vă ajută!
Pentru a doua parte a întrebării dvs., Photoshop este destul de plictisitor atunci când este vorba de exportul de active sau chiar de îmbinări. Dacă sunteți deschis la utilizarea Sketch, este mult mai ușor. Dar îmi pare rău, ca designer de mobil, cu greu folosesc photoshop, deoarece conversia px în dp nu este un lucru ușor de făcut în acel program.
Revised
Cred că înțeleg întrebarea dvs. mai bine acum. Vă rugăm să consultați acest site pentru valorile pe care le căutați: https://www.paintcodeapp.com/news/ultimate-guide-to-iphone-resolutions
Comentarii
- Ne pare rău, am scris formula greșită în postare, așa că foloseam formula corectă pentru conversie, întrebarea mea este care ar trebui să fie dimensiunea fișierului, astfel încât să pot exporta valorile în mod corespunzător. Și pe Sketch nu îl pot folosi, sistemul de operare este Linux. Pentru a utiliza photoshop a fost necesar să folosiți un instrument numit Wine care permite Photoshop să ruleze pe Linux.
Răspuns
S-ar putea ca acesta să nu fie subiect, dar aș recomanda să nu folosiți deloc Photoshop pentru proiectarea ecranului. Utilizați un instrument vector precum Illustrator, Sketch sau similar. Diferența constă în faptul că vă puteți extinde desenele ulterior. Dacă lucrați în Photoshop la o dimensiune de 1x, desenele dvs. vor arăta îngrozitor pe un telefon Andriod modern. Ar trebui să configurați designurile cel puțin la 2x, mai bine 4x pentru a le face să pară netede pe un ecran cu ppi mari.
De asemenea, toate activele pe care le creați cu un instrument vector, pot fi folosite ulterior ca materiale pentru toate dimensiunile necesare. În Photoshop va fi mult mai mult să se izoleze butoanele, pictogramele etc. pentru un export ulterior.