前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >简单的windows live writer代码插件(含源码)

简单的windows live writer代码插件(含源码)

作者头像
liulun
发布2022-05-09 10:55:17
2450
发布2022-05-09 10:55:17
举报
文章被收录于专栏:liulun

新建一个类库

添加两个关键引用

代码语言:javascript
复制
using WindowsLive.Writer.Api;
using System.Windows.Forms;
代码语言:javascript
复制
using System.Web;

第一个引用的dll文件在你安装windows live writer的根目录下

名字叫WindowsLive.Writer.Api.dll

添加一个类文件,此文件程序用来处理用户插入的代码

代码语言:javascript
复制
    public static class ContentProcessor
    {
        public static string ProcessedContent { get; private set; }
        public static void Process(string originalContent)
        {
            ProcessedContent = (!string.IsNullOrEmpty(originalContent)
                ?string.Format("<fieldset style=\"background-color:#E0EFF6;color:#15428B\"><pre>{0}</pre></div>", HttpUtility.HtmlEncode(originalContent))
                :string.Empty
                );
        }
    }

添加一个windows form窗体,如图:

给确定按钮添加的事件为

代码语言:javascript
复制
        private void button1_Click(object sender, EventArgs e)
        {
            ContentProcessor.Process(this.textBox1.Text);
            this.Close();
        }

其中ContentProcessor.Process(this.textBox1.Text); 就是调用的我们上一个类文件中的处理程序

新增一个类文件

代码语言:javascript
复制
    [WriterPlugin("7c371eef-e350-4aae-af28-91613a9137e3", "xland", Description = "insert code plugin", Name = "xland", PublisherUrl = "http://www.cnblogs.com/liulun")]
    [InsertableContentSource("insert code",SidebarText="insert code")]
    public class MyPlugin:ContentSource
    {
        public override DialogResult CreateContent(IWin32Window dialogOwner, ref string content)
        {
            new ProcessForm().ShowDialog();
            content = ContentProcessor.ProcessedContent;
            return (!string.IsNullOrEmpty(content) ? DialogResult.OK : DialogResult.No);
        }
    }

其中7c371eef-e350-4aae-af28-91613a9137e3为一个GUID 其他的一些信息是插件在live writer中的信息 函数中第一句是创建一个窗口(我们刚才制作的窗口) 第二句获取我们输入的数据(处理过后的数据) 第三句让live writer知道有东西要插入。 content变量是live writer中的,所以要用ref修饰

都完成后只要把生成的dll文件放在live writer安装目录下Plugins文件夹内就可以了

此文章就是用这个插件写的

贴个图看下

image
image

源代码下载:LiveWriterPlugin.rar 另外: 我在我的blog中设置了这样的样式

代码语言:javascript
复制
pre { white-space: pre-wrap; /* css-3 */ white-space: -moz-pre-wrap; /* Mozilla, since 1999 */ white-space: -pre-wrap; /* Opera 4-6 */ white-space: -o-pre-wrap; /* Opera 7 */ }
* html pre { word-wrap: break-word; /* Internet Explorer 5.5+ */ white-space : normal ; /* Internet Explorer 5.5+ */ }

具体设置方法是,进入你的博客园后台》》》选项》》》config》》》通过CSS定制页面 这样设置主要是不让代码太宽,撑破页面

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2009-05-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档