From 07e4a2dafe248280b5610f8c7d09b0f30b530f54 Mon Sep 17 00:00:00 2001 From: Bradley Taunt Date: Mon, 10 Jun 2024 09:41:25 -0400 Subject: Initial modifications to rebuilt only changed files based on mod date, performance updates --- build/posts/batch-webp-conversion/index.html | 89 ++++++++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 build/posts/batch-webp-conversion/index.html (limited to 'build/posts/batch-webp-conversion/index.html') diff --git a/build/posts/batch-webp-conversion/index.html b/build/posts/batch-webp-conversion/index.html new file mode 100644 index 0000000..0577e95 --- /dev/null +++ b/build/posts/batch-webp-conversion/index.html @@ -0,0 +1,89 @@ + + + + + + + + Batch Converting Images to webp with macOS Automator + + + + + + + +
+

Batch Converting Images to webp with macOS Automator

+

2021-10-15

+

A great deal of my time working as a web/UI designer is spent exporting and/or converting images for software products and websites. Although a lot of modern applications can render image conversions at build time, a custom conversion is sometimes requested for an image to be set as webp.

+

You could download one of the many native apps from the Mac App Store to do this for you - but why not create your own script and run it with a simple right-click directly inside Finder? Let’s do just that!

+

Basic requirements

+

Important!: As of this time of writing, the official libwebp package release is libwebp-1.2.1-mac-10.15. If this has been updated since then, change the command below to match that of the proper release version.

+
    +
  1. First you will need to download the libwebp package to your Downloads folder: developers.google.com/speed/webp/download +
      +
    • Look for the “Download for macOS link”
    • +
  2. +
  3. Next we will need to copy the cwebp folder to our /usr/local/bin directory: +
      +
    • Open macOS Terminal
    • +
    • Run sudo cp /Downloads/libwebp-1.2.1-mac-10.15/bin/cwebp /usr/local/bin
    • +
    • Note: if the /usr/local/bin directory doesn’t exist, simply create it by running: sudo cd /usr/local && mkdir bin
    • +
  4. +
+

Creating our custom Automator script

+
    +
  1. Open the macOS Automator from the Applications folder

  2. +
  3. Select Quick Option from the first prompt

  4. +
  5. Set “Workflow receives current” to image files

  6. +
  7. Set the label “in” to Finder

  8. +
  9. From the left pane, select “Library > Utilities”

  10. +
  11. From the presented choices in the next pane, drag and drop Run Shell Script into the far right pane

  12. +
  13. Set the area “Pass input” to as arguments

  14. +
  15. Enter the following code below as your script and type ⌘-S to save (name it something like “Convert to webp”)

  16. +
+
for f in "$@"
+do
+/usr/local/bin/cwebp -q 85 "$f" -o "${f%.*}.webp"
+done
+
+

For visual reference, it should look something like this:

+

And when right-clicking an image file in the Finder window, it should now give you the option to convert:

+

Making edits to your script

+

If you ever have the need to edit this script (for example, changing the default 85 quality parameter), you will need to navigate to your ~/Library/Services folder and open your custom webp Quick Action in the Automator application.

+

Simple as that!

+

Possible Hiccups

+

I was contacted by the very helpful Kev Quirk about a minor problem he encountered while following this tutorial. When trying to run cwebp he received the following error message:

+
cwebp cannot be opened because it's from an unverified developer
+
+

Doing the next steps seemed to have fixed this issue for him:

+
    +
  1. Click on the “Open in Finder” in the error message prompt
  2. +
  3. Double-click on the cwebp utility to open in Terminal
  4. +
  5. You’ll then be prompted with a pop-up asking if you wish to execute
  6. +
+

After following these steps, the issue should be resolved.

+ \ No newline at end of file -- cgit v1.2.3-54-g00ecf