我有一個應用程序,您可以在其中將信息輸入到某些表單中,然後按下按鈕以通過圖像上顯示的信息向圖像發送電子郵件。我將表單中的字符串轉換爲UILabels,並將這些字符串放在UIImageView上,然後嘗試獲取該圖像並將其作爲附件發送給他人。當我按下按鈕時,我只是在電子郵件中獲得原始圖像。這裏是我的代碼:在UIImageView中編輯圖像並使用新圖像
-(IBAction)emailToCustomer:(id)sender {
UIImage *rebateImage = [UIImage imageNamed:@"rebate.png"];
UIImageView *rebateImView = [[UIImageView alloc]initWithImage:rebateImage];
UILabel *rebateLabel = [[UILabel alloc]init];
rebateLabel.text = productField.text;
[rebateImView addSubview:rebateLabel];
NSData *rebateData = UIImagePNGRepresentation(rebateImView.image);
MFMailCOmposeViewController *mailVC = [[MFMailComposeViewController alloc]init];
[mailVC setMailComposeDelegate:self];
if([MFMailComposeViewController canSendMail]) {
[mailVC setSubject:@"Rebate"];
[mailVC addAttachmentData:rebateData mimeType:@"image/png" filename:@"RebateCoupon.png"];
[self presentViewController:mailVC animated:YES completion:nil];
} else {
NSLog(@"Can't Send Mail");
}
}
即使我在字段中輸入信息,我在電子郵件中收到的所有回扣圖像都是原始回扣圖像。我希望將來自productField的文本放在UIImageView的圖像上,並將新圖像附加到電子郵件中。
您需要快照您的imageview以獲取帶有標籤的圖像。 –
爲什麼你在圖像視圖上放置標籤,僅僅爲了電子郵件的目的而向圖像添加文本?沒有必要。通過在其上繪製文本從原始圖像創建新圖像。 – rmaddy