`
Vimesly
  • 浏览: 30013 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

ckeditor 图片上传最新完美处理

    博客分类:
  • Java
阅读更多
需要做的有以下几步:
1. 到官网下载ckeditor,网址:http://ckeditor.com/download
2. 复制到java web项目目录下
3. 配置config文件,打开图片上传功能
   
CKEDITOR.editorConfig = function (config) {
// 换行方式
	config.enterMode = CKEDITOR.ENTER_BR;

	// 当输入:shift+Enter是插入的标签
	config.shiftEnterMode = CKEDITOR.ENTER_BR;// 
	//图片处理
	config.pasteFromWordRemoveStyles = true;
	config.filebrowserImageUploadUrl = "ckUploadImage.action?type=image";
	
	// 去掉ckeditor“保存”按钮
	config.removePlugins = 'save';
};
** 在这里另附flex引用ckeditor 编辑器默认全屏方法:
修改ckeditor.html页面:
<script type="text/javascript">
		if ( typeof CKEDITOR == 'undefined' )
		{
		  document.write('加载失败') ;
		}
		else
		{
		  //var editor = CKEDITOR.replace( 'editor1',
		  //     {
			//		customConfig: "news_ck_config.js"
		//		});
		 
		  var editor = CKEDITOR.replace( 'editor1');
				
		  CKEDITOR.on('instanceReady', function(evt){
	         var editor = evt.editor;
	         editor.execCommand('maximize');
	      });
		}

</script>


4. java后台处理代码
// 上传图片
	@Action(value = "/ckUploadImage", results = { @Result(name = "success", location = "/upload.jsp") })
	public String uploadImages() throws Exception {
		HttpServletRequest request = ServletActionContext.getRequest();
		FileOutputStream fos;
		String webRoot = request.getSession().getServletContext().getRealPath(
				"");
		// 获取图片后缀名
		String partRightType = uploadFileName.substring(uploadFileName
				.lastIndexOf("."));
		String CKEditorFuncNum = request.getParameter("CKEditorFuncNum");
		// 判断图片的格式
		if (!ImageFile.checkImageType(partRightType)) {
			String path = "";
			String alt_msg = "Sorry! Image format selection is incorrect, please choose GIF, jpeg, PNG format JPG, picture!";
			pringWriterToPage("<script type='text/javascript'>window.parent.CKEDITOR.tools.callFunction("
					+ CKEditorFuncNum
					+ ", '"
					+ path
					+ "' , '"
					+ alt_msg
					+ "');</script>");
		} else {
			try {

				uploadFileName = DateUtils.getDateNoStyle() + "-"
						+ UUID.randomUUID() + partRightType;

				String savePath = webRoot + Constants.UPLOAD_IMAGES_PATH;
				File uploadFilePath = new File(savePath);
				if (uploadFilePath.exists() == false) {
					uploadFilePath.mkdirs();
					System.out.println("路径不存在,但是已经成功创建了" + savePath);
				} else {
					System.out.println("路径存在了" + savePath);
				}
				fos = new FileOutputStream(new File(savePath + uploadFileName));
				FileInputStream fis = new FileInputStream(getUpload());
				byte[] buffer = new byte[1024];
				int len = 0;
				while ((len = fis.read(buffer)) > 0) {
					fos.write(buffer, 0, len);
				}
				fos.close();
				fis.close();
			} catch (FileNotFoundException foe) {
				System.out.println("上传文件为0字节");
			}

			// String path = "http://" + request.getServerName() + ":"
			// + request.getServerPort() + request.getContextPath()
			// + Constants.UPLOAD_IMAGES_PATH + uploadFileName;

			String path = request.getContextPath()
					+ Constants.UPLOAD_IMAGES_PATH + uploadFileName;
			String alt_msg = "";
			pringWriterToPage("<script type='text/javascript'>window.parent.CKEDITOR.tools.callFunction("
					+ CKEditorFuncNum
					+ ", '"
					+ path
					+ "' , '"
					+ alt_msg
					+ "');</script>");

		}

		return null;
	}


* 其实重点的代码就是这点,相信大家都能看的懂,有不懂的留言!
pringWriterToPage("<script type='text/javascript'>window.parent.CKEDITOR.tools.callFunction("
+ CKEditorFuncNum
+ ", '"
+ path
+ "' , '"
+ alt_msg
+ "');</script>");


看到大家留言很多,有问题就加我QQ(398329585)询问吧,感谢大家!
分享到:
评论
4 楼 zjut_jing 2011-05-25  
怎么样才能让这个javascript在页面执行?
字符串返回后页面要处理过的吧?
3 楼 zjut_jing 2011-05-25  
pringWriterToPage这个函数的代码能写一下吗?
2 楼 Vimesly 2011-05-19  
q543232022 写道
pringWriterToPage("<script type='text/javascript'>window.parent.CKEDITOR.tools.callFunction(" 
                    + CKEditorFuncNum 
                    + ", '" 
                    + path 
                    + "' , '" 
                    + alt_msg 
                    + "');</script>"); 
  没明白

这个的意思就是上传成功后把图片添加到那个预览框里面!
1 楼 q543232022 2011-05-18  
pringWriterToPage("<script type='text/javascript'>window.parent.CKEDITOR.tools.callFunction(" 
                    + CKEditorFuncNum 
                    + ", '" 
                    + path 
                    + "' , '" 
                    + alt_msg 
                    + "');</script>"); 
  没明白

相关推荐

    CKeditor的图片上传浏览服务端组件-Java版本

    Java版本的CKeditor图片上传浏览服务端组件则是针对Java开发者设计的,用于处理CKeditor中的图片上传请求,并且与之配合实现图片预览。 该组件的核心功能包括: 1. **图片上传**:当用户在CKeditor中选择插入图片...

    ckeditor+ckfinder 完美组合编辑器 加图片上传功能

    "ckeditor+ckfinder"就是一个强大的组合,专为提高网页内容编辑体验而设计,特别是对于需要处理多媒体资源如图片上传的场景。本文将详细介绍这个组合以及其主要功能。 **ckeditor** 是一款知名的开源富文本编辑器,...

    Ckeditor 3.62编辑器和CkFinder 2.1完美组合案例

    案例为VS2010配置。 进行了相关的配置,包括CkFinder集成到 Ckeditor实现...还有关于中文出现乱码的问题,如果你的图片上传出现乱码请保证你的程序编码是UTF-8的因为,CKfinder的是UTF-8编码的。 好了希望对大家有用!

    ckeditor + ckfinder完美组合,精简版、优化版,附带调用方法页面

    而CKFinder则是一款文件管理器,它与CKEditor配合使用,可以让用户方便地上传、浏览、管理和插入编辑器中的图片、文档和其他媒体文件。CKFinder支持多种文件类型,提供了一种直观的文件操作界面,使内容创作者能够...

    开源编辑器和文件上传组件开发库 ckeditor_4.5.3和kcfinder

    `kcfinder`是一个与ckeditor完美配合的文件管理器和上传组件,为用户提供了一个简单易用的界面来浏览、选择和上传文件到服务器。kcfinder的特点包括: 1. **文件分类管理**:支持创建文件夹,组织上传的图片、文档...

    Ckeditor ckfinder2.0.1超强整合 完整版 实践版 PHP

    1. **丰富的编辑功能**:Ckeditor支持多种文本格式处理,包括段落、列表、表格、链接、图片、视频等。 2. **自定义配置**:开发者可以根据需求定制编辑器的外观和功能,例如添加或移除工具栏按钮,调整样式设置。 3....

    ckfinder+ckeditor 配置好的文件

    它支持多种插件,如图片上传、链接管理、表格编辑等,使内容创建更加灵活。 在ASP环境下集成CKFinder和CKEditor,首先需要下载并解压这两个组件。在提供的压缩包中,"ck_demo.asp"是一个演示文件,展示了如何在ASP...

    ckeditor_aspnet

    同时,CKEditor 自带一套插件库,可以扩展编辑器功能,如图片上传、表格工具、公式编辑等。 6. **文件管理和上传** CKFinder,CKEditor 的配套文件管理器,通常与 CKEditor.NET 一起使用,提供了用户友好的界面来...

    ckEditor+ckFinder

    6. **兼容性强**:ckFinder与ckEditor完美集成,同时也支持其他编辑器和应用程序。 **ckEditor+ckFinder集成使用** 将ckEditor和ckFinder结合使用,可以实现更强大的在线文本编辑功能,尤其是文件上传和管理。通过...

    可以搞定文本编辑器的问题超级完美Sample

    通过学习这个样本项目,开发者可以了解到如何在.NET环境中配置CKEditor和CKFinder,处理上传图片和Flash文件的过程,以及如何自定义编辑器的外观和功能。这对于需要在网站中集成富文本编辑功能的开发者来说,是一个...

    ckfinder 完美精简版、优化版

    它与流行的富文本编辑器CKEditor结合使用,提供了一站式的文件管理和内容编辑解决方案。这款“完美精简版、优化版”针对原版进行了定制,旨在提供更高效、轻量级且适应各种需求的体验。 **核心功能** 1. **文件...

    网页文本编辑器 FCKeditor

    2. 对某些复杂布局和CSS样式处理不够完美。 3. 相比新近的编辑器,用户体验可能稍显落后。 总结,FCKeditor作为一款曾经流行的网页文本编辑器,为网页内容创作提供了极大的便利。虽然随着时间的推移,它已经被更...

Global site tag (gtag.js) - Google Analytics