Wyciąganie obrazów, grafik oraz ikon z aplikacji dla OS X oraz iOS

Preview

Recenzując programy często po za zrzutami ekranowymi, w celu uzupełnienia i uatrakcyjnienia wpisu dodaję np. ikonę aplikacji, lub inny element graficzny związany z opisywanym produktem. Z idealną sytacją mam do czynienia, gdy autor udostępnia na swojej witrynie tzw. press kit. Zwykle jednak takich pomocy brak, a  wyszukiwarka obrazów Google, nie zawsze zwraca pliki w odpowiedniej jakości (przeźroczyste tło) czy rozdzielczości.

Myślę, że wiele osób wie o tym, że systemowy Podgląd umożliwia zobaczenie zawartości programu oraz ekstrakcję wybranego elementu graficznego.

image_extract_01

W przypadku aplikacji dla OS X sprawa jest trywialnie prosta – przeciągamy ikonkę interesującego nas programu na ikonę Podglądu (który rezyduje u mnie standardowo w Doku) i w tym ostatnim załączamy w menu Widok -> Miniaturki. Dzięki czemu po lewej stronie ujrzymy najprawdopodobniej wszystkie obiekty graficzne dostępne w aplikacji. Niektóre z nich są pogrupowane, dlatego warto taki zbiór rozwinąć klikając na trójkącik przed nazwą grupy (w poniższym przykładzie rozwinięta jest grupa Calculator.icns). Teraz już tylko zaznaczamy pożądaną grafikę i z menu kontekstowego wybieramy opcję Eksportuj jako… i w otwartym oknie dialogowym wskazujemy gdzie i pod jaką nazwą chcemy ją zapisać. Istotne jest tu wybranie formatu graficznego, np. PNG.

Do graficznych zasobów możemy dostać się też z poziomu Findera. Wystarczy, że zaznaczymy aplikację a z menu kontekstowego wybierzemy opcję:

image_extract_02

Teraz wchodzimy do folderu Resources (w tym przypadku dla aplikacji Kalkulator, pełna ścieżka wygląda tak: /Applications/Calculator.app/Contents/Resources)

image_extract_03

Niektóre programy w folderze Resources mogą mieć dodatkowe archiwa .zip z elementami graficznymi, więc warto najpierw skopiować je np. na Biurko (oczywiście dbając o to by nie zniknęły z inwigilowanej aplikacji :)). Ponadto możemy znaleźć tu czasem kolejną aplikację, np. w przypadku programu Keyboard Maestro będzie to Keyboard Maestro Engine.app – do którego też możemy zajrzeć (lub upuścić na ikonkę Podglądu).

Sam system operacyjny OS X zawiera sporo przydatnych elementów graficznych. Wiele z nich znajdziemy po wejściu do folderów Resources znajdujących się w następujących ścieżkach:

/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources

oraz:

/System/Library/PrivateFrameworks/LoginUIKit.framework/Versions/A/Frameworks/LoginUICore.framework/Versions/A/Resources

Wystarczy, że z menu Idź w Finderze wybierzemy opcję Idź do katalogu… i wkleimy powyższe ścieżki.

Interesujące znaleziska czekają na nas również gdy zerkniemy w zawartość pakietu instalatora systemu:

image_extract_04

W przypadku appek dla mobilnego systemu Apple – iOS sytuacja nieco się różni. Gdy pobierzemy aplikację z App Store, trafia ona do folderu /Music/iTunes/iTunes Media/Mobile Applications w naszym katalogu domowym. Appki posiadają rozszerzenie .ipa ale tak naprawdę to zzipowane pakiety, dlatego wystarczy zmienić rozszerzenie na .zip i już możemy rozpakować zawartość. Dla odmiany znajdziemy tu folder o nazwie Payload, natomiast w nim znajduje się właściwy program z rozszerzeniem .app, do którego oczywiście możemy zajrzeć korzystając z opcji menu kontekstowego lub pomocy Podglądu.

image_extract_05

Zauważyliście zapewne w rozpakowanym archiwum plik o nazwie iTunesArtwork. Jak się zapewne domyślacie, jest to ikona aplikacji używana przez iTunes. Oczywiście iTunes zajmuje się zaokrąglaniem narożników, dodawaniem refleksu. Gdy temu plikowi dodacie rozszerzenie .jpg zobaczycie, że to właśnie materiał źródłowy ikony aplikacji!

image_extract_06

Gwoli ścisłości, iTunesArtwork to plik JFIF.

Pewnie ciekawi jesteście, czy sztuczka ze zmianą rozszerzenia zadziała z plikami z systemem iOS. Gdy aktualizujemy np. iPhone podpiętego kablem USB do komputera, program iTunes pobiera dedykowany narzemu urządzeniu plik z rozszerzeniem .ipsw. Standardowo zapisywany jest w folderze:

  • w OS X:

~/Library/iTunes/iPhone Software Updates

  • w Windows XP:

Documents and Settings\<Użytkownik>\Application Data\Apple Computer\iTunes\iPhone Software Updates

  • w Windows Vista/Windows 7:

Użytkownicy\<Użytkownik>\AppData\Roaming\Apple Computer\iTunes\iPhone Software Updates

W przypadku iPada oraz iPoda foldery mają odpowiednio różne nazwy: iPad Software Updates oraz iPod Software Updates.

Nie ma oczywiście problemu by zdobyć taki plik samemu – znajdziecie do w wielu miejscach w sieci. Zmiana rozszerzenia z .ipsw na .zip kolejny raz pomoże w zobaczeniu zawartości archiwum. Niestety na tym koniec naszych zabaw. W środku znajdują się m.in. zaszyfrowane obrazy DMG, tzw. rootfs. Niestety bez pomocy dodatkowych narzędzi i klucza nie dostaniemy się do ich „wnętrzności”.

Jeśli wasze wymagania są jeszcze większe, i chcielibyście wyciągnąć innego rodzaju dane z programów, lub np. wydobyć obrazy z dokumentu w formacie PDF polecam program File Juicer.