Разрешение значков AppleScript - PullRequest
       11

Разрешение значков AppleScript

0 голосов
/ 01 октября 2019

Я мог найти в разных местах, как персонализировать значок AppleScript: https://apple.stackexchange.com/questions/8299/how-do-i-make-an-applescript-file-into-a-mac-app Настроить значок приложения Applescript

Apple также говорит о разрешении другого значка вобычное приложение Xcode: https://developer.apple.com/library/archive/documentation/GraphicsAnimation/Conceptual/HighResolutionOSX/Optimizing/Optimizing.html

Но каково рекомендуемое разрешение приложения-иконки AppleScript?

Ответы [ 2 ]

1 голос
/ 01 октября 2019

Размеры значков используются системой, а не AppleScript, поэтому любые соглашения, которые система требует для «обычного» приложения, следует использовать и для приложения AppleScript.

РЕДАКТИРОВАТЬ

Согласно комментариям к одному из других ответов, вот скрипт, который создаст файл icns со всеми предлагаемыми размерами из любого изображения, которое вы выберете:

set picFile to choose file with prompt "Choose an image to iconize." of type {"public.image"}
set workingFolder to POSIX path of (path to temporary items from user domain)
set outputFolder to POSIX path of (path to desktop from user domain)

set sizesList to {16, 32, 128, 256, 512}

tell application "System Events"
    set pictureFilePath to quoted form of (get POSIX path of picFile)
    set {pictureName, ext} to {name, name extension} of picFile
    if ext is not "" then
        set pictureName to text 1 through -((length of ext) + 2) of pictureName
    end if

    -- create iconset folder
    set iconsetFolder to make new folder at folder workingFolder with properties {name:pictureName & ".iconset"}

    -- cycle through sizes to create normal and hi-def sized icon images
    repeat with thisSize in sizesList
        set iconFilePath to POSIX path of iconsetFolder & "/" & my makeFileNameFromSize(thisSize, false)
        do shell script "sips -z " & thisSize & " " & thisSize & " " & "-s format png " & pictureFilePath & " --out " & iconFilePath
        set iconFilePath to POSIX path of iconsetFolder & "/" & my makeFileNameFromSize(thisSize, true)
        do shell script "sips -z " & thisSize * 2 & " " & thisSize * 2 & " " & "-s format png " & pictureFilePath & " --out " & iconFilePath
    end repeat

    -- create new icns file
    set iconsetPath to quoted form of (POSIX path of iconsetFolder as text)
    set outputPath to quoted form of (outputFolder & pictureName & ".icns")
    do shell script "iconutil -c icns -o " & outputPath & " " & iconsetPath
end tell

on makeFileNameFromSize(s, x2)
    set fileName to "icon_" & s & "x" & s
    if x2 then set fileName to fileName & "@2x"
    set fileName to fileName & ".png"
    return fileName
end makeFileNameFromSize

Предостережения:

  • Это помещает файл icns на рабочий стол;это можно изменить, изменив переменную outputFolder.
  • Это может вызвать ошибку, если в имени файла изображения есть символы, которые оболочка интерпретирует как значимые. Я заметил это в имени файла с круглыми скобками, но не добавил никакой проверки ошибок.
  • Этот скрипт не сохраняет пропорции, поэтому, если вы передадите ему изображение, которое не квадратное, оно будет искажать. Если вы хотите сохранить пропорции, помните, что значки должны быть квадратными, поэтому сначала придется обрезать изображение, обрезая его или отступая.
0 голосов
/ 01 октября 2019

Если вы щелкнете правой кнопкой мыши по файлу приложения в Finder и выберите опцию «Показать содержимое пакета». Если вы откроете его файл .icns (обычно находится в папке ресурсов), используя приложение «Просмотр», Использование эскизов на боковой панели. , вы заметите, что внутри файла, содержит несколько версий одного и того же значка. Каждый из них имеет разный размер и разрешение (1024 x 1024 при 144 пикселях на дюйм, 512 x 512 при 72 пикселях на дюйм и т. Д.)

Я почти уверен, что система решает, какая версия и размербудет использоваться встроенный значок, в зависимости от ситуации. Например, размер значка, используемого в Dock, будет больше, чем значок, используемый для открытого документа для приложения во время его работы.

enter image description here

Есливы просто хотите изменить значок апплета AppleScript с помощью файла .png в окне получения информации в Finder. 256 х 256 при 72 пикселях на дюйм должно подойти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...