Optimieren von Grafiken für den Schreibtisch-Hintergrund

Montag, 22 November 2010
0.0/5 Bewertung (0 Stimmen)
Beschreibung

Ich benutze eine Vielzahl Grafiken mit verschiedenen Größen für meinen Schreibtisch-Hintergrund. Die Einstellungen ”Bildschirmfüllend” oder ”An Bildschirm anpassen” in den Schreibtisch- und Bildschirmschoner-Einstellungen macht kleinere Bilder unansehnlich und ”Zentrieren” schneidet große Grafiken an den Rändern ab. Alle Grafiken befinden sich in einem Verzeichnis.
Ich habe ein Script geschrieben, das kleine Grafiken auf Bildschirmgröße vergrößert und kleine Grafiken auf die Bildschirmgröße ändert. Es arbeitet mit der Finder Auswahl und überschreibt die Eingabedateien, benutzen Sie also Duplikate. Öffnen Sie das Script im AppleScript-Editor und ändern Sie die Variablen _screenWitdh und _screenHeight auf die Werte Ihrer Bildschirmauflösung. Mit der Einstellung ”An Bildschirm anpassen” werden große wie kleine Grafiken korrekt angezeigt.
Nicht bei allen Grafiken, wie z.B. PICT-Dateien, können die Dimensionen korrekt ausgelesen werden. Das Script überspring diese Dateien und auch andere nicht Grafik-Dateien. Grafiken mit den korrekten Einstellungen werden ebenfalls übergangen. Das Script enthält einige Anmerkungen. Fehler werden durch das Script aufgezeichnet.
WARNUNG: Das Script überschreibt die Original-Dateien, arbeiten Sie also unbedingt mit Kopien. Der folgende Kode ist sehr lang, sodass Sie ihn vielleicht eher mit dem Link weiter unten herunterladen wollen.

 --WARNING: This script overwrites original files, work on copies.
-- Change these variables to your screen dimensions…
set _screenWidth to 1280
set _screenHeight to 800
-- Don”t change this!
set _screenRatio to _screenWidth / _screenHeight
try
tell application ”Finder”
with timeout of 600 seconds
set _selection to selection
end timeout
if _selection = {} then error ”No files selected…” number 1
end tell

display dialog ”Warning: This script will overwrite selected files.
Please work on duplicates.” with title ”Pad Images for the Desktop” buttons {”Cancel”, ”Continue”} default button ”Cancel”

set _fileNames to {}
repeat with _file in _selection
try
tell application ”Finder” to set _alias to _file as alias
set _aliasText to _alias as text
set end of _fileNames to _aliasText
end try
end repeat
if _fileNames = {} then error ”No filenames” number 1

tell application ”Image Events”
launch
repeat with _fileName in _fileNames
try
set _image to open _fileName

-- This will throw an error if file is not valid - _image is undefined
set _dimensions to dimensions of _image
if _dimensions = {} then error ”No dimensions for this file…” number 1 --Not an image, or unable to get dimensions

set {_width, _height} to {item 1 of _dimensions as integer, item 2 of _dimensions as integer}

set _ratio to (_width / _height) -- image aspect ratio
set _ratio to (_ratio * 100 as integer) / 100 -- round to 2 decimal places

if _width < _screenWidth and _height < _screenHeight then
-- Image smaller than the screen, pad to screen size
set {_newWidth, _newHeight} to {_screenWidth, _screenHeight}
else
if _ratio = _screenRatio then
-- Do nothing!
error ”The image doesn”t need padding.” number 1
end if

if _width ≥ _height then
-- ”Landscape” image

if _ratio < _screenRatio then
-- Pad sides
set _newWidth to (_height * _screenRatio) as integer
set _newHeight to _height
end if

if _ratio > _screenRatio then
-- Pad top and bottom
set _newHeight to (_width / _screenRatio) as integer
set _newWidth to _width
end if
else
-- ”Portrait” image
set _newWidth to (_height * _screenRatio) as integer
set _newHeight to _height
end if
end if


pad _image to dimensions {_newWidth, _newHeight} with pad color {0, 0, 0} -- black

save _image in _fileName

close _image

on error a number b
try
close _image
end try
log a
end try

end repeat
end tell

delay 2

tell application ”Finder”
with timeout of 600 seconds
set selection to _selection
end timeout
end tell
on error a number b
log ”Error: ” & a
end try

[crarko: Ich habe den Tipp getestet und er funktioniert wie beschrieben. Der einfachste Weg dieses Script zu benutzen, ist es, in Ihr Script-Menü zu packen. Ich habe es unter ~/Library/Scripts/Applications/Finder gespeichert. Selektieren Sie die Grafiken und starten Sie dann das Script. Das Script wurde ausserdem [url=http://hints.macworld.com/dlfiles/Pad_Images_for_the_Desktop.scpt.zip]hier[/url] gespiegelt.]

Spezifikationen

Hits

2162

© by macjaner.ch | Powered by GoeGG-ArT.ch