TGY
Aktives Mitglied
Thread Starter
- Dabei seit
- 12.04.2004
- Beiträge
- 1.129
- Reaktionspunkte
- 104
Hallo.
Ich habe ein Skript, mit dem ich Bilder (z.B. png-Bilder) auf eine bestimmte Grösse verkleinern und als jpg abspeichern kann.
Das funktioniert auch ganz gut.
ABER: Wenn die Ausgangsbilder den gleichen Dateinamen haben (z.B. eine Reihe mehrerer "Ohne Titel.png" in verschiedenen Ordnern, dann erhalte ich immer dasselbe Bild als Resultat: die verkleinerte Version des ersten Bildes. Das hängt definitiv mit dem Dateinamen zusammen. Ich kann zwischendurch Bilder mit anderen Namen ohne Probleme verkleinern. Ich will doch nicht jedesmal einen TItel eingeben, wenn ich Bilder aus dem Web in Vorschau bearbeitet habe.
Gibt es da irgendwo einen Cache, den man löschen muss per Befehl, damit trotz identischem Dateinamen jeweils das korrekte Bild ausgegeben wird?
Für Hilfe wäre ich wirklich dankbar, da mich das in den Wahnsinn treibt.
Hier das Skript (es ist eigentlich ein als Anwendung gespeichertes Droplet-Skript):
Ich habe ein Skript, mit dem ich Bilder (z.B. png-Bilder) auf eine bestimmte Grösse verkleinern und als jpg abspeichern kann.
Das funktioniert auch ganz gut.
ABER: Wenn die Ausgangsbilder den gleichen Dateinamen haben (z.B. eine Reihe mehrerer "Ohne Titel.png" in verschiedenen Ordnern, dann erhalte ich immer dasselbe Bild als Resultat: die verkleinerte Version des ersten Bildes. Das hängt definitiv mit dem Dateinamen zusammen. Ich kann zwischendurch Bilder mit anderen Namen ohne Probleme verkleinern. Ich will doch nicht jedesmal einen TItel eingeben, wenn ich Bilder aus dem Web in Vorschau bearbeitet habe.
Gibt es da irgendwo einen Cache, den man löschen muss per Befehl, damit trotz identischem Dateinamen jeweils das korrekte Bild ausgegeben wird?
Für Hilfe wäre ich wirklich dankbar, da mich das in den Wahnsinn treibt.
Hier das Skript (es ist eigentlich ein als Anwendung gespeichertes Droplet-Skript):
Code:
on open some_items
repeat with this_item in some_items
try
rescale_and_save(this_item)
end try
end repeat
end open
to rescale_and_save(this_item)
tell application "Image Events"
launch
set the target_width to 1400
-- open the image file
set this_image to open this_item
set typ to JPEG
copy dimensions of this_image to {current_width, current_height}
if current_width is greater than target_width then
scale this_image to size target_width
else
-- figure out new height
-- y2 = (y1 * x2) / x1
set the new_height to (current_height * target_width) / current_width
scale this_image to size new_height
end if
tell application "Finder" to set new_item to ¬
(container of this_item as string) & "SCALED_PIC.jpg"
save this_image in new_item as typ
end tell
end rescale_and_save
Zuletzt bearbeitet: