Po pierwsze, jestem programistą urządzeń mobilnych i ryzykuję opracowanie układu mojej aplikacji od samego początku. Znalazłem następujący problem, Photoshop używa PX jako jednostki miary dla formularzy, a podczas tworzenia aplikacji używa DP, wiem, jak działa konwersja Z PX na PD

dp = px * (160 / dpi)

Jednak kiedy stosuję formułę i używam wartości w programowaniu, układ się psuje, Chciałbym wiedzieć, czy istnieje konfiguracja pliku PSD, taka jak wysokość, szerokość, gęstość pikseli, na której mogę utworzyć makietę mojej aplikacji, aby ułatwić przenoszenie tych pomiarów na telefon komórkowy i tablet?

Odpowiedź

Photoshop używa PX jako jednostki miary dla formularzy i podczas opracowywania aplikacji używa DP, wiem, jak działa konwersja Z PX na DP

Konwersja będzie zależała od n jak skonstruowano oryginalny projekt w Photoshopie. Jednostki dp Androida to piksele niezależne od gęstości. 1dp może renderować się jako 1 piksel ekranu, 2, 3 lub 4, albo inna wartość, w zależności od urządzenia i ustawień Androida.

Oto lista typowych konwersji:

  • 1 dp = 1 piksel lub 1 × dla wyświetlaczy mdpi (~ 160PPI).
  • 1 dp = 1,5 piksela lub 1,5 × , dla wyświetlaczy hdpi (~ 240PPI).
  • 1 dp = 2 piksele lub 2 × dla xhdpi wyświetlaczy (~ 320PPI).
  • 1 dp = 3 piksele lub 3 × dla wyświetlaczy xxhdpi (~ 480PPI).
  • 1 dp = 4 piksele lub 4 × dla wyświetlaczy xxxhdpi (~ 640PPI).

Więc najważniejsze pytanie brzmi, jaką gęstość chcesz budować swoje makiety? Możesz wybrać dowolną z powyższych gęstości. Twój wybór będzie podyktowany konwersją i innymi czynnikami.

Wolę projektować w skali 1 ×, w której 1 dp = 1 px = 1 CSS px = 1 iOS point. Oznacza to, że Twoje makiety mają niższą rozdzielczość niż samo urządzenie, ale oznacza to, że konwersja nie wymaga zmiany wartości.

Gdy skończysz, Photoshop ma kilka sposobów eksportowania zasobów o różnych gęstościach . Export As i Generator mogą tworzyć inne skale lub możesz użyć Save for Web i plasterków ( tak jak ja ).

Oto okno programu Photoshop Eksportuj jako, z eksportowaniem ustawionym na gęstości 1 ×, 2 × i 3 × ( w tym przypadku na iOS).

Photoshops Export As

Odpowiedź

Twój wzór jest nieprawidłowy. Dla porównania, Przewodnik dla programistów Androida mówi:

px = dp * (dpi / 160)

więc rzeczywista formuła dp to

dp = px / (dpi / 160)

Mam nadzieję, że to pomoże!

W drugiej części pytania, Photoshop jest dość uciążliwy, gdy chodzi o eksportowanie zasobów, a nawet połączeń. Jeśli jesteś otwarty na używanie programu Sketch, jest to o wiele łatwiejsze. Ale przepraszam, jako projektant urządzeń mobilnych, prawie nie używam Photoshopa, ponieważ konwersja px na dp nie jest łatwa w tym programie.

Przerobione

Myślę, że teraz lepiej rozumiem twoje pytanie. Poszukaj w tej witrynie wartości, których „szukasz: https://www.paintcodeapp.com/news/ultimate-guide-to-iphone-resolutions

Komentarze

  • Przepraszam, napisałem niewłaściwą formułę w poście, więc użyłem poprawnego wzoru do konwersji, moje pytanie brzmi, jaki powinien być rozmiar pliku, aby może poprawnie wyeksportować wartości. A na Sketch nie mogę tego użyć, system operacyjny to Linux. Aby korzystać z Photoshopa, konieczne było użycie narzędzia o nazwie Wine, które pozwala Photoshopowi działać na Linuksie.

Odpowiedź

To może być nie na temat, ale radziłbym w ogóle nie używać Photoshopa do projektowania ekranu. Użyj narzędzia wektorowego, takiego jak Illustrator, Sketch lub podobnego. Różnica polega na tym, że możesz później skalować swoje projekty. Jeśli pracujesz w Photoshopie w rozmiarze 1x, Twoje projekty będą wyglądać okropnie na nowoczesnym telefonie Andriod. Trzeba by ustawić projekty co najmniej 2x, lepiej 4x, aby wyglądały gładko na ekranie o wysokim ppi.

Również wszystkie zasoby utworzone za pomocą narzędzia wektorowego mogą być później używane jako zasobów dla wszystkich wymaganych rozmiarów. W Photoshopie znacznie więcej pracy będzie wymagało wyodrębnienia przycisków, ikon itp. do późniejszego eksportu.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *