2012-03-26 79 views
2

我在iOS上使用evernote api,并且想要将enml转换为html。如何将en-media翻译为img?例如:如何在将enml转换为html时将en-media转换为im

EN-媒体:

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

IMG:

<img src="imagePath"/> 

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

使用 Data URI

回答

1

最简单的方法是嵌入图像数据:

  1. 查找与此哈希码相关的Evernote的Resource
  2. 生成下面的数据URI(对不起,Java的语法,我不是很熟悉目标C):

    字符串imgUrl的= “数据:” + resource.getMime()+ “的base64,” + java.util.prefs.Base64.byteArrayToBase64(resource.getData()getBody());

  3. 使用来自(2)的imgUrl创建HTML img标签。

0

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

this page,你会发现下面的网址范本:

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

先编译一些变量的网址,然后指向html图像src = url。

在Ruby中,你可以编译的方法与此类似的网址:

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

...其中self引用的资源,EVERNOTE_HOST相当于主机URL(即sandbox.evernote.com ),evernote_shard_id是用户的shardId,而evernote_id是用户的guid。