我试图找出在电子邮件正文中添加图像的最佳方式,而不是在ios中作为附件.
1)Apple提供了一个功能" addAttachment ",并且doc说,要在内容中添加任何图像,我们应该使用这个功能,但我尝试了这个功能,并发了一封邮件,我在浏览器上查了一下,就收到了一个附件.
2)其次,许多博客都说要使用base64编码,但这也不会起作用,图像会以破坏的形式发送.
所以朋友们,请帮助我找到最好的解决方案来做到这一点.
问候Ranjit
-(void)createPDFfromUIView:(UIView*)aView saveToDocumentsWithFileName:(NSString*)aFilename
{
// Creates a mutable data object for updating with binary data, like a byte array
UIWebView *webView = (UIWebView*)aView;
NSString *heightStr = [webView stringByEvaluatingJavaScriptFromString:@"document.body.scrollHeight;"];
int height = [heightStr intValue];
// Get the number of pages needed to print. 9 * 72 = 648
int pages = ceil(height / 648.0);
NSMutableData *pdfData = [NSMutableData data];
UIGraphicsBeginPDFContextToData( pdfData, CGRectZero, nil );
CGRect frame = [webView frame];
for (int i = 0; i < pages; i++) {
// Check to …Run Code Online (Sandbox Code Playgroud) 我想在html表中嵌入一堆小图像,我想用MFMailComposeViewController发送它.在做了一些搜索之后,我发现几乎所有人都建议使用"Matt Gallagher的NSData + Base64"类来编码Base64encoding中的照片并将其嵌入到html中.虽然它看起来适用于iPhone和一些电子邮件服务器,但Gmail和Yahoo不会以这种方式显示嵌入的图像.这里也提到了这个问题.
我想知道是否有人有更好的解决方案.我不想在网上上传照片并将链接放在html代码中.我想将图像附加到电子邮件中,并在html文本,表格中显示为内嵌图像,...
我正在嵌入已经在HTML中编码base64的图像,如下所示:
[html appendFormat:@"<html><body><p><b><img src=\"data:image/png;base64,%@\"></b></p></body><html>", base64ImageString];
Run Code Online (Sandbox Code Playgroud)
然后我创建一个新的电子邮件如下:
MFMailComposeViewController *mailVC = [[MFMailComposeViewController alloc] init];
mailVC.mailComposeDelegate = self;
[mailVC setMessageBody:html isHTML:YES];
[self presentModalViewController:mailVC animated:YES];
Run Code Online (Sandbox Code Playgroud)
嵌入的图像会在发送之前显示在新电子邮件中,但不会显示在邮件传递到的任何电子邮件客户端中.我认为草图中正确显示图像的事实表明嵌入过程是成功的,但我不明白为什么它在交付时没有显示.查看交付邮件中的原始HTML显示:src ="cid:(null)"任何帮助将不胜感激!
我使用MFMailComposeViewController发送电子邮件,
使用此代码,我可以获取图像,但图像来自文本详细信息,我不是第一个图像和文本之后,
这是我的代码,
MFMailComposeViewController *mail = [[MFMailComposeViewController alloc] init];
mail.mailComposeDelegate = self;
if ([MFMailComposeViewController canSendMail]) {
//Setting up the Subject, recipients, and message body.
[mail setToRecipients:[NSArray arrayWithObjects:Emailid,nil]];
[mail setSubject:@"Receipt"];
NSData *photoData = UIImageJPEGRepresentation([UIImage imageNamed:@"Gift.png"], 1);
[mail addAttachmentData:photoData mimeType:@"image/jpg" fileName:[NSString stringWithFormat:@"photo.png"]];
[mail setMessageBody:@"Receipt" isHTML:NO];
NSString *emailBody;
emailBody = [NSString stringWithFormat:@
"<br>Purchase Amount: </br> " "$ %@"
"<br>Amount Received: </br> " "$ %@"
"<br>Change: </br> " "$ %@"
,AmountData,txtAmount.text,ChangeAmount.text];
[mail setMessageBody:emailBody isHTML:YES];
Run Code Online (Sandbox Code Playgroud)
请任何人建议我怎么办?
iphone cocoa-touch objective-c ios4 mfmailcomposeviewcontroller
我想使用MFMailComposeViewController发送电子邮件,我已经有了这个设置,但我实际上无法将图像(屏幕截图)附加到电子邮件中.
这是代码行.
[composer addAttachmentData:image mimeType:image/png //png undeclared//fileName:@"GameOver Screenshot.png"]; //Incompatible Obj-C types 'struct UIImage *' expected 'struct NSData *' when passing argument 1 of .....//
Run Code Online (Sandbox Code Playgroud)
image是我的UIImage截图的名称.我不知道该替换它.
在此先感谢您的帮助/协助.
ios ×4
iphone ×4
mfmailcomposeviewcontroller ×3
uiimage ×2
attachment ×1
cgsize ×1
cocoa-touch ×1
crop ×1
html ×1
image ×1
inline ×1
ios4 ×1
ios5 ×1
ipad ×1
objective-c ×1
pdf ×1
photo ×1
uiwebview ×1