作者: 冲虚龙

1、为Web站点添加拼写检查功能

  许多研发者都提出“如何对用户输入的内容进行拼写检查”的问题,这篇文章正好提供了一个有用的方法,讨论如何使用XDE拼写检查组件,他既能够当作拼写检查器,同时也能够做完一个字典。关于这个组件的一个好消息是:他能够在服务器端使用,或做为一个Java Applet。但是有一点,这些方便之处不是免费的,他要花费大约100美元。然而,该组件提供了一个30天免费使用评估版本,所以在真正决定购买前,您能够仔细进行测试,认真考虑是否满足需要。

  首先,访问http://mirrordns.com/download/站点,输入一些信息(名字、电子邮件,等等),下载并安装这个组件。下一步,从可供下载的XDE众多组件中选择 “Quick Spell Check Full Install”项目进行下载。下载完毕后,进行安装。在安装程式结束前,出现一个注册登记菜单,这时,简单地选择默认选择“Evaluation Period”。

  注意,现在的程式还是BETA版本。假如您不希望发生潜在的错误,我建议等第一个正式版本出来后再下载进行试验。我已发现了现有版本的一些错误。您要记住:这是个BETA版本,不要在正式站点上应用。

  接着,准备注册登记组件。现在决定一下您是否想要包含Word 97的字典和词典功能,假如需要,请先在Web服务器上安装Word 97或Word 2000,然后参照http://mirrordns.com/spellchecker/server_installation.htm 的说明执行一套特别的命令。假如不想使用整个Word 97的字典,就象注册其他组件相同接着进行:

  拷贝DLL文档SpellCheckServer.dll到Windows的System或System32目录

  使用regsvr32注册组件:regsvr32 spellcheckserver.dll

  现在安装完组件,能够在ASP代码中使用了。为了创建使用拼写检查对象的示例,仅仅简单的编写下面的代码:

Set objSpellCheck = Server.CreateObject("SpellCheck.ClsChecker")

  如我前面提到的,这个组件提供了拼写检查和词典的功能。首先,来看看如何返回给定单词的一系列同义词。这要使用到LookupSynonym方法,该方法需要一个参数,就是需要寻找同义词的单词。执行后,拼写检查对象收集相关的单词到集合对象SynonymWords。执行下面的代码,将返回“Quick”单词的任何同义词:

< %

Dim objSpellChecker, iLoop
'Create an instance of the SpellChecker
Set objSpellCheck = Server.CreateObject("SpellCheck.ClsChecker")
objSpellChecker.UseMSWord = False 'We're not using MSWord
objSpellChecker.LookupSynonym "Quick" 'Lookup the synonym for "quick"
'Loop through the returned words:
Response.Write "The following synonyms for 'Quick' exist: "
For iLoop = 1 To objSpellChecker.SynonymWords("Quick").SuggestedWords.Count
Response.Write objSpellChecker.SynonymWords("Quick").SuggestedWords(iLoop).word
Response.Write " "
Next

%>


  在服务器端执行拼写检查对于代码结构是很紧凑的,但以我只见,要发挥强大的功能,必须依赖Java applet形式的拼写检查。以下将重点讨论如何应用这种方式,关于在服务器端使用组件的方法,请参见http://mirrordns.com/spellchecker/ 。

  为了使用Java applet,需要将安装目录下的.class文档拷贝到一个web可访问目录。比如,这里将文档移动到/spellcheck目录下。然后,创建一个表单,包含一个文本框或文本域,其中是要进行拼写检查的内容。

< HTML>

< BODY>

< FORM NAME="frmSpellCheckExample">
< textarea name="JavaTextArea" rows="8" cols="50">< P>
< INPUT TYPE="button" value="Start Spell Check" onclick="SpellCheck();">

  接着,使用APPLET标记来引用Java applet:

< applet codebase ="/spellcheck/" code="SpellCheck.class"
height="1" name="spellcheck" width="1"
ALT="Applet not displayed">
< param name="foreground" value="FFFFFF">
< param name="background" value="008080">
< param name="label" value="This string was passed from the HTML host.">



注意:在APPLET标记中的codebase参数指向.class文档所在的目录。

最后,在客户端使用一段JavaScript代码来组装applet参数:

< script language="JavaScript">

function SpellCheck() {
document.spellcheck.ptexttocheck =
document.frmSpellCheckExample.JavaTextArea.value;
document.spellcheck.doDlg();
if (document.spellcheck.fixedtext!="") {
document.frmSpellCheckExample.JavaTextArea.value =
document.spellcheck.fixedtext;
}

}



  这就完成了!假如想更多地了解如何使用该组件和Java Applet,一定来下面的地方看看:http://mirrordns.com/spellchecker/。

2、在Web上动态建立条形码

  这篇文章讨论的是如何根据数据库的字段在web上动态地建立条形码的问题,这在如下的情况下很有用:用户输入信息到系统中,然后显示一个总结页面“这就是您所输入的”,这个页面能够被打印,并在日后能够用条形码进行跟踪。

  实现这个功能的关键在于如何将数值比如“ABC”翻译为条形码。这里我们使用“代码39”,关于他的周详情况,请参阅有关定义。我想将产生的条形码显示在web页面上,这样用户就能打印包含条形码的这个页面,然后,再在图像系统的处理中使用他。许多用户都在系统中安装了“代码39”字体,所以我就能够在页面中改变他,但是我不想依赖他们。我想在页面中建立,并且单独于浏览器和电脑。

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!