• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Keynote document exporting option
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Keynote document exporting option


  • Subject: Re: Keynote document exporting option
  • From: Nigel Garvey <email@hidden>
  • Date: Mon, 13 May 2019 12:41:25 +0100

Takaaki Naganoya wrote on Sun, 12 May 2019 17:13:32 +0900:

>Here is a sample script to export Keynote document as a movie file.
>
>https://iworkautomation.com/keynote/document-export.html
>
>Now, it does not work because of the enum “large” turned into “720p”
and it
>causes error.

Hmm.  :\  According to Keynote 9.0.2's dictionary, the possible 'movie
format' values are now '360p', '540p', '720p', '1080p', '2160p', and
'native size'. The old values 'small', 'medium', and 'large' now compile
to the first three of these, but none of the number+p expressions
(re)compile once they're in the script text. Definitely a miscalculation
on the part of the Keynote programmer.

Here's a possible workaround. I haven't tried it in an exporting
context, but it seems to return the required enums:

  on mfEnum(param) -- param can be either a text version of the required enum
or a size integer,
    run script "on run args
    set theSize to item 1 of args as text
      tell app \"Keynote\"
        if (thesize  begins with \"360\") or (thesize is \"small\") then
          return «constant KnmfKmf3»
        else if (thesize  begins with \"540\") or (thesize is \"medium\") then
          return «constant KnmfKmf5»
        else if (thesize  begins with \"720\") or (thesize is \"large\") then
          return «constant KnmfKmf7»
        else if (thesize  begins with \"1080\") then
          return «constant KnmfKmf8»
        else if (thesize  begins with \"2160\") then
          return «constant KnmfKmf4»
        else if (thesize  begins with \"native\") then
          return «constant KnmfKmfN»
        end
    end
  end" with parameters {param}
  end mfEnum

  -- Demos:
  tell application "Keynote"
    {movie format:my mfEnum("720p")} --> {movie format:720p}
    {movie format:my mfEnum("large")} --> {movie format:720p}
    {movie format:my mfEnum(720)} --> {movie format:720p}
    {movie format:my mfEnum("native")} --> {movie format:native size}
  end tell


NG
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
AppleScript-Users mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
Archives: http://lists.apple.com/archives/applescript-users

This email sent to email@hidden

  • Follow-Ups:
    • Re: Keynote document exporting option
      • From: Takaaki Naganoya <email@hidden>
  • Prev by Date: Keynote document exporting option
  • Next by Date: Re: Keynote document exporting option
  • Previous by thread: Keynote document exporting option
  • Next by thread: Re: Keynote document exporting option
  • Index(es):
    • Date
    • Thread