欢迎您来到 数字平台。 您尚未登录。[登录] [注册新用户]
当前位置: 论坛首页 / 栏目 产品与服务 / 文章 829

点击:1398

[顶层访客留言] [回复顶层(需要先登录)] [表状] [详细]
[回复留言] [回复(需要先登录)] [引用(需要先登录)]普通文章跟帖
文章id: 829
如何使用dp2Catalog“安静”的加拼音功能

作者: xiaohuo

关键词: 加拼音


所谓“安静”的加拼音是指遇到多音字时可以智能的选择拼音。例如,“银行”在加拼音时软件可以自动的将拼音选择为“yin hang”而不会选择“yin xing”。有三种方式可以使用“安静”的加拼音:一种是在C#脚本程序用加拼音函数;第二种是在MARC记录窗中通过修改dp2catalog_marc_autogen.cs配置文件;第三种是针对从 Z39.50 服务器检索得来的、还没有来得及另存到其他位置的 MARC 记录,在 MARC 记录窗口中执行创建数据的功能,包括加拼音的功能。

下面介绍下使用方法:

第一种在C#脚本程序中用加拼音函数

环境背景:dp2Catalog的版本为2.1.5009.34728及以上版本,并且拼音服务器配置了 http://dp2003.com/gcatserver/ 

步骤:

1、将以上复制粘贴以下代码到文本文件,并且保存为*.cs的文件,如附件"加拼音.cs"。

using System;

using System.Collections;

using System.Collections.Generic;

using System.Windows.Forms;

using System.IO;

using System.Text;

using System.Xml;

using dp2Catalog;

using DigitalPlatform.Marc;

using DigitalPlatform.Xml;

using DigitalPlatform.Script;

public class MyMarcQueryHost : MarcQueryHost {

    // 新的加拼音字段配置。$9

    string PinyinCfgXml = "<root>"

    + "<item name='200' from='a' to='9' />"

    + "<item name='701' indicator='@[^A].' from='a' to='9' />"

    + "<item name='711' from='a' to='9' />"

    + "<item name='702' indicator='@[^A].' from='a' to='9' />"

    + "<item name='712' from='a' to='9' />"

    + "</root>";

    string OldPinyinCfgXml = "<root>"

    + "<item name='200' from='aefhi' to='AEFHI' />"

    + "<item name='701' indicator='@[^A].' from='a' to='A' />"

    + "<item name='711' from='a' to='A' />"

    + "<item name='702' indicator='@[^A].' from='a' to='A' />"

    + "<item name='712' from='a' to='A' />"

    + "</root>";

    

public override void OnRecord(object sender, StatisEventArgs e)

    {

            this.MainForm.RemovePinyin(

                    this.MarcRecord,

                    this.PinyinCfgXml);

            this.MainForm.RemovePinyin(

                    this.MarcRecord,

                    this.OldPinyinCfgXml);

            int nRet = this.MainForm.AddPinyin(

                    this.MarcRecord,

                    this.PinyinCfgXml,

                    PinyinStyle.None,

                         "",

                         true);

              if (nRet == -1)

               {

                   e.Continue = ContinueType.SkipAll;

                   return;

                }

               this.Changed = true;

    }

}

2、在dp2Catalog的dp2检索窗中检索出需要加拼音的记录,选中后右击上下文菜单的批处理--执行MarcQuery脚本程序,然后在“请指定MarcQuery脚本程序文件”对话框里面选中加拼音.cs,点击“打开”按钮,则开始执行“安静”的加拼音功能,然后再右击上下文菜单的批处理--保存选定的修改或保存全部修改即可。

第二种是在MARC记录窗中通过修改dp2catalog_marc_autogen.cs配置文件

环境背景:dp2Catalog在“参数配置”对话框中,在“全局”属性页,勾选“加拼音时自动选择多音字”;在“服务器”属性页,确保 拼音服务器配置为 http://dp2003.com/gcatserver/ ;

步骤:

1、用dp2batch、dp2rms或dp2manager前端针对相关书目库dp2catalog_marc_autogen.cs文件,修改下面局部:

    void AddPinyin()

    {

        AddPinyin(this.PinyinCfgXml,

            true,

            PinyinStyle.None,

            "",

            this.DetailForm.MainForm.AutoSelPinyin);

    }

即,AddPinyin() 函数增加了几个参数。修改完成后,保存该配置文件,并重新启动dp2kernel服务和dp2library服务。

2、然后将记录装入MARC记录窗后执行加拼音,就能实现“安静”的加拼音功能了。

第三种是针对从 Z39.50 服务器检索得来的、还没有来得及另存到其他位置的 MARC 记录,在 MARC 记录窗口中执行创建数据的功能,包括加拼音的功能。

环境背景:除了第二种环境背景外还需要dp2Catalog 的程序文件夹中,1_2_840_10003_5_1 子目录下的 dp2catalog_marc_autogen.cs 配置文件包含了上述Void AddPinyin()函数。

步骤:

用dp2Catalog的Z39.50检索窗检索出相关的记录后,双击装入MARC记录窗,此时窗口的记录路径文本框为空,然后点击固定面板--创建数据页的“加拼音“功能就能实现”安静“的加拼音功能了。



资源:

-- ID: 0 文件名: 加拼音.cs 尺寸: 1661 最后修改时间: 2013-09-22 13:33:56 --
加拼音.cs [下载] 警告:某些文件下载后,如打开(或执行),可能危害您的计算机安全,请谨慎行事。


发表时间: 2013-09-22 13:48:49
最后修改时间: 2013-09-22 14:05:50
  • 栏目置顶 dp2系统常见问题汇总专帖 孤舟蓑笠翁 2013-09-17 11:07:42[点击:33069]
  • 普通文章 关于期管理记到、装订界面中图标的选中状态的说明 孤舟蓑笠翁 2013-09-17 11:29:27 (ID:827) [点击:864]
  • 普通文章 dp2内务打印订单窗打印分类统计表配置 xiaoma 2013-09-17 16:14:56 (ID:828) [点击:1881]
  • 普通文章 如何使用dp2Catalog“安静”的加拼音功能 xiaohuo 2013-09-22 13:48:49 (ID:829) [点击:1398]
  • 普通文章 关于如何备份dp2 V2系统数据的回应 孤舟蓑笠翁 2014-01-15 12:04:20 (ID:860) [点击:887]
  • 普通文章 如何将书目导出到EXCEL文件 孤舟蓑笠翁 2014-07-03 12:00:12 (ID:870) [点击:800]
  • 普通文章 索取号的分配与排架标签的打印 孤舟蓑笠翁 2014-07-13 20:38:11 (ID:871) [点击:1024]
  •  

    在线用户
    (无) 
    当前栏目在线用户数 0, 总在线用户数 0