在线教学系统:C#实现网络电子白板、课件功能
来源:互联网 发布:mysql #什么意思 编辑:程序博客网 时间:2024/05/01 02:06
电子白板和课件功能是在线教学系统中的必备功能,本文就介绍如何基于OMCS快速实现电子白板的基础功能,以及课件功能:上传课件、打开课件、课件翻页、课件同步、删除课件等高级功能。
本文的应用场景是这样的: 一个老师和N个学生进入同一个教室,所以,它们将看到同一个电子白板。而老师角色与学生角色的区别在于老师有特殊的白板权限,这些权限包括:上传课件、打开课件、删除课件,在白板上绘图、标注、翻页等等。
一.服务端
服务端直接将 OMCS.Boost 提供的OMCS.Server项目源码搬过来,不用作任何修改。
二.客户端
1. 实现课件到图片的转换
白板课件最常见的类型为:word、pdf、ppt文档。所以,首先,我们需要实现IImageConverter接口,将pdf、ppt、word文档转换成图片。与之对应,我们设计了三个类:Word2ImageConverter、Pdf2ImageConverter、Ppt2ImageConverter。关于它们的具体实现代码可在Demo的源码中查看。
然后,我们要实现IImageConverterFactory工厂接口:
public class ImageConverterFactory : IImageConverterFactory { public IImageConverter CreateImageConverter(string extendName) { if (extendName == ".doc" || extendName == ".docx") { return new Word2ImageConverter(); } if (extendName == ".pdf") { return new Pdf2ImageConverter(); } if (extendName == ".ppt" || extendName == ".pptx") { return new Ppt2ImageConverter(); } return null; } public bool Support(string extendName) { return extendName == ".doc" || extendName == ".docx" || extendName == ".pdf" || extendName == ".ppt" || extendName == ".pptx"; } }
然后,在程序启动时,将工厂注入到OMCS的多媒体管理器(IMultimediaManager)中:
IMultimediaManager multimediaManager = MultimediaManagerFactory.GetSingleton(); multimediaManager.ImageConverterFactory = new ImageConverterFactory();// 图片转换器工厂,供OMCS内部将课件转换成图片的过程中使用。
2.登录时区分角色:老师、学生
客户端登录界面设计如下所示:
根据选定角色的不同,进入白板时,所拥有的权限不一样,主要体现在白板连接器的两个属性设置上:
public WhiteBoardForm(string classRid, bool isTeacher ) { InitializeComponent(); this.classRoomID = classRid; this.whiteBoardConnector1.IsManager = isTeacher; this.whiteBoardConnector1.WatchingOnly = !isTeacher; this.Text = string.Format("正在访问{0}的电子白板" ,this.classRoomID); this.whiteBoardConnector1.ConnectEnded += new CbGeneric<ConnectResult>(whiteBoardConnector1_ConnectEnded); this.whiteBoardConnector1.BeginConnect(this.classRoomID); }
IsManager 属性用于控制是否有权限上传课件、打开课件、删除课件等。
WatchingOnly 属性用于控制用户是否可以在白板上绘制图像等操作。
在本Demo中,我们这样设定的效果是,老师可以操作课件,并且可以在白板上绘图、书写等,但是学生只能观看白板,不能进行任何操作。
三.下载
源码:OMCS.Demos.WhiteBoardTest.rar
运行系统进行测试时,请注意:
(1)启动OMCS服务端。
(2)启动第一个客户端,选择“老师”角色,登录进默认教室。
(3)再启动多个客户端,选择“学生”角色,登录进默认教室。
(4)老师即可进行上传课件、打开课件、删除课件、课件翻页,在课件上标注、书写,等等操作。
老师端界面如下所示:
- 在线教学系统:C#实现网络电子白板、课件功能
- C#实现在线更新系统
- 网络教学系统
- 网络教学系统
- Webus Fox(1)免安装的在线教学、视频会议软件(含文本、语音、视频聊天、电子白板)
- 网络教学系统中共享白板的设计与实现
- 电子白板简单实现delphi
- iOS 电子白板 实现
- 日语教学课件下载
- 在线教学场景下 讲师们做PPT课件直播的一些介绍
- 新视野大学英语在线教学系统使用说明
- 基于Web 的网络课件评价系统的设计与实现
- 实现: 在线签名, C#实现压缩/解压功能,线程
- 电子白板
- FLEX+FMS实现远程共享、电子白板、远程交流会议的功能
- 关于FMS做双向视音频传输服务以及实现电子白板功能的例子
- 使用C#实现网络时间同步功能
- c# 实现一个在线电台的功能 急求.....
- div嵌套时背景图片不显示问题解决方法总结
- PHP采集利器 Snoopy 试用心得
- 单独的刷新验证码的方法
- POJ - 3905 Perfect Election(2-SAT)
- ORACLE TO_CHAR函数详解及其他格式转换说明
- 在线教学系统:C#实现网络电子白板、课件功能
- 软件杂谈《六》
- VC模拟文件拖拽
- eclipse 中文注释乱码问题的解决方法
- 第一讲 Objective-C开发入门
- 数据结构--单向链表(c++)
- 设计模式之原型模式
- LeetCode----Sort Colors
- Rime 协议栈地址 rimeaddr_t