2012-06-28 31 views
8

Chúng tôi hiện đang xây dựng một ứng dụng iPhone và muốn văn bản có hiệu ứng phát sáng để phù hợp với thiết kế giao diện người dùng thực tế.Tạo hiệu ứng văn bản phát sáng trên iOS

Đây là những gì chúng tôi đang cố gắng đạt được.

glowing text

Chúng tôi đang gặp khó khăn để tạo ra các hiệu ứng ánh sáng nội tâm tại thời điểm vì vậy bất kỳ trợ giúp sẽ được đánh giá cao.

Trong photoshop văn bản này có

  • một màu # 98c1c1
  • Outer glow: # ffffff, màn hình pha trộn chế độ, 30% opacity, kích thước 5px.
  • Ánh sáng bên trong: # c79d85, Chế độ hòa trộn màu Dodge, độ mờ 70%, kích thước 5px.

Xin cảm ơn, Đánh dấu.

+1

Điều này có thể có thể giúp bạn: http://stackoverflow.com/questions/1420131/iphone-text-glow-effect hoặc http://www.redrobotstudios.com/blog/2010/04/29/create- glow-soft-shadow-text-trên-iphone/ – TheZ

Trả lời

13

Để thiết lập các nút với văn bản màu # 98c1c1, sử dụng:

UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(100, 100, 100, 60)]; 
label.textColor = [UIColor colorWithRed:((float)152/255) green:((float) 193/255) blue:((float) 193/255) alpha:1.0f]; 

tôi đã sử dụng Photoshop để tìm các thành phần RGB của # 98c1c1, mà rốt cuộc là R: 152 G: 193 B: 193. Và colorWithRed:green:blue:alpha: mất một giá trị bình thường hóa giữa 0 và 1, và đó là lý do tại sao tôi đã làm cho nó giá trị RGB trên 255.

Đối với ánh sáng bên ngoài, sử dụng:

label.layer.shadowColor = [UIColor whiteColor].CGColor; 
label.layer.shadowOffset = CGSizeMake(0.0, 0.0);  
label.layer.shadowRadius = 10.0; 
label.layer.shadowOpacity = 0.3; 
label.layer.masksToBounds = NO; 

Bạn muốn opacity là 30% và màu bóng #ffffff (màu trắng). Đó là lý do tại sao label.layer.shadowOpacity được đặt thành 0,3 (30%) và label.layer.shadowColor được đặt thành màu trắng.

Tôi không chắc chắn về cách thực hiện ánh sáng bên trong, nhưng bạn có thể tạo một phương thức sao chép văn bản nhưng làm cho phông chữ nhỏ hơn và căn giữa văn bản mới, để tạo hiệu ứng của ánh sáng bên trong. Hãy nhớ nhập <Quartzcore/Quartzcore.h>!

+0

Cảm ơn rất nhiều! Chúng tôi sẽ cung cấp cho một thử. – markstewie

Các vấn đề liên quan