見出し画像

Cocoa Scripting Course #7 NSColor完成!

Piyomaru Softwareの電子書籍88冊目にしてCocoa Scripting Courseシリーズの7冊目が完成しました。


セミナー資料風のCocoa Scripting本

本書は478ページになっており、色に関する処理をAppleScript+Cocoaで行う際に必須の情報をまとめています。

本書はKeynoteで作成しており、TOCつきのPDF書き出しを行うのは自作のAppleScriptです。

既刊本「Keynote Scripting Book with AppleScript」に収録しているTOCつきPDF書き出しAppleScriptを用いてPDF出力

macOS Cocoa APIのうち「色」に関するクラス「NSColor」、色セットを扱うクラス「NSColorList」、色空間に関するクラス「NSColorSpace」の各メソッドや定数などを、こまかにサンプルAppleScriptをまじえて解説しています。

Color処理 基礎編

基礎編では、AppleScriptで「色」を扱うのに欠かせない、「カラーピッカー」の使い方から解説しています。

このカラーピッカーを呼び出すAppleScriptのコマンド「choose color」の説明。

AppleScriptのchoose colorコマンドが扱うデータと、CocoaのNSColorの仕様の違いを説明します。

AppleScriptからCocoaの機能を呼び出すCocoa Scriptingは、難しくはありません。ただ単に、決められたデータを用意して、APIを呼び出すだけ。工夫も何も必要ありません。

それらの単純な機能を用いて、より高度な機能を実現することに、ポイントがあります。

Color処理 上級編

ここからが本番。より高度な処理を実現する上級編です。

色の明るさ、明度を取得する方法について検討を行い、

それぞれの方法で実際に処理した結果を比較し、

色から明度情報を取得できるメリットについて説明。紹介したプログラムコードについて、掲載します。

こうした、AppleScriptから色に関するさまざまな処理を行う例を、

色から明度情報を取得
画像の指定座標のピクセルの色情報を取得
AppleScriptの構文色分け設定の書式情報読み取り
HTML色コードの取り扱い
CIColorを作成してCoreImageフィルタを実行
ざっくりとした色判定(カラードメイン処理)
色差(ΔE)を計算する
色名を推定(dbColNamesKit)
色のポスタライズ
頻出色の抽出(ColorCube)
2つの色の合成
輝度をMAXにした色を取得(Colours)
Adobe Swatch Exchangeファイル作成
画像の空白判定

などの項目について、実際に解説し、プログラムコードを掲載しています。

掲載資料のアップデート

掲載している各種資料について、最新のmacOS 14に関するデータを追加。

Cocoa Scripting Courseは、受講者募集中です。


この記事が気に入ったらサポートをしてみませんか?