前言
很多朋友都在用Windows Live Writer在园子里写博客吧,同样也有很多朋友都会在文章结束的时候加上版权信息,更有利于保护自己的合法权益。
这些版权信息的样式很多,例如:
再如:
如果每次写文章的时候都重新写一段这样的版权信息肯定是很麻烦的。那么,我今天要写的这个插件就是向博文中插入HTML模板。
要实现的功能
1、保存已有的模板
2、选中指定模板后插入博文中
目前就这两点功能吧,简单一点,如果朋友们还有别的需求,请轻砸……
如何实现
1、对于第一个功能,可以通过使用XML文档来保存已有的模板。
2、对于插入博文中,可以解析Xml文档,列出已有模板,选中后点击“插入”按钮,实现插入。
效果图如下:
Windows Live Writer插件开发
在园子里已有一篇不错的博文来介绍简单的Windows Live Writer插件开发的步骤,讲解的很详细,并且提供了源码下载,笔者也是通过这篇博文了解了如何开发Windows Live Writer插件的。
由于这个插件是对博文内容操作的,所有需要继承ContentSource类,并重写方法CreateContent。下面是详细步骤:
1、新建C#类库项目。
2、添加WindowsLive.Writer.Api的引用,如果你已经安装了Windows Live Writer,可以在安装目录下找到WindowsLive.Writer.Api.dll文件。如果你使用的是Windows Server 2003操作系统,在安装Windows Live Writer的时候可能会出现系统不支持的提示。可以参照笔者的另一篇博文《如何在Windows 2003 中使用Windows Live Writer? - 2010年5月21日学习笔记(1)》完成安装。
3、新建类InsertHTMLPlugin,继承自ContentSource,需要using WindowsLive.Writer.Api;
4、为类InsertHTMLPlugin添加特性信息:
[WriterPlugin("01c28aeb-f616-4912-9114-9341d7779f95", "插入HTML模板", PublisherUrl = "http://www.cnblogs.com/youring2", Description = "用来向博文中插入HTML模板", Name = "插入HTML模板"] [InsertableContentSource("插入HTML模板", SidebarText = "插入HTML模板")]
5、重写方法CreateContent。在该方法中需要打开插入模板窗口,并完成处理。当用户点击“插入”按钮时,为content添加一个要插入的字符串即可。
6、添加一个模板编辑窗口,界面如下:
7、为插件添加一个图标。MSDN中给出的方法:if you want an image to appear alongside your plugin within the Writer user interface you should specify the WriterPluginAttribute.ImagePath property as part of this attribute. 我们首先向项目中添加一个图片,名字为InsertHTML.ico,并放在文件夹 Image中,设置InsertHTML.ico的生成操作为“嵌入的资源”,我们修改第4步的特性,为特性中添加ImagePath,这样一来,完整的特性为:
[WriterPlugin("01c28aeb-f616-4912-9114-9341d7779f95", "插入HTML模板", PublisherUrl = "http://www.cnblogs.com/youring2", Description = "用来向博文中插入HTML模板", Name = "插入HTML模板", ImagePath = "Image.InsertHTML.ico")] [InsertableContentSource("插入HTML模板", SidebarText = "插入HTML模板")]
最后,附上源代码: http://files.cnblogs.com/youring2/QF.Sample.WriterPlugin.InsertHTML.rar
已编译文件:http://files.cnblogs.com/youring2/QF.Sample.WriterPlugin.InsertHTML.dll.rar
参考作品
1、《为Windows Live Writer开发插件——InsertSearchPageLink》,地址:http://byte365.spaces.live.com/blog/cns!80BC0AFE1EC9BF2!225.entry
2、《Windows Live Writer 插件开发入门》, 地址:http://www.cnblogs.com/autumoon/archive/2009/01/20/1378880.html
感兴趣的朋友可以详细的了解一下,另外MSDN中的介绍:《Creating a Content Source Plugin》,地址:http://msdn.microsoft.com/en-us/library/aa702851.aspx。
下面是笔者插入版权信息的效果:
本文基于署名 2.5 *许可协议发布,欢迎转载,演绎或用于商业目的,但是必须保留本文的署名齐飞。如您有任何疑问或者授权方面的协商,请给我留言。
本文转自齐师傅博客园博客,原文链接:http://www.cnblogs.com/youring2/archive/2010/05/23/1741970.html,如需转载请自行联系原作者