goo

PyObjCでCoreGraphics

オレオレメモ。

さて、当然ながらPyObjCでCoreGraphicsを使う場合にはimportする必要があるわけです。
しかし
from CoreGraphics import *

とやると、64bitバージョンの_CoreGraphics.soが無いから32bitで起動してね。詳細はmanで。などと言われてしまいます。
なんだそりゃ、と思いますが、実はPyObjCではQuartzというパッケージがあって、64bit対応のCoreGraphicsはちゃんとそこにあります。
なので、

from Quartz import *
# もしくは
from Quartz.CoreGraphics import *

とすれば大丈夫。
ちなみに最初に使おうとしたCoreGraphicsは、ずっと昔にApple自らがCoreraphicsのPythonバインディングを作った名残。
若干不完全なCoreGraphicsに、画像の読み書きなどのユーティリティ的なメソッドを追加したものでした。
しかし10.6でOSが64bitになったにもかかわらず、アップルお得意の飽きっぽさを発揮して更新されることなく絶賛放置で風化待ち。
ファイル名から一発でCGImageを取得できるメソッドなど少し便利なものもありましたが、AppKitを併用すればファイルの読み書きも楽勝なので、いまさらそちらを使うメリットもないでしょう。
そのうち昔のCoreGraphicsは消えるんだろうね。
中途半端なことするなよアップル...
コメント ( 0 ) | Trackback ( 0 )
Messenger この記事をはてなブックマークに追加 mixiチェック シェア
« PyObjCでチェッカ... 2012年 »
 
コメント
 
コメントはありません。
コメントを投稿する
 
名前
タイトル
URL
コメント
規約に同意の上 コメント投稿を行ってください。
※文字化け等の原因になりますので、顔文字の利用はお控えください。
下記数字4桁を入力し、投稿ボタンを押してください。この数字を読み取っていただくことで自動化されたプログラムによる投稿でないことを確認させていただいております。
数字4桁
 
この記事のトラックバック Ping-URL
 
 
※ブログ管理者のみ、編集画面で設定の変更が可能です。