将enml转换为html时如何将en-media转换为img

时间:2012-03-26 14:12:28

标签: html ios evernote

我在iOS上使用evernote api,并希望将enml翻译为html。如何将en-media翻译成img?例如:

烯媒体:

<en-media type="image/jpeg" width="1200" hash="317ba2d234cd395150f2789cd574c722" height="1600" />

IMG:

<img src="imagePath"/>

我使用核心数据来保存iOS上的信息。所以我不能将img文件的本地路径赋予“src =”。如何处理这个问题?

2 个答案:

答案 0 :(得分:1)

最简单的方法是使用Data URI嵌入图像数据:

  1. 找到与此哈希码相关联的Evernote Resource
  2. 构建以下数据URI(对不起Java语法,我对Objective C不是很熟悉):

    String imgUrl =“data:”+ resource.getMime()+“; base64,”+ java.util.prefs.Base64.byteArrayToBase64(resource.getData()。getBody());

  3. 使用<2>中的 imgUrl 创建HTML img标记。

答案 1 :(得分:0)

注意:以下解决方案允许您在笔记内容之外显示图像。

this page上,您会找到以下网址模板:

https://host.evernote.com/shard/shardId/res/GUID

首先从一些变量编译url,然后指向html图像src = url。

在ruby中,您可以使用与此类似的方法编译url:

def resource_url
    "https://#{EVERNOTE_HOST}/shard/#{self.note.notebook.user.evernote_shard_id}/res/#{self.evernote_id}"
end

...其中self引用资源,EVERNOTE_HOST等同于主机网址(即sandbox.evernote.com),evernote_shard_id是用户的shardId,{{1}是用户的指南。