Heute ein Tipp aus der Abteilung "Nützliches": Präsentationen mit Photos oder Screenshot in wenigen Minuten erstellen. Ein kleines Apple Script hilft dabei die mühsame Arbeit des Platzieren der Bilder zu automatisieren.
Viele kennen das Thema. Wie mache ich aus ein paar Photos oder Screenshots schnell eine Präsentation. Da schnippselt man Bilder - copy & pasted diese einzeln in ein Präsentationsprogramm und nach Stunden Arbeit ist man ziemlich frustriert und fertig.
![Fertig erstellte Keynote mit den Bildern aus iPhoto automatisiert mit dem Apple Script](https://pictures.igumbi.com/pics/100/smaller.jpg?1300297561)
Und Die eigentliche Arbeit, nämlich das Dichten der Worte und Editieren hat noch gar nicht angefangen. Wenn man mit Apple OSX arbeitet, und iPhoto und Keynote hat, dann gibt es hier einen praktischen Tipp.
Das Erstellen von Brainstorming / Recherche Präsentationen geht so:
- Mit Annotate (aus dem Mac App Store) werden Screenshots gemacht. Ich verwende das oft bei der Web-Recherche, Ideensammlung und Brainstorming.
- Wenn ich mein Bild und Screenshot Material fertig zusammengetragen habe, kopiere ich die Bilder aus Skitch in einen temporären Folder am Desktop. Script an - man braucht nur den Apple Script Editor aufmachen und den Code rein pasten. Eine neue Keynote Präsentation wird erstellt mit jeweils einem Bild als Slide (verwende Version Keynote 7.3.1). Die Keynote Slides sind 1280x720px gross. Das kann man auf die eigenen Bedürfnisse anpassen.
Hier der Code des Apple Skript für die Umwandlung der Bilder aus einem Folder in Keynote Slides:
tell application "Keynote"
activate
if playing is true then tell the front document to stop
set theseImageFiles to ¬
(choose file of type "public.image" with prompt ¬
"Select the image file(s) to import:" default location ¬
(path to pictures folder) with multiple selections allowed)
display dialog "Scale the images using which method:" buttons ¬
{"Cancel", "Scale to Fill", "Default (Fit & Center)"} default button 3
if the button returned of the result is "Scale to Fill" then
set scaleToFill to true
else
set scaleToFill to false
end if
repeat with i from 1 to the count of theseImageFiles
set thisImageFile to item i of theseImageFiles
if not (exists document 1) then
set thisDocument to make new document
set thisSlide to the first slide of thisDocument
set the base slide of thisSlide to master slide "Blank" of thisDocument
else
tell front document
set thisSlide to make new slide with properties ¬
{base slide:master slide "Leer"}
end tell
end if
my addImageFileToSlide(thisSlide, thisImageFile, scaleToFill)
end repeat
end tell
on addImageFileToSlide(thisSlide, thisImageFile, scaleToFill)
tell application "Keynote"
try
activate
set queryResult to my getImageDimensions(POSIX path of thisImageFile)
if queryResult is false then
error number 10000
else
copy queryResult to {imageWidth, imageHeight}
end if
tell front document
set documentWidth to its width
set documentHeight to its height
end tell
tell thisSlide
if scaleToFill is false then
set thisImage to make new image with properties {file:thisImageFile}
tell thisImage
set thisImageWidth to its width
set thisImageHeight to its height
-- center image
set position of it to ¬
{(documentWidth - thisImageWidth) / 2 ¬
, (documentHeight - thisImageHeight) / 2}
end tell
else -- scale to fill
-- figure new image height based on setting new image width to slide width
set newImageHeight to (imageHeight * documentWidth) / imageWidth
-- check to see if new image height is greater than or equal to document height
if newImageHeight is greater than or equal to documentHeight then
set newImageWidth to documentWidth
-- center image vertically
set verticalOffset to ((newImageHeight - documentHeight) / 2) * -1
set horizontalOffset to 0
else
-- scale image height to match slide height
set newImageHeight to documentHeight
set newImageWidth to (documentHeight * imageWidth) / imageHeight
-- center image horizontally
set verticalOffset to 0
set horizontalOffset to ((newImageWidth - documentWidth) / 2) * -1
end if
-- import, scale, and position image
set thisImage to make new image with properties ¬
{file:thisImageFile ¬
, width:newImageWidth ¬
, height:newImageHeight ¬
, position:{horizontalOffset, verticalOffset}}
end if
end tell
on error errorMessage number errorNumber
if errorNumber is not -128 then
display alert errorNumber message errorMessage
end if
error number -128
end try
end tell
end addImageFileToSlide
on getImageDimensions(thisImageFilePOSIXPath)
try
set imageWidth to ¬
(do shell script "mdls -raw -name kMDItemPixelWidth " & ¬
quoted form of thisImageFilePOSIXPath) as integer
set imageHeight to ¬
(do shell script "mdls -raw -name kMDItemPixelHeight " & ¬
quoted form of thisImageFilePOSIXPath) as integer
return {imageWidth, imageHeight}
on error
return false
end try
end getImageDimensions
Wahnsinn, das Ganze hat nur 3 Minuten gedauert!!
Als Produkt gibt es eine fertige Keynote Präsentation die man hervorragend als PDF Datei exportieren kann und natürlich weiter verarbeiten kann. Die PostIT Funktion von Keynote mag ich ganz gerne um meine Ideen abzusenfen.
Solch ein Dokument, am Anfang einer kreativ Session erstellt, ist oftmals ein herrliches nützliches visuelles Referenz Dokument. Später im Projekt (in der Performance Phase) hat man selten den Kopf frei für eine detaillierte Web-Recherche, und ist froh wenn man sich ein paar Ideen aus dem visuellen Brainstorming Dokument holen kann.
Natürlich kann man auch die Urlaubsbilder in eine Keynote Präsentation umwandeln. Dann kann man mit den Kollegen einen Dia-Abend in der Mittagspause machen. ;)
![Hotelsoftware Demo Funktionen: Belegungsplan, Gästeblatt, E-Mail Vorlagen, Statistik Hotelsoftware Demo: System Übersicht der Funktionen](https://pictures.igumbi.com/pics/226/original.png?1537524994)
igumbi ist eine online Hotelsoftware mit einem einfachen und schnellen Buchungstool für Ihre Website. Mit dynamischen Preisen auf Ihrer Website und in den Portalen erhöhen Sie Ihren Umsatz und Gewinn.
Wir steigern Ihre provisionsfreien Direktbuchungen. Sie sparen Zeit und haben mit der iPhone App unterwegs Zugriff auf Ihre Daten.
- Zellen fixieren in Excel 2011 für Mac OSX Excel formel Zelle fixieren: Wie fixiert man die Zellreferezen/ den Bezug von Formeln in Excel Mac 2011 - (die F4 Funktion in Windows)? Also das Dollarzeichen ($) in Excel Formeln.
- Das @ Symbol bei Windows VM test Tastenkombination für nicht konfigurierte Keyboards: ALT-64 für das @ Symbol, Backslash mit ALT-92
- Matrixformel im OSX Excel Wie gibt man Matrixformeln (Array Formeln genannt) im Mac OSX Excel und Google Sheets ein? Geschwungene/ geschweiften Klammern {} im Excel um die Formel setzen.
vor etwa 10 Jahren
Moin, ich habe gerade diesen Tip gefunden. Genau danach habe ich gesucht! Habe den Script Text kopiert und in Script Editor gepastet. Ich bekomme allerdings zu Zeile 15 zum 5. Wort (photoListRef) eine Syntaxmeldung "Expected Zeilenende, etc. but found Identifizier." Ich bin leider nicht so fit in der Editor-Sprache und weiß nicht, was das bedeuten soll.
vor etwa 10 Jahren
Kann sehr gut sein das diese Apple Script Dinger im aktuellen OSX Mavericks nicht mehr gehen. Der Artikel ist auch schon ca. 3 Jahre alt.