Menu

Skip to content
AppleScriptの穴
  • Home
  • Products
  • Books
  • Docs
  • Events
  • Forum
  • About This Blog
  • License
  • 仕事依頼

AppleScriptの穴

Useful & Practical AppleScript archive. Click '★Click Here to Open This Script' Link to download each AppleScript

Illustratorで指定のartboardの名称を取得する

Posted on 1月 11, 2019 by Takaaki Naganoya

Adobe Illustratorで指定のartboardの名称を取得するAppleScriptです。

本来であれば、Illustratorのdocument以下のartboardの名称を取得するのであれば、

tell application "Adobe Illustrator"
  set aName to name of artboard 1 of document 1
end tell

★Click Here to Open This Script 

で取得できる「はず」ですが、実際にAdobe Illustratorに対してこれを実行するとエラーになります(Adobe Illustrator CC2018=Adobe Illustrator v22.1にて実行)。

これは、Adobeがいいかげんな実装を行って、出荷前に一切のチェックを行わないためです。100% Adobeのせいです。

ちなみに、このproperty値からnameをIllustratorへのtellブロック外で取得すると、

のようになります。エラーメッセージの文字列としては取得できることがわかります。エラーメッセージのダイアログではAdobe IllustratorのAppleScript用語辞書の予約語を用いて表示が行われていますが、実際にエラーメッセージを(Adobe Illustratorのtellブロック外で)文字列として取得すると、用語辞書が用いられないので生のAppleEventの文字列を相手にすることになります。

というわけで、手段をえらばずにエラーメッセージから名前を取り出してみました。任意のアートボードのプロパティ値を取得してgetArtboardNameFromPropertiesを呼び出すと、アートボード名を抽出します。なお、動作原理の都合上、アートボード名にダブルクォートを含まないようにしてください。

こんなイレギュラーでトリッキーなやり方が必要なのは、Adobeの開発者がバカだからです(本当に)。心の底から軽蔑します(artboardのnameを取得する場合には、部分的にJavaScriptを呼び出して実行してもOK、というかその方法が推奨されます)。

AppleScript名:アートボードの名前を取得する
—
–  Created by: Takaaki Naganoya
–  Created on: 2019/01/11
—
–  Copyright © 2019 Piyomaru Software, All Rights Reserved
—
use AppleScript version "2.4" — Yosemite (10.10) or later
use framework "Foundation"
use scripting additions

tell application "Adobe Illustrator"
  tell document 1
    tell artboard 1
      set aProp to properties
      
set aName to getArtboardNameFromProperties(aProp) of me
    end tell
  end tell
end tell

on getArtboardNameFromProperties(aProp)
  set beginStr to "«class bAl9»:\""
  
  
try
    set aRec to aProp as string
  on error erM
    set offsetA to offset of beginStr in erM
    
set ermB to text (offsetA + (length of beginStr)) thru -1 of erM
    
set offsetB to offset of "\"" in ermB
    
set resB to text 1 thru (offsetB – 1) of ermB
    
return resB
  end try
  
  
error "Illigal Data Format" –Error
end getArtboardNameFromProperties

★Click Here to Open This Script 

More from my site

  • 丸つき数字を数値にデコードする v2丸つき数字を数値にデコードする v2
  • common elements Libをロシア語などのクエリーで呼び出すcommon elements Libをロシア語などのクエリーで呼び出す
  • Wikipedia経由で2つの単語の共通要素を計算するcommon elements Lib Script LibraryWikipedia経由で2つの単語の共通要素を計算するcommon elements Lib Script Library
  • 自然言語テキストから複数の日付情報を抽出自然言語テキストから複数の日付情報を抽出
  • BlogアーカイブのMarkdown書類をリネーム。親、親+1階層フォルダをMM, YYYYとみなして反映BlogアーカイブのMarkdown書類をリネーム。親、親+1階層フォルダをMM, YYYYとみなして反映
  • Numbersで各シート名称を置換Numbersで各シート名称を置換
(Visited 343 times, 1 visits today)
Posted in How To Raw AppleEvent Code | Tagged 10.12savvy 10.13savvy Illustrator | 2 Comments

2 thoughts on “<span>Illustratorで指定のartboardの名称を取得する</span>”

  1. 6/19/20
    11:54 PM
    2020年6月19日
    11:54 PM

    Reply

    dean says:

    I have always gotten name of artboard by getting properties as list of the artboard and then setting a variable to item 7 of this list. Did I miss something or a bug in a version of illustrator?

  2. 6/20/20
    12:09 AM
    2020年6月20日
    12:09 AM

    Reply

    Takaaki Naganoya says:

    Hi Dean, which version of Illustrator do you use?

Leave a Reply to dean Cancel reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

電子書籍(PDF)をオンラインストアで販売中!

Google Search

Popular posts

  • macOS 13, Ventura(継続更新)
  • アラートダイアログ上にWebViewで3Dコンテンツを表示(WebGL+three.js)v3
  • Xcode 14.2でAppleScript App Templateを復活させる
  • macOS 13 TTS Voice環境に変更
  • UI Browserがgithub上でソース公開され、オープンソースに
  • 2022年に書いた価値あるAppleScript
  • ChatGPTで文章のベクトル化(Embedding)
  • 新発売:AppleScriptからSiriを呼び出そう!
  • iWork 12.2がリリースされた
  • 新発売:CotEditor Scripting Book with AppleScript
  • macOS 13対応アップデート:AppleScript実践的テクニック集(1)GUI Scripting
  • macOS 13でNSNotFoundバグふたたび
  • ChatGPTでchatに対する応答文を取得
  • 新発売:iWork Scripting Book with AppleScript
  • Finderの隠し命令openVirtualLocationが発見される
  • macOS 13.1アップデートでスクリプトエディタの挙動がようやくまともに
  • あのコン過去ログビューワー(暫定版)
  • AppleScriptの数値変数で指数表示にならない最大値、最小値
  • バカスタム App選手権 入賞!
  • macOS 14, Sonoma

