Først og fremst er jeg en mobilutvikler, og jeg risikerer å utvikle en layout for appen min, helt fra starten av fant følgende problem, Photoshop bruker PX som en måleenhet for skjemaene og i utvikling bruker appen DP, jeg vet hvordan konverteringen fungerer Fra PX til PD
dp = px * (160 / dpi)
Men når jeg bruker en formel og bruker verdiene i programmeringen, bryter oppsettet, Jeg vil gjerne vite om det er en PSD-filkonfigurasjon, for eksempel høyde, bredde, pikseltetthet der jeg kan bruke som grunnlag for å mockupe appen min, slik at det blir enkelt å utføre disse tiltakene for mobil og nettbrett?
Svar
Photoshop bruker PX som en måleenhet for skjemaene og i utvikling av appen bruker DP, jeg vet hvordan konverteringen fungerer Fra PX til DP
Konverteringen vil avhenge av n hvordan den originale designen i Photoshop ble konstruert. Androids dp
enheter er tetthetsuavhengige piksler. 1dp kan gjengis som 1 skjermpiksel, eller 2, eller 3 eller 4, eller en annen verdi, avhengig av enhetens og Android-innstillingene.
Her er en liste over vanlige konverteringer:
- 1 dp = 1 piksel, eller 1 ×, for
mdpi
skjermer (~ 160PPI). - 1 dp = 1,5 piksler, eller 1,5 × , for
hdpi
viser (~ 240PPI). - 1 dp = 2 piksler, eller 2 ×, for
xhdpi
viser (~ 320PPI). - 1 dp = 3 piksler, eller 3 ×, for
xxhdpi
skjermer (~ 480PPI). - 1 dp = 4 piksler, eller 4 ×, for
xxxhdpi
skjermer (~ 640PPI).
Så, det store spørsmålet er hvilken tetthet du vil ha å bygge mockups i? Du kan velge hvilken som helst av tetthetene ovenfor. Valget ditt vil diktere konverteringen og andre faktorer.
Min preferanse er å designe med 1 ×, en skala der 1 dp
= 1 px
= 1 CSS px
= 1 iOS point
. Det vil bety at mockups har lavere oppløsning enn selve enheten, men det betyr at konverteringen ikke krever noen verdiendring.
Når du er ferdig, har Photoshop noen måter å eksportere eiendeler for de forskjellige tettheter. . Export As
og Generator
kan bygge de andre skalaene, eller du kan bruke Save for Web
og skiver ( som jeg gjør ).
Her er Photoshops Eksporter som-vindu, med eksport satt opp til 1 ×, 2 × og 3 × tettheter ( for iOS, i dette tilfellet).
Svar
Formelen din er feil. Som referanse sier Android Development Guide ,
px = dp * (dpi / 160)
så den faktiske formelen for dp er
dp = px / (dpi / 160)
Håper det hjelper!
For den andre delen av spørsmålet ditt er Photoshop ganske kjedelig når det kommer til å eksportere eiendeler, eller til og med spleiser. Hvis du er åpen for å bruke Sketch, er det så mye lettere. Men beklager, som mobildesigner bruker jeg knapt photoshop fordi konvertering av px til dp ikke er en enkel ting å gjøre i det programmet.
Revidert
Jeg tror jeg forstår spørsmålet ditt bedre nå. Vennligst se på dette nettstedet for verdiene du ser etter: https://www.paintcodeapp.com/news/ultimate-guide-to-iphone-resolutions
Kommentarer
- Beklager, jeg skrev feil formel i innlegget, så jeg brukte riktig formel for konverteringen, spørsmålet mitt er hva som skal være størrelsen på filen slik at jeg kan eksportere verdiene riktig. Og på Sketch kan jeg ikke bruke det, operativsystemet er Linux. For å bruke photoshop var det nødvendig å bruke et verktøy som heter Wine som lar Photoshop kjøre på Linux.
Svar
Dette kan være utenfor emnet her, men jeg vil anbefale å ikke bruke Photoshop til skjermdesign i det hele tatt. Bruk et vektorverktøy som Illustrator, Sketch eller lignende. Forskjellen er at du kan skalere opp designene dine senere. Hvis du jobber i Photoshop i 1x størrelse, vil designene dine se forferdelig ut på en moderne Andriod-telefon. Du må konfigurere designene minst 2x, bedre 4x for å få dem til å se jevne ut på en skjerm med høy ppi.
Også alle eiendeler du lager med et vektorverktøy, kan senere brukes eiendeler for alle nødvendige størrelser. I Photoshop vil det være mye mer arbeid å isolere knapper, ikoner osv. for senere eksport.