我想輸出iPhone的高分辨率版本的iPhone界面。我正在使用標籤imagesViews和textViews來創建內容。我使用renderInContext來製作主視圖的高分辨率圖像,並縮放內容以匹配。標籤和imageView似乎完美地工作,但textView隱藏文本的一些縮放正確定位。UITextView在縮放輸出時隱藏文本
下面是基本代碼:
UIGraphicsBeginImageContext(CGSizeMake(1536, 2048));
myExportView.frame = CGRectMake(0, 0, 1536, 2048);
[myLabel setFrame:CGRectMake(myLabel.frame.origin.x*4.4232, myLabel.frame.origin.y*4.4232, myLabel.frame.size.width*4.4232, myLabel.frame.size.height*4.4232)];
[myLabel setFont:[UIFont fontWithName:@"Arial" size:myLabel.font.pointSize*4.4232]];
[myTextView setFrame:CGRectMake(myTextView.frame.origin.x*4.4232, myTextView.frame.origin.y*4.4232, myTextView.frame.size.width*4.4232, myTextView.frame.size.height*4.4232)];
[myTextView setFont:[UIFont fontWithName:@"Arial" size:myTextView.font.pointSize*4.4232]];
[[myExportView layer] renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
UIImageWriteToSavedPhotosAlbum(image,nil,nil,nil);
這裏是一個視覺的接口,並與在左邊的640×960接口和我的1536×2048輸出圖像右邊的輸出(如預期)請注意,標籤和textView已正確縮放,但textView中的文本已消失。
這裏是項目本身,如果你想看看:owolf.net/uploads/StackOverflow/exportTest.zip
UPDATE這裏TextView的,左邊,縮放除了在x中只有* 2,在右邊x被縮放爲3.注意文本開始被剪裁。
任何想法?幫助非常感謝
我想你錯在你的代碼,增加textView.height在* 3(與寬度)或origin.y協調可能是太多,所以文本再次隱藏。沒有其他原因,這個textview的行爲,我還沒有找到 – frankWhite 2012-08-08 10:30:11
或檢查你的uitextview中的字體系數 – frankWhite 2012-08-08 10:55:48