내 앱에서 3.0 + MFMailComposeViewController
인 HMTL 이메일 메시지를 작성 중입니다. 이렇게하려면 일부 자리 표시자를 사용하여 HTML 파일을 만들었습니다. 코드에서 HTML 파일을 읽었으며 replaceOccurrencesOfString
으로 자리 표시자를 응용 프로그램의 데이터로 바꿉니다. 그런 식으로, 내가 보내려는 이메일의 본문을 작성합니다. 내 HTML 파일에 <img src='imageplaceholderpath' />
태그가 있다는 사실을 제외하고는이 모든 것이 매우 훌륭하게 작동합니다. 어쨌든, 내 애플 리케이션에 상주하는 이미지를 참조하려면 이걸 대체해야 할 부분이 무엇인지 모르겠다. imageplaceholderpath
. 이것이 유효한 접근 방법인가요? 그렇다면 경로에 숨겨진 구문/논리는 무엇입니까? 귀하의 통찰력에 감사드립니다! 감사합니다. SjakelieniPhone에 로컬 이미지 표시 HTML 메일
답변
불행하게도 iPhone 3.x API에서는 지원되지 않습니다. 첨부 파일의 서브 파트의 일부가 될하지만되지 않습니다 :
은 콘텐츠 ID를 필요로한다.
- (void)addAttachmentData:(NSData*)attachment mimeType:(NSString*)mimeType fileName:(NSString*)filename
일반 이메일 클라이언트와 같은 방식으로 이미지를 이메일의 일부로 포함시킬 수 있다고 생각하지 않습니다. 그러나 이미지 데이터를 base64로 인코딩 된 데이터로 HTML에 직접 포함 할 수 있습니다. 이는 일을하는 데있어 비표준 방식이므로 이메일이 모든 이메일 클라이언트에 완벽하게 표시되지 않을 수 있습니다.
은 이상 this question 참조 및 this forum post
의 샘플 코드는 내 대부분의 질문에 대한 답변이 게시물 발견 : http://www.iphonedevsdk.com/forum/iphone-sdk-development/25021-embedding-image-email-body.html합니다.
HTML 형식은 당신이 있어야하지만, 실제로는 단지 첨부 파일로 이미지, HTML을 사용없이 을 달성 할 수있는 이메일에 이미지를 삽입해야하는 경우 나도 몰라.
http://iphone-dev-tips.alterplay.com/2009/11/attaching-image-of-uiview-to-email.html
중요한 부분은 이것이다 :
// ATTACHING A SCREENSHOT
NSData *myData = UIImagePNGRepresentation(screenshot);
[controller addAttachmentData:myData mimeType:@"image/png" fileName:@"route"];
당신은 당신의 UIImage
(NSData
등)의 PNG 표현을 취득하고 은 그냥이 여기 달성 방법을 살펴 가지고 이메일을 첨부하십시오.
data:
URI를 사용하면 모든 메일 클라이언트에서 작동하지 않습니다. 렌더링 엔진으로 IE를 사용하는 사용자는 IE8이 설치되어 있지 않으면 전혀 지원하지 않습니다. 그렇더라도 according to Wikipedia, data:
URI는 최대 32KB로 제한됩니다.
이 작업을 수행하는 가장 간단한 방법은 이미지를 자신의 서버에 어딘가에 배치하고 전체 http : // URI를 사용하여 이미지를 참조하는 것입니다. 어떤 이유로 든 이미지를 생성 할 수 없다면 이미지를 MIME 하위 부품으로 첨부하고 HTML에서 참조 할 수 있습니다.
내 메일 클라이언트는 원격 이미지를 자동으로로드하지 않지만 일부 스팸은 이미지를 열었을 때 여전히 이미지를 가지고 있습니다. 다음과 같이 작동합니다.
yonel이 제안한대로 메일에 이미지를 첨부하십시오. 어쨌든 Content-ID:
헤더를 하위 파트에 추가해야합니다. 이 헤더의 내용은 이미지의 src
속성으로 사용됩니다.같은
<img src="cid:[email protected]">
부착 하위 부분은 같습니다 : 내 스팸 메시지가 HTML에서 다음과 같습니다
Content-Type: image/jpeg;
name="image001.jpg"
Content-Transfer-Encoding: base64
Content-ID: <[email protected]>
이
addAttachmentData:mimeType:fileName:
에 대한 설명서를 보면, 내 생각 엔 당신이 할 수없는 것입니다 이것을 작동 시키려면 원시 SMTP를 사용하여 전자 메일을 보내도록 고려해야합니다.
- 1. html 파일에 쓰고 iphone에 표시
- 2. JTextPane에 로컬 이미지 표시 (BufferedImage?)
- 3. Google지도 : 마커의 로컬 이미지 표시
- 4. Three20을 사용하여 로컬 이미지 표시
- 5. 항목이 표시 될 때만 html 이미지 표시
- 6. HTML 안에 SVG로 이미지 표시
- 7. iPhone에 사진 표시
- 8. ListView 로컬 이미지 대신 빈 공간 표시
- 9. 로컬 알림의 경고 본문에 이미지 표시
- 10. PHP 메일 로컬 호스트
- 11. WebBrowser 컨트롤에 메일 메시지 표시
- 12. PHP 메일 기능을 사용하여 메일 보내기 - 로컬 메일 서버?
- 13. 몇 초 동안 이미지 표시
- 14. 로컬 웹 사이트 메일 테스트
- 15. 메일 서버가 로컬 호스트에서 PHP로
- 16. iPhone의 img 태그 (로컬 HTML 파일)
- 17. HTML 전자 메일의 배경 이미지
- 18. HTML 전자 메일 템플릿
- 19. HTML 전자 메일 가이드
- 20. HTML 전자 메일 보내기
- 21. 다이나믹 값이있는 HTML 메일
- 22. BizTalk Server 2006 HTML 전자 메일 (인라인 이미지 포함)
- 23. HTML 이미지 위에 이미지
- 24. 클릭시 이미지 표시/숨기기
- 25. iPhone에 iWork 파일을 표시 할 API가 있습니까?
- 26. iphone에 진행률 표시 줄이있는 파일 업로드
- 27. AIR 응용 프로그램에서 이미지 표시
- 28. iphone에 html 임베드 된 데이터를 표시합니다.
- 29. iphone에 HTML 파일 입력을 사용하여 파일 업로드하기
- 30. LWUIT HtmlComponent 로컬 이미지 렌더링
메시지의 텍스트 서식을 제어하려고하므로 HTML이 필요하다고 생각합니다. 더 중요한 것은 이미지가 텍스트의 특정 위치에 인라인으로 나타나기를 원합니다. – Sjakelien