Tags

10.11savvy (1101) 10.12savvy (1242) 10.13savvy (1390) 10.14savvy (586) 10.15savvy (434) 11.0savvy (277) 12.0savvy (186) 13.0savvy (59) CotEditor (60) Finder (47) iTunes (19) Keynote (99) NSAlert (60) NSArray (51) NSBezierPath (18) NSBitmapImageRep (20) NSBundle (20) NSButton (34) NSColor (51) NSDictionary (27) NSFileManager (23) NSFont (18) NSImage (41) NSJSONSerialization (21) NSMutableArray (62) NSMutableDictionary (21) NSPredicate (36) NSRunningApplication (56) NSScreen (30) NSScrollView (22) NSString (117) NSURL (97) NSURLRequest (23) NSUTF8StringEncoding (30) NSView (33) NSWorkspace (20) Numbers (57) Pages (38) Safari (41) Script Editor (20) WKUserContentController (21) WKUserScript (20) WKUserScriptInjectionTimeAtDocumentEnd (18) WKWebView (23) WKWebViewConfiguration (22)

カテゴリー

  • 2D Bin Packing
  • 3D
  • AirDrop
  • AirPlay
  • Animation
  • AppleScript Application on Xcode
  • beta
  • Bluetooth
  • Books
  • boolean
  • bounds
  • Bug
  • Calendar
  • call by reference
  • Clipboard
  • Code Sign
  • Color
  • Custom Class
  • dialog
  • drive
  • exif
  • file
  • File path
  • filter
  • folder
  • Font
  • Font
  • GAME
  • geolocation
  • GUI
  • GUI Scripting
  • Hex
  • History
  • How To
  • iCloud
  • Icon
  • Image
  • Input Method
  • Internet
  • iOS App
  • JavaScript
  • JSON
  • JXA
  • Keychain
  • Keychain
  • Language
  • Library
  • list
  • Locale
  • Machine Learning
  • Map
  • Markdown
  • Menu
  • Metadata
  • MIDI
  • MIME
  • Natural Language Processing
  • Network
  • news
  • Noification
  • Notarization
  • Number
  • Object control
  • OCR
  • OSA
  • PDF
  • Peripheral
  • PRODUCTS
  • QR Code
  • Raw AppleEvent Code
  • Record
  • rectangle
  • recursive call
  • regexp
  • Release
  • Remote Control
  • Require Control-Command-R to run
  • REST API
  • Review
  • RTF
  • Sandbox
  • Screen Saver
  • Script Libraries
  • sdef
  • search
  • Security
  • selection
  • shell script
  • Shortcuts Workflow
  • Sort
  • Sound
  • Spellchecker
  • Spotlight
  • SVG
  • System
  • Tag
  • Telephony
  • Text
  • Text to Speech
  • timezone
  • Tools
  • Update
  • URL
  • UTI
  • Web Contents Control
  • WiFi
  • XML
  • XML-RPC
  • イベント(Event)
  • 未分類

アーカイブ

  • 2023年10月
  • 2023年9月
  • 2023年8月
  • 2023年7月
  • 2023年6月
  • 2023年5月
  • 2023年4月
  • 2023年3月
  • 2023年2月
  • 2023年1月
  • 2022年12月
  • 2022年11月
  • 2022年10月
  • 2022年9月
  • 2022年8月
  • 2022年7月
  • 2022年6月
  • 2022年5月
  • 2022年4月
  • 2022年3月
  • 2022年2月
  • 2022年1月
  • 2021年12月
  • 2021年11月
  • 2021年10月
  • 2021年9月
  • 2021年8月
  • 2021年7月
  • 2021年6月
  • 2021年5月
  • 2021年4月
  • 2021年3月
  • 2021年2月
  • 2021年1月
  • 2020年12月
  • 2020年11月
  • 2020年10月
  • 2020年9月
  • 2020年8月
  • 2020年7月
  • 2020年6月
  • 2020年5月
  • 2020年4月
  • 2020年3月
  • 2020年2月
  • 2020年1月
  • 2019年12月
  • 2019年11月
  • 2019年10月
  • 2019年9月
  • 2019年8月
  • 2019年7月
  • 2019年6月
  • 2019年5月
  • 2019年4月
  • 2019年3月
  • 2019年2月
  • 2019年1月
  • 2018年12月
  • 2018年11月
  • 2018年10月
  • 2018年9月
  • 2018年8月
  • 2018年7月
  • 2018年6月
  • 2018年5月
  • 2018年4月
  • 2018年3月
  • 2018年2月

https://piyomarusoft.booth.pm/items/301502

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org

Forum Posts

  • 人気のトピック
  • 返信がないトピック

メタ情報

  • ログイン
  • 投稿フィード
  • コメントフィード
  • WordPress.org
Proudly powered by WordPress
Theme: Flint by Star Verte LLC