将HTML转换为ENML

时间:2014-01-07 06:23:12

标签: php htmlpurifier evernote

我正在尝试为Gmail编写一个扩展程序,允许您将邮件保存为Evernote中的备注,但是Evernote的ENML is pretty strict,如同,它不允许外部样式。

所以我要做的就是这样 -
- 将外部样式转换为内联,
- 验证/平衡标签
- 净化Evernote认为令人反感的标签

所以在我尝试为上面编写一个解析器之前,有没有人知道一个已经在繁重工作的php库?

如果没有,上述要求的方法是什么?

1 个答案:

答案 0 :(得分:1)

如果唯一有趣的问题是将外部样式转换为内联样式,则可以使用https://github.com/tijsverkoyen/CssToInlineStyles。它还有一个composer package at packagist,便于部署。

我这样用过:

<?php

// ...

use \TijsVerkoyen\CssToInlineStyles\CssToInlineStyles;

// ...

$css = file_get_contents('./content.html');

// create instance
$cssToInlineStyles = new CssToInlineStyles();
$css = file_get_contents('./styles.css');

$cssToInlineStyles->setHTML($content);
$cssToInlineStyles->setCSS($css);

$mail_content = $cssToInlineStyles->convert();