932 :
924:04/07/03 22:01 ID:5KXitfUY
>>925 文字列のアンチエイリアスはNSGraphicsContextで切れますよ。
↓こんな感じでどうでしょう?
- (IBAction)test:(id)sender
{
NSGraphicsContext *gc = [NSGraphicsContext currentContext];
NSString *s = @"test";
[self lockFocus];
[gc setShouldAntialias:NO];
[s drawInRect:NSMakeRect(0,0,200,200)
withAttributes:[NSDictionary dictionaryWithObject:[NSFont fontWithName:@"Helvetica" size:50]
forKey:NSFontAttributeName]];
[self unlockFocus];
}
933 :
925:04/07/03 22:43 ID:+FmT0CBP
>>932 あれ、これでいけましたか?
こちらではうまくいかないのですが・・・。
違いと言えば、こちらではNSImageをallocして、それにlockFocusして、setShouldAntialias
してから文字列を描画していることくらいだと思うのですが、うまくいきません。
もうすこし調べてみます。ありがとう。
934 :
932:04/07/04 00:27 ID:CMWl3gpF
こちらではうまくいっています。
補足ですが
上のメソッドはNSViewを継承したクラスに記述したものです。
したがって,lockFocusはNSViewのものが呼び出されています。一番の違いはここのような気がします。
>>933 NSImage を lockFocus した"あとに" カレントグラフィクスコンテクスト を取得しましょう。
NSGraphicsContext の currentContext メソッドは現在フォーカスを持つグラフィクスコンテクストを取得します。
936 :
925:04/07/04 07:53 ID:dE9ocDtU
おお、いけました。勉強になります。
>currentContext メソッドは現在フォーカスを持つグラフィクスコンテクストを取得します
なるほど、そういわれれば納得。
いろいろありがとうございました。
>>932,935
すいません。質問させてくだい。
アウトラインビューで指定したアイテムを選択させたいのですが、
どうもうまくいきません。
テーブルビューでは行の番号で指定して選択できたのですが、
アウトラインだとその方法ではできませんでした。
助言お願いいたします。
gif2png2.5.1がCarbon/Cocoaで使えたら…と先刻ソースコードを
落としてきたものの、解凍して出来たソレは何をどうしたらいいの
かゼロから勉強せねば訳の分からぬ世界でした。
こちらのスレを参考に、頑張ってコンパイルまでたどり着けるよう
頑張ります。
頑張って〜たどりつけるよう勉強します orz
まずはオライリーのCocoa本を探しに行かねば。
>>938 gif -> pngって普通にCocoaで出来るよね。
なんで必要なの?
>940
恥ずかしながらそういった事さえ分かっておりませんでした(Xcodeで
Cocoaアプリケーションを自分でも作れるらしい、程度の考え方でした)。
現在Photoshop Elementsの「Web書き出し..」.で作成したGIFファイルを
PIXTURE STUDIOにて配付されているgif2png 2.3.2でPNGに変換する方法
をとっている(二度手間ですが、不要なヘッダの取捨選択やガンマ値チャ
ンクを書き込めたりWeb書き出しのPNG保存より小さく保存できるため)の
ですが、この工程をgif2pngそのものをCocoaアプリにする事でAppleScript
なりアクションで制御出来ないだろうかと思ったのです。
942 :
940:04/07/06 16:09 ID:iszmCYsz
Pixadexなどのアイコン管理ソフトやiPhotoのように
ScrollVIew内のViewに画像を多数表示させたいんですが
いいサンプルか書籍はありますか?
自分でも挑戦してみたんですがスクロールさせると描画が乱れてしまいます。
944 :
869:04/07/10 16:12 ID:AmAb0xQt
>>943 固定サイズのサブビューをぺたぺた貼っていくのがはやいかもしんない。
変な例だけどDeveloper/Sample/AppKitについてるテキストエディットのMultiplePagesViewあたりを
参考にするとよいのでは。
NSImageCellを使えばええんでないの?
本格的にプログラミングをはじめようと、本のサンプルを参考に
自分なりのメソッドを作って拡張したのですが、
一つの.m、.hファイルに付け足していったので、ソースコードが長くて不便です。
機能ごとにソースファイルを分割したいのですが、まずはじめに
何をすればよいかよくわかりません。
レベル的にもCをちょっとかじった程度です。
自学したいので参考となるURLや書籍、サンプルコードはないでしょうか…
>>946 入門書を読んで勉強するしかないけど、.m, .hで分けるということなら
クラス毎にファイルに分ければいい。Objective-Cで書いてるなら。
入門書はいくつも買わないでとりあえず一つだけ買って攻略する。
あとは慣れ。実践で憶えていくしかない。Cocoaならヒレガス本がお薦め。
HappyMacintoshDevelopingTimeがいいという人もいるけど、あれはちょっと
初心者には向いてないと思う。初心者が読む部分の説明が良くない。
>>946 >機能ごとにソースファイルを分割したい
カテゴリだな。
荻原本読んどけ。
初めは少々難しいが、あとになって必ず役に立つ。
>>947 >クラス毎にファイルに分ければいい。Objective-Cで書いてるなら。
分割したいクラスの部分を既存のソースファイルから切り取って
xxx.h、xxx.mに保存してビルドすれば良いということですか?
分割したファイルと分割元ファイルをimportなりなんなりで
クラス同士の関連付けする必要はないのでしょうか?
>あとは慣れ。実践で憶えていくしかない。Cocoaならヒレガス本がお薦め。
ヒレガス本探してきますλ....
>>948 カテゴリって言うんですね…
検索キーがわからなくて難儀してました。
調べてみます。
>>947-948 色々ありがとうございます(TдT)
951 :
名称未設定:04/07/13 21:05 ID:/hcMHNhq
メニューバーを探せ。サブメニューじゃないからすぐ見つかる。
953 :
名称未設定:04/07/13 21:38 ID:/hcMHNhq
あ、なんとなく出来た。。
習うより慣れろって感じっすね。<InterfaceBuilder
ついでに
Carbon もさっぱり!!!
>>954 漏れなんかCarbonはきっぱりってつもりだったんだが(w
肝心な所でCarbonでてくるしよぉ(鬱
一つのアプリで2つのウィンドウを生成して、それぞれにImageViewとOpenGLViewを
表示させたいけど起動中に落ちてしまう…
インターフェースビルダーで、windowのインスタンスを2つ作るだけじゃダメなんですかね…
>>956 コンソール -> ログ -> 〜Library/Logs -> CrashReporter
で落ちた原因を確認しる。
書いてある通りにやってもできない事が大杉のHMDTの本だが、
初心者の自分も躓いた点を書いとく
p282のパネルにボタンを格子状に配置する際、オプションキーを押しながらドラッグ
となってるが正しくは、オプションキーを押しながらオブジェクト(ボタン)のリサイズハンドルを
ドラッグだった…
オプションキーを押しながらオブジェクトをドラッグしてもオブジェクトが
コピーされるだけで2時間ぐらい悩まされた(-ωー)
Interface Builderのヘルプを検索してようやく気づく…
新しいのは良くなってるんかねえ…
>>958 追加以外のとこも書き直されてるみたいだよ。
(クリックしている絵)
961 :
名称未設定:04/07/18 08:32 ID:p/suTzR3
いまテキストエディタ書いてるんですけど、
DiskArbitrationRegister failed: 1102
ていうエラーメッセージが必ず出てしまいます。その後問題なく起動します。
AppleのサイトではCarbonのTipsにしか載ってないんですけど、どなたかこのエラーが
何なのか御存知の方いませんか?
NSTextViewをサブクラス化してるくらいで、別に変わったことはしてないですけど。
962 :
名称未設定:04/07/24 03:56 ID:T9KFdhRI
300dpiのimageに下記のように文字を描画すると、
[image lockFocus];
[str drawAtPoint:point withAttributes:dicAttr];
[image unlockFocus];
できたimageの解像度は72dpiになっています。
解像度を落とさずに文字を描画したいんですが、どのように
したら良いのでしょうか。ご存知のかたお教え下さい。
dpi というものについて今一度考えた方が良いんじゃないか。
>>962 >解像度を落とさずに文字を描画
自分も同じ悩み持ちです。
読み込んだイメージの解像度を72dpiに変換すると同時に、
倍率を計算して、drawAtPointする時にNSAffineTransform
で倍率指定ってのが回避策か?と妄想中。
>>963 ぜひ、解像度が絡んだ場合の解決方法を教えてくださいまし。
965 :
869:04/07/24 20:44 ID:3zzuSVAU
>>962 >>964 WindowsのGDI+でもそうですけど、Appleの描画環境は
Device Independent + Resolution Independentです。
つまり、Cocoaレベルから解像度をいじることはできないはずです、多分。
ん??
Carbonで出来るのに?
というかQuartzはPDFベースだから・・・
968 :
869:04/07/26 11:39 ID:qtwfIU8c
ああ間違えたんか俺 ||orz
すんません逝ってきます
970 :
名称未設定:04/07/28 20:45 ID:fGsKXR4Q
NSTaskでUnixコマンドを実行しようとしてるんですが
実行しようとすると「stderr is not a tty」等と怒られてしまいます。
調べてみると出力先の問題だということは何となくわかったんですが
こういう場合どうしたらいいんでしょうか?
971 :
名称未設定:04/07/29 00:15 ID:ETseezzE
実行しようとしているUnixコマンドは何ですか?
stderrがttyを前提としているコマンドって何だろう?
>>971 実行した時にパスワードの入力を求めてくるものなので
出力先が端末(?)でないと駄目、というようなことらしいです。
NSPipeだと無理なんでしょうか?
>>972 質問の答えになってませんよ。sudoコマンドとかですか?
いんや、解凍コマンドです。
パスワードがかかってる場合、実行するとTerminalではそれを入力するように
いわれるんですが、NSTaskとNSPipeでそれを受けたい&答えたいというわけで。
>972
コマンド名を書けない訳は?
とあるコマンドである場合は別な方法で実行できるとだけ書いておこう。
>>976 2chでソフトから個人を特定されたくないってのもあり得るんだから、
あんまり追いつめるのも気の毒。
>>975 有名なコマンドなら直接APIを呼ぶなりソースをゲットするなり
それなりの方法もあるよ。そのぶん面倒臭いけど。
sage
Project Builderのエディタが不安定なんですが。
とにかくよく落ちる。
returnしても落ちるし、""と入力するだけで落ちたりする。
どうも文法を解釈するときが怪しいんだけど。。。
環境設定を変えると不安定になるという噂を聞いたけど、
同じような症状になった人はいませんかね?
OSは10.2.8です。
自動インデントを切れ。
ずばり、Cocoaプログラマさんにとって
ジャガーまでのProjectBuilderとパンサー以降のXcodeでの違いは?