Hatena::ブログ(Diary)

at_yasuの日記もといメモ書き RSSフィード Twitter

2007-06-19

関数型指数

| 11:46 |  関数型指数を含むブックマーク

「あなたの関数型指数は 0.143536334237172 です。正が関数型、負が手続き型です。」と結果が出ました。ほんとかどうかは知りません。てか、基準がよくわからん・・・

潜在的な関数型プログラミングの嗜好度をはかる IAT サイト:no title

NSRange と NSRect と NSPoint

| 20:02 |  NSRange と NSRect と NSPointを含むブックマーク

NSRangeとNSPointとNSRectの作成関数とかをよく忘れるからメモ書き。

ほとんど、404 Not Foundの情報。


NSRange
NSRangeは範囲s指定に使う。NSString とか。NSZeroRange定数があり、それを使用すると0,0のNSRange型を作ることができる。また、0とは別の意味のNSNotFoundなどの例外があるので注意。
NSPoint
NSPointは画像などの二次元のxy座標を持っている。NSZeroPointを使う事で x=0.0, y=0.0のNSPoint型を作ることができる。
NSRect
NSRectは画像のサイズや起点座標を持っている。いろいろと関数があるけどどれが何だかよくわかんね orz

NS(Range,Point,Rect)を新規作成する関数
NSMakeRange(unsigned int loc, unsigned int len)
NSRange構造体を新規に作成する。
NSMakePoint(float x, float y)
NSPoint構造体を新規に作成する。
NSMakeRect(float x, float y, float w, float h)
Rect構造体を新規に作成する。

NSString の表示

| 01:18 |  NSString の表示を含むブックマーク

Mac OS X v10.4 で新機能が追加されてたのでここにメモ。



NSAttributeString
- (void)drawWithRect:(NSRect)rect options:(NSStringDrawingOptions)options

文字列を指定した範囲名に、optionを指定した様に表示させる。



NSStringDrawingOptionsの内容

文字列を描画する際にオプションとして指定する。全部、Mac OS X v10.4 以降でなければ使用できない。

typedef enum {
   NSStringDrawingUsesLineFragmentOrigin = (1 << 0),
   NSStringDrawingUsesFontLeading = (1 << 1),
   NSStringDrawingDisableScreenFontSubstitution = (1 << 2),
   NSStringDrawingUsesDeviceMetrics = (1 << 3),
   NSStringDrawingOneShot = (1 << 4)} NSStringDrawingOptions; 

NSStringDrawingUsesLineFragmentOrigin
指定原点はベースラインではなく、ラインフラグメントである。(The specified origin is the line fragment origin, not the base line origin.)
NSStringDrawingUsesFontLeading
線の高さから計算し、フォントを選び使用する。(Uses the font leading for calculating line heights.)
NSStringDrawingDisableScreenFontSubstitution
スクリーンフォントの取り替えをしません。つまり、[NSLayoutManager setUsesScreenFonts:NO]と同じ事です。(Disable screen font substitution (equivalent to [NSLayoutManager setUsesScreenFonts:NO]).)
NSStringDrawingUsesDeviceMetrics
表示する文字列は、表示する限界で区切る。(Uses image glyph bounds instead of typographic bounds.)
NSStringDrawingOneShot
レイアウト情報をキャッシュする。(Suppresses caching layout information.)


ぐだぐだな訳でごめんなさい・・・orz

トラックバック - http://d.hatena.ne.jp/at_yasu/20070619