首页 新闻 会员 周边

博客园的后台TinyMCE编辑器插入代码功能

0
悬赏园豆:10 [已关闭问题]

我想了解一下博客园后台

王|Stone的主页 王|Stone | 初学一级 | 园豆:190
提问于:2010-02-27 21:25
< >
分享
其他回答(5)
-3

我觉得代码编辑器实现的几个关键问题:
  1   如何实现,我在输入时,匹配上的字如何自动显示为指定的颜色  
  2   匹配算法怎样才有效率  
  3   读入一段文字是怎样找到中间的关键词,并使其颜色改变。  

基于行的关键字搜索,可以考虑不要用   TEdit   继承下来的控件,如   TMemo,RichEdit   可以考虑,关键是要知道   RTF   文件格式,但   RTF   是基于富文本的(非纯文本),如果处理了颜色的话,真正的ASCII   文本就要特别处理了,所以我觉得最好是从   TCustomControl   继承下来自己画,包括文本颜色的处理和显示。   
  关于算法效率,我觉得应该采用部分显示的技术,就是指仅仅对显示给用户的部分文本进行颜色处理,如果通篇事先处理的话会很慢。   
  可以看看   SynEdit   这个控件,免费的,带源码,看看他是怎么实现的最好的是用第三方控件了,如果你要自己做,最好是用TRichEdit,因为颜色字体可以改变,并且比较简单的文件就是RTF文件, Windows本身又支持,而RichEdit又支持RTF文件,所以最好的解决办法是采用RTF,只要搞定RTF的文件格式就可以了,并且兼容性也很好
希望对您有所启发。

风影极光 | 园豆:1573 (小虾三级) | 2010-02-28 00:10
0

这个一般统称代码高亮显示,和咋们一般使用的VS中代码高亮显示原理是一样的。针对TinyMCE编辑器,他支持Plugins,所以自己可以扩展代码高亮显示模块。

针对于代码高亮显示程序,现在用的比较多的是SyntaxHighlighter,这个也似开源的,可以把该组件作为TinyMCE的插件来使用,博客园也应该是类似这样子做的。

另外在TinyMCE3.x版本下,目前有一个syntaxhl,你可以下载来,然后按照说明加入相应的文件并在TinyMCE编辑器初始化项中加入相应的代码插入链接或者button即可。

西越泽 | 园豆:10775 (专家六级) | 2010-02-28 01:20
-1

这个可以参考:
http://space.cnblogs.com/question/9314/

博客园的代码插入是采用SyntaxHighlighter,这个是开源的TinyCME插件。

 

你需要作一些设置,可以参考这个页面

http://www.cnblogs.com/InsertCodeForCuteEditor.aspx?id=1

用该插件对应的代码,比如来返回插入的html代码到主页面。

类似于

<script language="javascript">
function InsertToEditor(codestr) {
window.opener.BlogInsertHtml(codestr);
window.close();
}
</script>

 

更多信息,请搜索
http://www.google.cn/search?hl=zh-CN&newwindow=1&domains=cnblogs.com&sitesearch=cnblogs.com&ie=GB2312&oe=GB2312&q=tinymce+%B4%FA%C2%EB%B8%DF%C1%C1&btnG=Google+%CB%D1%CB%F7

邀月 | 园豆:25475 (高人七级) | 2010-02-28 09:30

你好,能否帮我解释一下具体是如何在这个插件中添加ObjectC语言这一选项的?这个插件本身不支持这一语言

支持(0) 反对(0) aprogrammer | 园豆:200 (初学一级) | 2015-01-15 09:46
0

使用现有的相关代码插件是最方便的

生鱼片 | 园豆:5757 (大侠五级) | 2010-02-28 14:40
0

如何做到在编辑器里面也显示高亮的样式还可以编辑,求详细加入高亮插件步骤

j5land | 园豆:205 (菜鸟二级) | 2012-02-12 18:44
0

梦醒心晴 | 园豆:202 (菜鸟二级) | 2013-05-23 15:50

我建议是使用国产的ueditor,百度弄的,里面集成了代码高亮

支持(0) 反对(0) 梦醒心晴 | 园豆:202 (菜鸟二级) | 2013-07-01 14:39
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册