2010-01-11 11 views
6

Potrzebuję dowiedzieć się długość piksela NSString w Cocoa na OSX i znalazłem kilka linków, które opisują, jak to zrobić za pomocą sdk IPhone, ale Nie widziałem nic o tym, jak to zrobić, gdy nie celujesz w iPhone'a. Czy ktoś może linkować mnie do niektórych dokumentów, które byłyby istotne. Znalazłem cokolwiek w dokumentach NSString.Określanie długości piksela ciąg w kakao (MAC OSX)

+2

Nie myśl o pikselach - są one artefaktem urządzenia. Jeśli nie rozmawiasz bezpośrednio z urządzeniem lub nie pracujesz bezpośrednio z buforem rastrowym ("bitmap"), nie pracujesz z pikselami. Operacje wektorowe, w tym pomiary i rysowanie łańcuchów, działają z jednostkami przestrzeni użytkownika: http://developer.apple.com/mac/library/documentation/Cocoa/Conceptual/CocoaDrawingGuide/Transforms/Transforms.html#//apple_ref/doc/uid/TP40003290-CH204-SW5 –

Odpowiedz

7
+3

na marginesie: powodem, dla którego nie można go znaleźć w dokumentach NSString jest to, że jest zależny od kilku rzeczy w AppKit, więc należy do odrębnej kategorii. – cobbal

4

Oto co mam użyć, aby uzyskać rozmiar ciąg ...

NSSize size = [@"Some text" sizeWithAttributes:[NSDictionary dictionaryWithObject:[NSFont fontWithName:@"Helvetica Neue Bold" size:24.0f] forKey:NSFontAttributeName]]; 

UWAGA: Jeśli dodajesz ciąg do pola tekstowego, i odkryli, że ciebie należy dodać około 10 do size.width, aby pasował.