Waarom kunt u iconen van geïnstalleerde toepassingen nodig? Bijvoorbeeld, voor de schoonheid en duidelijkheid in elke presentatie. Of ontwerp werk aan te maken, laten we zeggen, een gedrukt product. Of op het gebied van de programmering om programma-of tweaken iets anders soort te creëren. Of gewoon voor avatars, als je een favoriet programma, en je jezelf associëren met het. In het algemeen is de winning software Miniatuur - het probleem niet zo, en specifiek. En omgaan met het simpel.
Housekeeping tip. toepassingen in OS X pictogrammen die u kunt graven met de hand - het is heel simpel. Markeer eerst de applicatie in de Finder en druk op een toets commando+ik - in het eigenschappenvenster van het programma, klikt u op het pictogram in de top en drukt op de knop Kopiëren commando+C. Vervolgens voert u het hulpprogramma is "View» (Preview), drukt u op de toetsen commando+N en sla de resulterende beeld, bij voorkeur in PNG-formaat (als semi-transparante iconen gebied dat u wilt opslaan). Natuurlijk, dus het is handig om te doen als je wilt een of twee iconen te halen. Als het vereiste aantal iconen nog veel meer - is het beter om te profiteren van de "Avtomatora".
Dus, lopen Automator, kies het item Service (Service) als het type van onze toekomstige proces. In de header, in het drop-down lijst Dienst ontvangt geselecteerd (Service ontvangt geselecteerd) kiezen bestanden of mappen (bestanden of mappen)En in de volgende lijst, selecteert u de toepassing vinder. Dus we beperkingen hebben ingevoerd: Onze service is beschikbaar via het contextmenu van mappen alleen en bestanden, en alleen in de Finder - in alle andere gevallen, de bijbehorende menu-item niet zichtbaar is wil.
Nu beginnen we om een reeks van acties van onze service.
1. geposte bibliotheek Bestanden en mappen (bestanden en mappen) drag effect Filter Finder objecten (Filter Finder Objects). Binnen deze actie, maak een verfijning regel Typ - hetzelfde als - het programma (Kind - is - applicatie). Dus we otseit alle bestanden en objecten die per ongeluk ontwormd onder de geselecteerde programma's, maar de programma's zijn niet op hetzelfde moment.
2. Nu, uit de categorie Utilities (Hulpprogramma's) add operatie Run AppleScript (Run AppleScript)Door deel te nemen aan deze actie de volgende code:
Op run {input, parameters} activate terugkeer input. end run
Housekeeping tip. effect run AppleScript met deze code voert een eenvoudige, maar zeer belangrijke taak: om de huidige actieve dienst te maken, waardoor het raam aan de voorkant. Om een of andere reden dat dit niet automatisch gebeuren: bijvoorbeeld, de volgende maatregelen is om onze dienst aan het openen van de dialoog catalogus - zonder het uitvoeren van de gespecificeerde AppleScript-code die dialoog kan verdwalen tussen de andere geopende vensters, waardoor het moeilijk is om te werken met service. Probeer om te experimenteren door het uitschakelen van Run AppleScript actie en zag eruit alsof deze dienst zal gedragen. Vandaar het advies: als je wilt om ervoor te zorgen dat een van de dialoogvensters, het opzetten van uw dienst, onmiddellijk uitgeoefend op de top van andere vensters, gebruik actie run AppleScript met deze code.
3. Act III - Vraag naar Finder objecten (Vraag naar Finder-onderdelen) uit de categorie Bestanden en mappen (bestanden en mappen). Met zijn hulp, kunnen we dan kiezen voor de map waarin de dienst de uitgepakte iconen moeten redden. De eigenschappen geeft u de actie selectiedialoog header directory, geef het startnummer map en geef het type van de ontvangen gegevens - in de juiste drop-down lijst, selecteert mappen.
4. Voeg nu in dienst van de "intellectuele kern" - de actie Voer het shell-script (Run Shell Script). Zonder dat de oorspronkelijke parameters van de actie, gaat het Koninkrijk de volgende code:
INPUT = ( "$ @") INPUTAPPS = ( "$ {INPUT [@]: 0: (# $ - 1)}") DESTINATION = $ {INPUT [(# $ - 1)]} voor APP in "$ {INPUTAPPS [@]}" doe ICON = `defaults lezen "$ APP / Contents / Info" CFBundleIconFile | sed -e 's / .icns $ // ' ` IconFile = "$ APP / Contents / Resources / $ ICON.icns" APPNAME = `basename "$ APP" .app` OUTFILE =" $ BESTEMMING / $ {APPNAME} .png "/ usr / bin / slokjes -s format png" $ IconFile " --out "$ OUTFILE" gedaan
Als iedereen die geïnteresseerd is in de comments, kan ik de werking van de code uit te leggen. Hij is het die als input neemt een hele reeks van gegevens, scheidt het geselecteerd in de Finder-programma en een pad pad te slaan mappictogrammen, zoek in elk icoon van het programma en slaat deze op in de aangegeven plaats in het PNG-formaat, het toewijzen van de namen van de betreffende foto's programma's.
5. Als u een systeem Growl visuele waarschuwing, kunt u het laatste, het vijfde actieprogramma toe te voegen - Toon Growl KennisgevingGelegen in categorie Utilities (Hulpprogramma's). voer een titel (Titel) en de boodschap (Beschrijving)Om de service te creëren kon haar succesvolle afronding duidelijk te informeren.
Zoiets moet bereid zijn dienst te kijken extract pictogrammen in de Russische taalversie.Everything! We kunnen alleen maar houden de service onder de naam handig voor u - bijvoorbeeld, Uittreksel iconen uit programma's - en om het te testen in actie. Het openen van een Finder-venster, Navigeer naar de map Program (Applications), Selecteer meerdere programma's en te klikken op het geselecteerde object, klik met de rechtermuisknop en klik vervolgens op de naam van de service die u zojuist hebt opgeslagen in het contextmenu. Enkele ogenblikken later de bestanden op de opgegeven locatie en geeft een Growl-bericht dat u hebt gemaakt worden opgeslagen.