Cocoa Scripting Course #7 NSColor
- ¥ 5,000
【AppleScript中〜上級者け】【図を中心に構成、文字数すくなめ】 本書は、Cocoa Scripting本の第7弾。色関連の処理をAppleScriptで行いたい人向けの解説書です。画像処理やRTF処理などで避けては通れない「色」に関する内容です。 色についての処理は割と概念が独特で、色空間、色の扱い、色差(ΔE)、明度計算などなど、知っていれば「そんなもんか」という程度のものですが、知らないとさっぱり分かりません。 ささいなOS上の色設定の情報をplistから読み取って処理するような場合にも、「普通、RGB値の色しか設定しないよね」と誰もが思っていたスクリプトエディタの構文色分け設定に、CMYK色やGrayscale色を設定しているユーザーがいて、慌てていろいろ対応する羽目になったりと、いい思い出がたくさんあります。 Adobe Swatch Exchangeファイル書き出しや、頻出色のリストアップ、近似色の計算や色差ΔEの計算など、今日明日からすぐに役立つ内容のオンパレード。お買い求めいただいた読者の皆様に、ご堪能いただけることでしょう。 PDF 478ページ+添付サンプルScriptアーカイブ 2024/4/11 ver.1.0.2 「資料編」が重複して収録されていたので、重複分を削除しました
目次
1章 入門編
Cocoa Scriptingの概要 Cocoa Scriptingってどういうもの? Cocoa Scriptingの実際 Cocoa Scriptingの威力 Cocoa Scriptingのメリット Cocoa Scriptingに必要なもの Cocoa Scriptingまとめ Cocoa Scripting9つの誓い Cocoa Scriptingに適したmacOSについて Cocoa Scripting環境の進化の歴史 Cocoa Scriptable macOS 参考資料:AppleScriptランタイム環境情報 Cocoa Scripting環境ごとの挙動の違い SIP解除の是非 プログラミングスタイル 開発・実行環境のちがい 処理手順の違い メインスレッド実行が必須な機能のScripting delegation, notification 実行スタイルの違いによる書き換え AppleScriptでCocoaオブジェクトを呼び出すと… サブルーチン記述 オブジェクト階層を示すmyとme クラス拡張 高速なCocoa Scriptを書くためには アプリケーションとのやりとり 暗黙の型変換 一部のコマンドで書き換えが必要 計算の優先順位を示すカッコを修正 オブジェクトの数え方 情報の調べ方 Cocoa Scriptingを行う際の調べ方 Appleのオンラインドキュメント Xcodeでヘッダーファイルを「素早く開く」 ヘッダーファイルの歩き方 ヘッダーファイルの構成要素 Deprecatedな機能に遭遇した場合 Enum(定数)の記載パターン AppleScriptの数値表現幅を超えるEnum(定数)
2章 実践編
Cocoa Scriptを実際に動かす Script Editor/Script Debuggerを起動 Cocoa Scriptを実行 Cocoa Objectのログを表示 Cocoa Scriptの書類を保存 Cocoa Scriptのエクスポート形式 Objective-CのCocoa呼び出し記述をAppleScript記述に翻訳する Cocoa Script(AppleScriptObjC)の構成 Objective-Cの各種データ表記書き換え(1/3) Objective-Cの各種データ表記書き換え(2/3) Objective-Cの各種データ表記書き換え(3/3) Cocoaメソッド名の大文字小文字指定 Cocoaメソッド名の変換(1/3) Cocoaメソッド名の変換(2/3) Cocoaメソッド名の変換(3/3) 基礎的なCocoaオブジェクト解説 メソッド呼び出し時のパラメータ NSString(文字列) NSArray(配列) NSDictionary(辞書) Number(数値) Enum(定数) nil NSObject Cocoa Scriptingの特徴的な動き AppleScriptとCocoa間の オブジェクト変換 AppleScriptオブジェクトに対応するCocoaクラス 配列関連のCocoaクラス レコード関連のCocoaクラス 文字列関連のCocoaクラス 日付関連のCocoaクラス File Path関連オブジェクト File Path関連オブジェクト変換方法 画像関連Cocoaオブジェクト ファイルパス文字列(NSString)関連(1/2) ファイルパス文字列(NSString)関連(2/2) URL関連 Remote URL文字列関連(1/2) Remote URL文字列関連(2/2) Local File URL文字列関連 配列関連 Dictionary関連 NSString文字エンコーディング関連 Color関連 HTML関連 Cocoa Object同士の変換、生成 NSData Styled String(1/2) Styled String(2/2) 2次元座標データ 1次元座標系データ 言語、Locale系データ 有用なCocoaオブジェクト(抜粋)
3章 NSColor編
Colorデータの位置付けと役割 NSColor Basic Samples init colorWithSRGBRed:① green:② blue:③ alpha:④ colorWithGenericGamma22White:① alpha:② colorWithDisplayP3Red:① green:② blue:③ alpha:④ colorWithWhite:① alpha:② colorWithRed:① green:② blue:③ alpha:④ colorWithHue:① saturation:② brightness:③ alpha:④ colorWithColorSpace:① hue:② saturation:③ brightness:④ alpha:⑤ colorWithCatalogName:① colorName:② 色名 colorNamed:① bundle:② colorNamed:① colorWithDeviceWhite:① alpha:② colorWithDeviceRed:① green:② blue:③ alpha:④ colorWithDeviceHue:① saturation:② brightness:③ alpha:④ colorWithDeviceCyan:① magenta:② yellow:③ black:④ alpha:⑤ colorWithCalibratedWhite:① alpha:② colorWithCalibratedRed:① green:② blue:③ alpha:④ colorWithCalibratedHue:① saturation:② brightness:③ alpha:④ colorWithPatternImage:① patternImage colorUsingType:① colorUsingColorSpace:① colorUsingColorSpace:① drawSwatchInRect:① set setFill setStroke blendedColorWithFraction:① ofColor:② colorWithAlphaComponent:① NSColorList Basic Samples availableColorLists colorListNamed:① initWithName:① initWithName:① fromFile:② name setColor:① forKey:② insertColor:① key:② atIndex:③ removeColorWithKey:① colorWithKey:① allKeys isEditable NSColorSpace Basic Samples initWithICCProfileData:① numberOfColorComponents colorSpaceModel localizedName 各種色空間の定義 availableColorSpacesWithModel
4章 Color処理 基礎編
choose colorコマンドで表示されるカラーピッカーの使い方 choose colorコマンドで指定したRGB色でNSColorを作成 Numbers書類上に記入したRGB値を色プレビュー NSColorからRGBAの各要素を取得 RGB色からHSBA色に変換 NSColorからHSBAの各要素を取得 NSColorから色空間名を取得 鉛筆(クレヨン)ピッカーに登録されている色名を取得
5章 Color処理 上級編
色から明度情報を取得 画像の指定座標のピクセルの色情報を取得 AppleScriptの構文色分け設定の書式情報読み取り HTML色コードの取り扱い CIColorを作成してCoreImageフィルタを実行 ざっくりとした色判定(カラードメイン処理) 色差(ΔE)を計算する 色名を推定(dbColNamesKit) 色のポスタライズ 頻出色の抽出(ColorCube) 2つの色の合成 輝度をMAXにした色を取得(Colours) Adobe Swatch Exchangeファイル作成 画像の空白判定
添付サンプルScript紹介
資料編
Cocoa Scripting関連のAppleScript命令 Cocoa ScriptingとScript Object AppleScript Droplet サードパーティ製FrameworkやAppleScript Librariesを呼ぶ AppleScript mini reference AppleScript 各種ランタイム環境および関連ツール AppleScript予約語一覧 エラーコード表