GB/T15189-1994

DOS中文信息处理系统接口规范

SpecificationofDOSChineseinformationprocessingsysteminterface

本文分享国家标准DOS中文信息处理系统接口规范的全文阅读和高清PDF的下载,DOS中文信息处理系统接口规范的编号:GB/T15189-1994。DOS中文信息处理系统接口规范共有69页,发布于1995-04-01
  • 中国标准分类号(CCS)L74
  • 国际标准分类号(ICS)35.200
  • 实施日期1995-04-01
  • 文件格式PDF
  • 文本页数69页
  • 文件大小4.24M

以图片形式预览DOS中文信息处理系统接口规范

DOS中文信息处理系统接口规范


国家标准 GB/T1518g一94 D0S中文信息处理系统接口规范 SpeeificationofD0SChineseinformation pr0cessingsysteminterface 1994-09-08发布 1995-0401实施 E国耳家技术监督局发布国家标准
次 目 主题内容与适用范围 功能类定义 2.1系统信息类功能 2.2字形类功能 2.3输入法类功能 2.4提示行类功能 2.5显示类功能 2.6键盘类功能 打印类功能 信息定义 a7 调用方式 3.2功能类编号 3.3命名方式 3.4返回码信息定义 系统信息类功能 功能列举 4.1 4.2数据结构 4.3功能说明 4.3.1查询系统信息 4.3.2查询系统模式 4.3.3设置系统棋式 4.3.4查询原中断向量入口地址 4.3.5查询新中断向量入口地址 字形类功能 5.1功能列举 5.2数据结构 5.2.1字形驱动程序信息数据结构 5. .2.2字形查询数据结构 55 .2.3文字字形信息数据结构 5.3功能说明 5.3.1初始化 16 5.3.2 查询已安装的字形骤动程序个数 16 查询已安装的字形驱动程序列举 5.3.3 16 5.3.4安装新的字形驱动程序 16 5.3.5撒除已安装的字形驱动程序 17 5.3.6查询字形是否存在 17
5.3.7查询基本文字字形 17 5.3.8查询字形驱动程序信息 18 5.3.9查询字形描述信息 18 19 5.3.10查询扩充文字字形 5.3.11从内存撤除字形驱动程序 9 9 输入法类功能 功能列举 6.1 19 6.2数据结构 20 输人法驱动程序信息数据结构 2o 6.2.2输入法信息交换数据结构 20 6.3功能说明 23 .3.1初始化 23 6 6 3. 查询输入状态信息 23 2 6.3. 3 设置输入状态信息 21 6.3.4查询已安装的输入法个数 24 查询已安装的输入法列举 6.3.5 24 2 6.3.6安装新的输入法 6.3.7撇除已安装的输 25 6.3.8查询当前使用的输 25 6. .3.9选择新的输入去 25 5 6.3.10查询输入法驱动程序信息 5 6.3.11重置当前输入法状态 26 6.3.12处理键入数据 从内存撒除输入法程序 6.3.13 26 6 提示行类功能 7.1功能列举 26 2 7.2数据结构 7.3功能说明 2 7 .3.1初始化 7.3. .2 查询提示行状态 7.3.3设置提示行状态 227 7.3.4清除提示行 28 .3.5查询提示行信息 28 28 .3.6设置提示行信息 7.3.7输出提示行数据 28 7.3.8写提示行 29 显示类功能 29 8.1功能列举 29 29 8.2数据结构 29 8.2.1显示信息数据结构 8.2.2 30 字串数据结构 8.3功能说明 31 8.3.1安装显示驱动程序 31
8.3.2撤除显示驱动程序 31 8.3.3查询显示驱动程序信息 31 8.3.4从内存撤撒除显示驱动程序 31 8.3.5设置显示系统模式 32 8.3.6选择屏幕更新方式 32 8.3.7查询屏幕更新方式 32 &.3.8设置或终止表格符对应 32 8. .3.9写字符串 e.. 33 .3.10 8. 设量光标全角/伴角状态 3 8. .3.1查询光标全角/半角状态 33 3.12设置英文表格符识别状态 8. 33 8.3.13查询英文表格符识别状态 33 键盘类功能 34 功能列举 34 9.2功能说明 34 9.2.1设置键盘系统模式 34 9.2.2设置热键转换方式 34 10打印类功能 34 0.I功能列举 34 10.2数据结构 36 10.2.1打印机驱动程序信息数据结构 36 10.2.2图形区块输出的数据结构 36 10.2.3打印单位数据结构 38 10.3功能说明 39 10.3.1初始化 40 10.3.2查询打印驱动程序列举 S 10.3.3安装打印驱动程序 S 10.3.4移除打印驱动程序 M 10. .3.5安装打印监控驱动程序 0.3.移除打印监控驱动程序 10. 3.7设置打印监控状态 10.3.8查询打印监控状态 10.3.9从内存中撒除打印监控驱动程序 42 10.3.10设置系统模式 42 10..11查询打印驱动程序信息 42 10.3.12从内存中撒除打印驱动程序 43 10.3.13安装打印驱动程序内部功能 43 0.3.14移除打印驱动程序内部功能 43 10.3.15设置旁路模式 43 10.3.16设置打印基本单位" 43 10.3.17水平定位 44 0.3.18垂直定位 44 10.3.19图形区块打印 44
10.3.20设置打印颜色 44 10.3.21选择打印字体 45 10.3.22选择打印模式 45 10.3.23选择打印方向 45 10.3.24取消边界设置 45 10.3.25设置左边界 46 10.3.26设置右边界 46 10.3.27设置上边界 46 10.3.28设置每页长度 47 10.3.29水平放大打印 4? 10.3.30垂直放大打印 48 10.3.31设置打印浓度 48 10.3.32设置表格符号连接功能 48 10.3.33设置旋转打印方向 48 10.3.34打印斜体字 49 10.3.35打印下标字 49 10.3.36打印上标字 49 10.3.37加下划线打印 50 10.3.38反相打印模式 50 10.3.39套网打印模式 50 10.3.40选择套网模式 50 10.3.41安装套网图案 51 10.3.42中空属性设置 51 10.3.43镜射属性设置 5 10.3.44阴影属性设置 52 10.3.45立体属性设置 52 10.4打印监控程序 52 10.4.1 打印控制命令描送 52 10.42以""标志的打印控制命令 53 (EsC)序列打印控制命令 10.4.3 56 附录AEsc/PK和sc/PK2按数字顺序指令一览表(参考件) 57 附录BScC/Page-K按数字顺序指令一览表(参考件 60
国家标准 D0S中文信息处理系统接口规范 GB/T15189一94 SpecificationofDoSChineseinformation procesing systeninterface 主题内容与适用范围 本标准规定了Dos中文信息处理系统接口规范(简称D0s-CP1,SpeeificationofDosChinesein formationProcessingsystenInterface) 本标准主要定义应用程序调用中文系统功能的接口规范及中 文系统驱动程序的接口规范 本标准挺供对整个中文系统的撒除功能,撒除后完全恢复支持GB2311 信息处理七位和八位编码字符集代码扩充技术标准》 本标准主要包括,系统信息类功能、字形类功 能、输入法类功能、提示行类功能、显示类功能、键盘类功能、打印类功能 本标准中对BOsINT 10H,16H,17H原西文功能的中文支持应完全符合原单字节西文的功能调用 本标准适用于D0s中文信息系统以及基于D0s中文信息系统的驱动程序和应用程序 功能类定义 2.1系统信息类功能 提供系统级信息查询或设置功能,以帮助应用程序及驱动程序了解系统现有的资源状况,并做出合 理,有效的安排 2.2字形类功能 提供应用程序获取系统已安装字形信息的接口; 提供对系统已安装的字形驱动程序的获取信息、查询等功能 提供对字形驱动程序的安装/撤除等功能 2.3输人法类功能 提供对系统已安装的输入法的获取信息,查询、切换等功能" 提供对输人法驱动程序的安装/撤除等功能 2.4提示行类功能 提供对提示行状态的查询,设置等功能 提供对提示行数据信息的输出功能 2.5显示类功能 至少支持一种汉字字符显示方式; 提供对支持的显示能力的查询/设置等功能; 提供对显示驱动程序的安装/撒除等功能 2.6键盘类功能 提供对系统热键的控制功能 2.7打印类功能 提供基本的字符、图形打印,及有关控制功能; 定义基本的打印控制序列,需要扩充的控制序列由厂商通过监控程序实现, 国家技术监督局1994-09-08批准 1995-04-01实施
cs.T15189-94 提供对打印驱动程序、打印监控程序的安装/撤除等功能 信息定义 3.1调用方式 入口 AH)=功能类编号 AL)=功能号 (DH)=功能选择 (DL)=子功能选择 ESBx)=数据结构缓冲区 调用: NTXXH 出口: (AX 正确 警告 8000H 错误 800oH 并且 CF标志 正确或警告 错误 中断号xxH由系统初始化确定,它在AP调用中文系统的查询系统是否存在时取得,其方法如下 查询NT2FHAH=oDBH功能是否存在 ? 入口: (AX)=0DB00H 调用 INT2FH 出口: 本功能有效 (AL)=0FFH 本功能无效 (AL)=00H 注,本功能有效仅说明AH=oDB(INT2FH)调用有效,不表示中文系统一定存在,检查中文系统是否存在需通过 下面调用实现 查询中文系统是否存在、系统服务中断号及入口地址 b. 入口 (Ax)=oDB01H 调用 NT2FH 出口: (AX)=0CD05H中文系统存在的标识 DL)=XxH中文系统服务入口的中断号 (Es;Bx)=中文系统服务入口地址 3.2功能类编号 功能类编号如表1所示 编号值07H3FH为系统保留,40H后由用户定义
GB/T1518g-94 表1 功 号 值 能 类 编 系统信息类功能 字形类功能 2 输入法类功能 提示行类功能 显示类功能 键盘类功能 打印类功能 3.3命名方式 本标准使用类似C语言的形式描述有关数据结构,变量以下列方式构成 前缀十基本型态十修饰词 标准中使用的基本型态如下: 字节(yte); 字符(eharacter); ch wch -双字节字符(doublebyte character r) ,如中文 无正负号字符(unsignedcharaeter); uch 结构(structure); terminatedwithNULLcharacter)3 字串,以NULL结尾(string sz fn orprocedure); 函数或子程序(unetion 标志(fag) 长整数(logintege:) u 无正负号长整数(unsignedlonginteger), -无正负号整数(unsignedshortinteger). 以基本型态为基础,通过加前缀,来描述复杂的数据结构 标准中使用的前缀如下 数组(array 远指针(arpointer) fp 个数(count) 数组的索引(indexinto array 标识号(identifier). id 例如; au 数组,其元素型态为unsignedinte teger; 数组,其元素型态为character ach 指到unsignedintege数组的远指针, fpau -指到字符数组的远指针 fpach 指到字串(以NULL结尾)的远指针; tpsZ -指到函数进入点的远指针; fpfn 个数,以字符为单位(countincharacter); cch 个数,以字节为单位(countinbyte), cb -unsignedintege数组的索引(index) iau 修饰词用于对数据结构中每个变量的用途作简短描述 标准的修饰词如下
GB/T15189-94 First/I.ast -第一个/最后一个; Min/Max 最小/最大 Old/New 旧/新; Next/Prev 下一个/前一个; Src/Dst 来源/目标 Save 存; Cur 当前的 Mac 当前最大值 用户还可根据需要创造符合自己要求的修饰闻,创造修饰词时必须遵守以下规则" 修饰词可包含一个以上的单字,但每个单字第一个字母必须大写 b. 不可有多余的单词,如pBufePoimter中,Pointer即为多余,写成fpBaufer才正确 示例 某字符数组,代表箱入法(inputnmethod)名称; achMethodName 代表某字符集(eharaeterse)的D, idCharSet ulnfoSize 无正负号整数,表示某信息结构大小(iuefaninormationstrueture); -TypeFaeeLiet的元素个数 cTypeFaceLst -指到某数组的远指针,数组每个元素为1byte,各表示一种字体(TypeFace); fpabTypeFace- 指到某参数(parameter)结构的远指针, fpsParam sKbdnfo 键盘信息结构(keyboardinformationstruecture). fbCharType -标志(1byte),表示字符所属型态(charactert type). 3.4返回码信息定义 返回码是调用功能返回的信息,存于Ax寄存器中 若Ax-0,表示正确执行完毕 Ax的各部分含义定义如下 15 14 13121110 AX 其中 bit15表示全局的返回码; 1) 警告(warning) 错误(Eror) 2) b. bit14~12表示产生错误/警告的命令类别 数据(Dat ata; 1 查询(Query); 设置(Set)3 安装(Add) S 撒除(Del); 6 命令(Command). bi1一8丧示产生错误/警告的功能类, 系统信息类功能; 1 2 提示行类功能 3 输入法类功能 字形类功能"
GB/T15189-g4 显示类功能 5 键盘类功能 7) 打印类功能 bit7~0指出错误/警告的细节; d 1) 执行失败(Fail); 22 缓冲区空间大于系统所需(Underflow); 3) 缓冲区空间不足(Overflow) 选择错误(BadSeleetion) 4 5 参数组合错误(BadCombine); 6》 参数未定义(Undefined), ?) 本功能系统未提供(Unavailable); 8状态改变(Change), 9)参数值超出范围(OutRange); 10)重复设置(Duplicate) m系统空间不够(NatEnoushMemory) 返回码就是由上述四部分做OR"运算的结果,返回码的分类如表2所示 表2 位 返回值 说 怀 类 明 FUNcRET-OK 执行正确 0000H正确无误(NOERROR 000oH警告(BIT15ISOFF FUNCRET-wARNING bit15 错误/警告 FUNCRET-ERROR 8000H错误(BIT15ISON FUNCRET-DATA 100oH数据(INFO/DATA FUNCRET-QUERY 2000H查询QUERY FUNCRET-SET 300oH设置(SET bit14~12 命令类别 FUNCRET-ADD 4000H安装(INSTALL FUNCRET-DEL 撇除(REMovE 5000H FUNCRET-CMD 6000H命令(PROCESSCOMMAND FUNCRET-ExTsYs 其他 0000H FUNCRET-SYS 0100H系统信息类功能 FUNCRET-CPs 字形类功能 0200H FUNCRET-STLN 030oH输入法类功能 bit11~8 功能类 FUNCRET-FONT 0400H 提示行类功能 FUNCRET-DSP 050oH显示类功能 FUNCRET-KB 0600H 键盘类功能 FUNCRET-PRT 0700H打印类功能 FUNCRET-NOPPOCESS 00o1H没有执行 bit7~0 FUNCRET-UNAVAL 0002H本功能未提供 信 FUNCRET-FAL 0003H执行失败
GB/T15189-94 续表2 返回值 说 明 FUNCRET-UNDEFINE 0004H参数未定义 FUNCRET-CHANGE 00sH数据已改变 FUNCRET-UNDERFLOw 0011H缓冲区空间太大 FUNCRET-OVERFLOw 0012H缓冲区空间不足 bit70 FUNCRET-DUPLICATE 0o13H数据重复 信 息 FUNCRET-OUTRANGE 0014H参数值超出范围 FUNCRET-NOMEMORY 0021H内存空间不足 FUNCRET-BADSELECT 022H选择项错误 FUNCRET-BADCOMBINE 0023H参数组合错误 系统信息类功能 4.1功能列举 系统信息类功能包括 查询系统信息; 查询系统模式 设置系统模式; 查询系统原中断向量入口地址; -查询系统新中断向量入口地址 4.2数据结构 系统信息数据结构如表3所示 此结构在调用“查询系统信息”功能时用到 表3 字段名称 小 内 容 大 ulnfoSize 此结构的大小 dsyasSign 系统已安装的标志 “中” dMajor cPrTcDosCP版本(如1.10版idMapr- =01 idMinor CPTCDOS-CP版本(如1.10版idMinor=10) idSysID 中文系统编号(D) CodepageD936forscc idCP idCharSet 系统内码D fpszSysDesc 系统信息说明 表3中: uhnosie;系统信息结构的大小,以byte为单位; dsysSign;表示系统已正确地安装,应用程序可通过本标志判断当前中文系统是否存在 idMajor,idMinor;存放CPTCDOs-CP规范版本,idMajor=01,idMinor=00代表1.00版; idSysID此区可由汉字厂商存放厂家信息及厂家版本; idCP;简体码页(CodePageID)g36;
GB/T15189-94 idCharset,此字形使用的内码D dCP=936 00HGB2312码 idCP=938 00H:TCA码 8oH:Tele码 9oH;BIG5码 AoH;IBM5550码 BoHCNS码3 psSysDe 指向系统描述信息的远指针 esc 4.3功能说明 查询系统信息 4.3.1 说明;本功能在中文模式和英文模式下都有效 输入: (Ax=000oH 一系统信息结构缓冲区的初始地址,并先将缓冲区大小填入第一个字 ESBX (AX 输出: 000oH,正确无误 =2111HH,缓冲区太大(Underfow) =2112H,缓冲区不足(Overfow =0A103H,查询失败或没有提供查询功能 DX一系统内该信息的实际大小(byte) 改变;Ax,Dx寄存器 迷.若Ax寄存器输出最高位(bit15)为0,则(EsBx)所指缓冲区即存放查询的信息 不论本功能执行正确与否,(Dx)寄存器均会返回系统存放信息的实际空间大小(bes) 若先前执行返回缓 冲区大小不符,则可参考Dx值修改后,再重新调用本功能 不论缓冲区太大或不足,系统均返回信息,但是返回信息不会超过用户缓冲区大小 下面所有有关查询信息 时缓冲区大小的问题均遵守这条原则 4.3.2查询系统模式 说明:本功能在中文模式和英文模式下都有效 输入;(AX一0001H Ax=000oH,正确无误 输出; =0A103H,查询失败 (DL=系统模式编码 =0oH,英文模式 01H,中文模式 改变:AX,DX寄存器 注本功能提供查询现在系统是在中文或英文模式的功能 圈本功能和设置系统模式是相对应的两个功能 4.3.3设置系统模式 说明:本功能在中文模式和英文模式下都有效 (Ax=0002H 输入: DL=系统模式编码 =0oH,英文模式 =01H,中文模式
GB/T15189-g4 输出: Ax=000oH,正确无误 -B122H,模式编码错误 =oB103H,设置失败 DL一原来系统模式编码 改变:Ax,Dx寄存器 注本功能切换系统至中文模式或英文模式,在英文模式下,系统提供一个纯英文的环境并将大部分功能隐义起 来 本功能提供给系统热键切换者切换操作模式 本功能将会通知键盘、显示和打印驱动程序切换后的系统模式 显示驱动程序会根据系统模式切换显示模式 成相对模式 若要把显示桃式设成和系统内定显示模式不同,则利用原BosNT1oH抛供的“设置屏幕模 式”一项功能 系统模式的设定将纯英文和纯中文环境分开 4.3.4查询原中断向量入口地址 说明;本功能在中文模式和英文模式下都有效 (AX=0003H 输入 (DL)=中断号 输出,(Ax=0000H,正确无误 =0A122H,DL多数错误 (ES:BX原中断向量入口地址 改变Ax,ES,Bx寄存器 注;原中断向量指系统在安装中文系统之前的中断向量 ? 系统在英文模式状态下,若有中断变化系统会将控制传给原来的中断向量 4.3.5查询新中断向量入口地址 说明;本功能只在中文模式下有效 输入;(AxX=0004H (DL)=中断号 输出: AX=0000H,正确无误 =0A122H,DL参数错误 (ES:x)一新中断向量入口地址 改变:Ax,ES,Bx寄存器 注,新中断向量指系统在安装中文系统之后的中断向量 字形类功能 5.1功能列举 以下功能由系统提供 -初始化 查询已安装的字形驱动程序的个数 查询已安装的字形驱动程序的列举; -安装新的字形驱动程序 撤除已安装的字形驱动程序, 查询字形是否存在; 查询基本文字字形 以下功能由字形驱动程序实现 查淘字形驱动程序信息;
GB/T15189-94 查询字形驱动程序的字形描述信息; 蠢间扩充文字字形 从内存撤除字形驱动程序 5.2数据结构 5.2.1字形驱动程序信息数据结构 字形驱动程序信息数据结构如表4所示 表4 容 字段名称 大 内 小 unfoSize 结构大小 tchFontName[12] 12 字形驱动程序名称(FontDrivername 版本(如1.10版idMajor 01 idMajor 01 版本(如1.10版idMinor idMinor 2 字体的套数 TRCm ount 字体类型的远指针 pTypeEntrs 表4中; ulnfoSize;结构大小; achFontName[12]:字形驱动程序名称数组,若没填满则以0结束; idMajor;字形驱动程序主版本号; idMinor 字形驱动程序副版本号 uchTypeFaceCount;字体的套数, TypeEntry,字体类型远指针 第一套字的字体类型(TypeFace) word 0 = 第二套字的字体类型 wordn=第n+1套字的字体类型 TypeFace;字体类型 英文:范围000oH~7FFFH 000oH LinePrinter 0001HPica 00002H:Elite 0003H:Courier 0004HHelv 0005H;TmsRmn 0006H:Gothie 0007H:Script 0008H,Prestige 0009H:Caslon 000AHOrator 其中;0000H5FFFH为系统定义区;6000H~7FFFH为用户自定义区
CB/T15189-94 汉字,(范围80ooH~FFFFHD 8000H宋体 810oH,仿宋体 楷体 8200H 830oH:黑体 其中8000HDFFFH为系统定义区;E00oH~FFFFH为用户自定义区 迷,高字节表示汉字的主体类型;低字节表示汉字的变体类型 5.2.2字形查询数据结构 字形查询教数鹅结构如妻5所示,字形结构图见图1. 表5 字 段名称 大 内 容 ulnfoSize 结构大小 uTypeFace 字体类型 字体类型的名称 achTypeName 24 uCharDefine 可使用字数 uCharStyle 字体式样 字库类型 uFontType uFontAttrib 2 字体属性 uFontWidthMax 最大字宽 最大字高 uFontFeightMax ntwidthMin 最小字宽 uFor uFontHeightMin 最小字高 基准线位置 uBaseLine 表5中: unfoSize;结构大小 uTypeFace,字体类型, achTypeName;字体名称, 例如;“宋体"名称长度不到24个字节,后面必须补零进去 ulchaDefne,可使用字数, CharStyle;字体式样 bit0-1代表变宽字,but0=代表等宽字 FontType字库类型 0表示点阵字(bitmap 1表示TrueType字 2?; 表示PostScript字 3一 7FH系统保留 80H~0FFH:用户自定义; uFontAtrib,字体属性提供状态 中空字提供(a)或不提供(o) bit0= bit1=阴影字提供(1)或不提供(o 10
GB/T15189一94 bit2=立体字提供(1)或不提供(o bit3=斜体字提供(1)或不提供(o bit4=镜射字提供(1)或不提供(o> bit5=旋转字提供(1)或不提供(o) bit6=网心字提供(1)或不提供(o) 属性的顺序由bit0~bit15 uFontwidthMax;字体可设置的最大宽度 uFontHeightMax;字体可设置的最大高度 uFontwidthMin;字体可设置的最小宽度; FontHeiehtMin;字体可设置的最小高度; uBaseLine基准线位置 以1/1024为单位,从字框顶部到基准线的点数
GB/T15189-94 字框顶部 TopofCel 字框宽度 实际字形左 CellWidth 上角横坐标 实际字形右 下角横坐标 字框高度(Cel1Height)字框底部(BottomofCel -实际字形左上角纵坐标 实际字形右下角纵坐标 基准线位置(BaseLinePosition 图1 5.2.3文字字形信息数据结构 5.2.3.1基本文字字形信息数据结构 基本文字字形信息数据结构如表6所示 12
GB/T15189一94 字 内 容 段 称 大小 unoSie 结构大小 weh 文字内码 uTypeFace 字体类型 uPtrnWidth 字形宽度 字形高度 uPtrnHieight ceH 字形缓冲区大小(byte) pPtrnBuf 字形缓冲区地址(FarPointer uPtrnActuWidth 实际字形宽度 实际字形高度 uPtrnActu aH CAPoint 取得部分字体的左上角及右下角坐标 5.2.3.2扩充文字字形信息数据结构 扩充文字字形信息数据结构如表7所示 表7 字 段 名 称 内 大小 ulnfoSize 结构大小 wch 文字内码 uTypeFace 字体类型 字形宽度 uPtrnWidth uPtrnHeight 字形高度 ccH 字形缓冲区大小byte fpPtrnBuf 字形缓冲区地址(FarPointer uPtrnActuwidth 实际字形宽度 uPtrnActuHeight 实际字形高度 sCAPoint 取得部分字体的左上角及右下角坐标 uchPtrnFormat 产生字形的格式 uehPtr 产生字形与缓冲区数据的集成方式 PtrnOper uBufwidth 缓冲区的宽度 uOffsetX 字体放在缓冲区的横坐标位置 uOffsetY 字体放在缓冲区的纵坐标位置 uAttribSet 属性的设定 fpAttribVaue 属性值 表7中; wch;文字内码(英文内码highbyte为0); uTypeFace,该字的字体类型, uPtmwidth,uPtrnHeight,该字形的宽及高,以点为单位 13
GB/T15189-g4 ceH,此字形Patternbuffer的大小(byte); pPtrnBuf指向PatternBuffer的指针; uetrnActuwidth,uPtrnAetuHeight;所取得的该字形实际宽,高; CAPoint:取得部分字体的左上及右下角坐标; 欲取得部分字体的左上角横坐标 word0 欲取得部分字体的左上角纵坐标 word1 word2 欲取得部分字体的右下角横坐标 word3 欲取得部分字体的右下角纵坐标; uechPtrnFormat;产生字形的格式BitMap(o),RasterLine(1),RasterNext(2), RasterLine的数据格式为 word0=0;最后一组数据 =1:还有下一组数据 word1=RasterNext数据组的组数 word2,3,4=第1组数据(Y1,X1s,Xle word5,6,7=第2组数据(Y2,X2s,x2e 其中,Yn=字形纵坐标 Xns一字形横坐标起始点 Xne=字形横坐标终止点 swd0不为零时,必一直渊用本功能,直到wd0为零时止., 当 uchPtrnOper;产生字体与缓冲区数据集成方法: Overwrite(o),OR(1),AND(2),xOR(3),Nor(4); nBufwidth;存放字形的缓冲区宽度(以点为单位,但必须为8的整数倍); OffsetX;字体放在缓冲区的横坐标位置; OffsetY;字体放在缓冲区的纵坐标位置; ,属性的设定 uAttribSet 中空字设定(1)或取消(o bit0 bit1=阴影字设定(1)或取消(O bit 立体字设定(1)或取消(0 2 bit3=斜体字设定(1)或取消(0 bit4 镜射字设定(1)或取消(O 旋转字设定a)或取消(o bit5 bit6=网心字设定(a1)或取消(o 属性的顺序由bit0~bit15; pAttribValue:属性值(FarPointer).: 当此值为零时,可以不定义下一个字段的属性值 word0=中空宽度 highbyte阴影字本体空心(1)实心(o word1= lowbyte阴影方向,左上(O)右上(1) 右下(2)左下(3) word2=阴影水平深度 word3=阴影垂直深度 word4=highbyte立体字本体空心(1)实心(o I
GB/T15189-94 lowbyte立体方向,左上(0)右上(1) 右下(2)左下(3 word5=立体水平深度 word6=立体垂直深度 word7= bit15左斜(0)右斜(1),bit14bit0倾斜角度 word8 镜射方向,bit0=1左右镜射,bit1=1上下镜射 旋转角度(顺时针方向) word9 bit15=0顺时针转,bit15=1逆时针转 word10=highbyte网心种类 0=brush,1=dither,2=userdownload lowbyte网心索引 1 网心Dither的对照表如表8所示,对照表代表dither网心的index 表8 4 33 35 1 43 49 17 57 25 59 51 19 27 13 45 15 37 47 39 53 2 61 29 63 31 55 23 2 36 44 34 10 42 52 20 60 28 50 18 58 26 16 48 40 46 38 56 64 32 24 62 30 54 22 例如" 1 index index 2网心Brush的定义 index index index indeX o O o O O O l5
GB/T1518g-g4 index index index index o o o O 5.3功能说明 5.3.1初始化 说明,本功能仅限于系统安装初始化使用,由系统核心调用 输入:(AX=0100H =00oH,正确无误 输出:(AX =0E203H,设置失败 改变 Ax寄存器 5.3.2查询已安装的字形驱动程序个数 说明:本功能返回当前系统内的字形驱动程序总数 输入:(Ax)=0101H 输出:(Ax)=000oH,正确无误 =0A203H,查询失败或没有提供查询功能 DL=系统内已安装的字形驱动程序个数 改变AX,Dx寄存器 5.3.3查询已安装的字形驱动程序列举 输入: AX=0102H DL)=(ESBx)所指缓冲区大小 ES:BX 一缓冲区初始地址<放置返回的字形D) (Ax)=000oH,正确无误 输出 -2211H,缓冲区比系统返回D所需空间大(Underflow =2212H,缓冲区不足(比系统返回D所需空间小 =0A203H,查询失败或没有查询功能 (DL)一系统已安装的字形驱动程序个数 改变Ax,DX寄存器 注若Ax寄存器输出最高位(bit15)为0,则(ES,BX)所指缓冲区内即是系统已建立的字形驱动程序D. 本功能返回当前系统内的字形驱动程序D列表,如果输入的缓冲区不足,本功能会通知调用者配置更大的 缓冲区,然后再执行一次 D以byte为单位 5.3.4安装新的字形驱动程序 说明,1)本功能可安装新的字形驱动,并把字形驱动程序的D由(DL)寄存器返回 用户在调用本功能前,应先装入字形驱动程序及字库并设置好字形信息各字段数据 此 2 外,本功能井没有为字形驱动整序及字库配置存储空间,用户必须自己完成 输入: AX=0103H I6
GB/15189一94 (Es!Bx)=字形驱动程序的进入地址(FunetionEantry 输出 (Ax)=000oH,正确无误 =0C203H,无法安装或没有提供安装功能 =0C212H,系统空间不够,无法安装 (DL=该字形驱动程序注册的D 改变;AX,Dx寄存器 5.35激除已安装的字形驱动程序 输入: (Ax=0104H DL=字形驱动程序D(FontDriverD) 输出: AX=000oH,正确无误 =0D203H,无法移除此字形驱动程序 =0D204H,(DL)选到未定义的字形驱动程序 =OD222H,此种字形驱动程序不可移除 改变:Ax寄存器 注.本功能移除(DL)寄存器所指定的字形驱动程序,但系统字形驱动程序(SystemFontDriver)不可被移除 若要移除当前使用的字形驱动程序,则(Ax)寄存器会返国oD222H 5.3.6查询字形是否存在 输入: (AX=105H DX=字体类型 输出: Ax=000oH,此字形存在 =0A204H,此字形不存在 改变;AX寄存器 注;本功能查询系统中是否存在(DX)寄存器指定的字体类型 5.3.7查询基本文字字形 说明:1文字字形(pattern)是以由左而右,由上而下的先后次序返回,如图2所示(16×16字形). 2)查询结果若实际字形宽度和高度不为零,则需调整缓冲区大小,重新调用一次 输入: (AX=0106H (Es'Bx)=缓冲区的初始地址,并先填入所查询文字的相关数据及欲存储该文字字 形的初蛤地址等数据(参考基本文字字形信息数据结构 输出: AxX=0000H,正确无误 =2211H,结构缓神区太大(Underflow =0A212H,结构缓冲区不足(Overfow) =1211H,字形缓冲区太大(Underflow) -921H,字形缓冲区不足(ovelow) -0A203H,查询失败或没有查询功能 =0A202H,没有该文字字形(Patternnotavailable =0A222H,设置错误 =0A204H,该字没有定义 DX一缓冲区实际大小 改变;Ax,Dx寄存器 7
GB/T15189-g4 yte byte byte byte3 byte byte byte1B 1F byte 目2 5.3.8查询字形驱动程序信息 输入: (Ax=0107H DL=字形驱动程序D(FontDriverID) =字形驱动信息结构缓冲区的初始地址,并先将缓冲区大小填入第一个 ES:BX word 输出 (Ax=000oH,正确无误 =2211H,缓冲区太大(Underflow -2212H,缓冲区不足(Overllow =0A203H,查询失败或没有提供查询功能 =0A204H,所查询的字形未定义 Dx)一系统内此字形驱动信息结构的实际大小 改变:Ax,Dx寄存器 注若Ax寄存器输出最高位(it15)为0,则(EsBx)所指缓冲区内即是查询的信息 本功能返回(Dx)寄存器指定的字形驱动信息,假如缓冲区空间不足,本功能会将部分数据填入缓冲区内,调 用者可参考(Dx)返回值,增大缓冲区空间,然后再调用本功能一次,以获得全部数据 5.3.9查询字形描述信息 0108H 输入: (AX DL一字形驱动程序ID Es:Bx=字形查询结构的初始地址 输出 (AX)=0000H,正确无误 -2211H,缓冲区太大(Underfow =0A212H,缓冲区不足(Overfow) =0A203H,查询失败或没有提供查询功能 -0A204H,所查询的字形未定义 Dx一系统内此字形信息结构的实际大小 改变,Ax,DX寄存器 注若Ax寄存器输出最高位(btt15)为0,则指缓冲区内即是查询的信息 查询前请先填入字形查询数据结构各项 18
GB/T15189-94 5.3.10查询扩充文字字形 输入 (AX 0109H 一字形驱动卷序D DL (Es,Bx)=缓冲区的初始地址,并先填入所查询文字的相关数据及欲存储该文字字 形的初始地址等数据(参考扩充文字字形信息数据结构) 输出; AX=0000H,正确无误 -21H,结构缓冲区太大(naderflow) -0Aa12a.结构缓冲区不足(oveflow》 =1211H,字形缓冲区太大(Underfow =9212H,字形缓冲区不足(Overfow) -0A203H,查询失败或没有查询功能 =0A202H,没有该文字字形(Patternnotavalable) =0A222H,数据设置错误 =0A204H,该字没有定义 改变;AX寄存器 注若Ax寄存器输出最高位(bit15)为0,则pPrnBu所指缓冲区内即是查询的文字字形 圆文字字形(patern)是以由左而右,由上而下的先后次序返回 查询结果若实际字形宽度和高度不为零,则需调整缓冲区大小,重新调用一次 参考查询基本文字字形功能 5.3.11从内存撒除字形驱动程序 说明:本功能由系统使用,不允许应用程序调用 输入: (AX=010AH 输出: (AX=000oH,正确无误 =9503H,撤除失败或没有提供撤除功能 改变Ax寄存器 输人法类功能 61功能列举 以下功能由系统提供 -初始化 查询输入状态信息; -设置输入状态信息, 查询已安装的输入法的个数; 查询已安装的输入法的列举, -安装新的输入法 -撒除已安装的输入法; 查询当前使用的输入法 -选择新的输入法 以下功能由输人法驱动程序实现 -查询输入法驱动程序信息; 重置当前输入法状态, -处理键入数据; -从内存撒除输入法驱动程序 19
GB/T15189-g4 6.2数据结构 6.2.1输入法驱动程序信息数据结构 输入法驱动程序信息数据结构如表9所示 表9 内 容 字段名称 大小 ulnfoSize 结构大小 achcCPSsName[8] 输入法名称 idMajor 版本(如1.10版idMajor一01 idMinor 版本(如1.10版idMinor=01 uCmdKey 输入法请求健 输入法请求键状态位 uCmdKeyStatus HCSType 输入法类型 表9中 achCPSName[8],输入法名称,最多8个byte,不够以0补齐; idMajor;输入去驱动程序主版本号 idMinor输入法驱动程序副版本号 uCmdKey,输入法请求键,高位=Scan.Code,低位=AscICode; uCamdKeystatus,输入法请求键状态位; bCPSType:输入法类型 bitO;大写字母 bitl:小写字母 bit2数字键 bit3;小键盘 bit4一bit7其他 62.2输入法信息交换数据结构 输入法信息交换数据结构如表10所示 此结构为系统和输入法间的主要接口 表10 字段名称 大小 内 ulnfoSize 结构大小 fShiftState 移位键状态 输入状态指示 flnputState cbMaxDupCode 最多允许单字重码数 cbDupCode 重码数量 cb.ActuDspCode 实际显示个数 chSelKeyFirst 候选区第 个侯选字注标的ASCI码 2 输出结果区大小 cchResult fpauResult 输出结果区地址(farpointer cchSelection 候选区大小 fpszSelection 候选区地址(iarpointer cchCompose 码元输入区大小 码元人入区地址arpointer fpszCompose 表10中; 20
GB/T15189-94 ShitState;当前键盘的移位键状态,如表11所示; flnputState输入状态指示: 半角 bit0 全角 联想ot bit1 联想on 高频of bit2 高颜on(高频先见 词组of(送单字) bit3 词组on(送词组 bit4 直送of 0 直送on(无重码直接输入 bit5 告警off 0 告警on(错码告警 0 bit6= 复位of 复位on(错码复位 bit715保留; cbMaxDupCode;最多允许单字重码数; cbDupCode;重码数量 cbActuDspCode:实际显示个数 chSelIKeyFirst候选区第一个候选字注标(如“1”)的AsCI码 cchResult输出结果缓冲区大小d fpauResult 指到精出结果缓冲区的远指针, echSeleection,候选区大小 fpszSelection,指到乍选区的远指针,候选区是用来存放候选字的数组, cchcompose:码元输入区大小; pszCompose;指到码元输入区的远指针,码元输入区是用来显示当前键入的码元号, 表11 bit0 RightShitKeyON RightShiftKeyOFF bit1 leftShittKeyON letshift OFF K bit2 Contrc uelKeON ControKeyOFF bit3 ALTKeyON ALTKeyOFF scrolLoekoN bit4 ScrollL.ockOFF bit5 NumericLockON NumericL.ockOFF 2!
GB/T15189一94 续表11 bit6 CapsL.ockON CapsLockOFF ON bit7 nsertToggle6 nsertTogeieoFF bit8 LeftControlKeyON LeftControlKeyOFF bit9 LeftAltKeyON LetAltKeyOFF RightControlKeyON bitA RightControlKeyOFF RightAltKeyON bitB oFF RightAlKey e SroKey ON bitC ScrollKeyOFF bitD NumericLockKeyON NumericLockKeyOFF bitE CapsLockKeyON CapsL.ockKeyOFF bitF SysRegKeyON SysReqKeyOFF 屏幕显示字段格式如图3所示 22
GB/15189-94 中文电脑输人介面 输出结果区 当前光标位置 状态行指示 拼音JIB CN[半/全]1揭2接3皆4街5截6劫7杰 系统标识区 SystemField) 码元输人区 (ComposingArea) 输人名称区 (ComposingLabelField) 候选区 SelectionFiel) Caps/Num,半/全角 输人状态区(ModeField) 图3 6.3功能说明 6.3.1初始化 说明;1)调用本功能后,系统输入法内部信息将被重置,并选择“英文"为系统输入法 2本功能仅在系统初始化时用到,应用程序不要调用本功能 输入:AX=0200H 000oH,正确无误 输出:(AX =0E303H,设置失败 改变;AX寄存器 6.3.2查询输入状态信息 0201H (AX 输入: -000oHH,正确无误 (AX 输出; =0A303H,查询失败或没有提供查询功能 Dx)=系统内输入状态信息 半角 bit0==0 全角 联想off 0 bit1= 联想on 高频off bit2 高频on(高频先见 23
GB/T15189-94 0 bit3= 词组off(送单字 词组on(送词组 0 直送oft bit4= 一1直送n(无重码直楼输入 bit5 一 告警of 0 告警on(错码告替 bit6= 0 复位of 复位on(错码复位 bit7~15保留; 改变:Ax,Dx寄存器 6.3.3设置输入状态信息 AX 输入: 0202H (DX一输入状态信息 输出: (AX=000oH,正确无误 =0B303H,设置失败或没有提供设置功能 =OB304H,设置值没有定义 =0B314H,设置的数据值超出范围 -OB323H,设置信息中有不正确的数据组合 Ax,Dx寄存器 改变 注,输入状态信息的各it规定同查询输入状态倍息功能中的定义 6.3.4查询已安装的输入法个数 输入 (AX=0203H 输出 (AX=000oH,正确无误 =0A303H,查询失败或没有提供查询功能 DL=系统已安装的输入法个数 改变:AX,DX寄存器 查询已安装的输入法列举 6.3.5 输入 AX=0204H DL)=(Es;Bx)所指缓冲区大小 es,B)一缓冲区的初始地址(放置返回的输入法D列举》 输出: (Ax=000oH,正确无误 =2311H,缓冲区太大(Underflow =2312H,缓冲区不足(Overfow) =0A303H,查询失败或没有提供查询功能 DL=系统已安装的输入法个数 改变:AX,Dx寄存器 注;用户可先调用本功能找出当前系统中所有输入法D,再通过“查询输入法信息”功能,得到该输入法信息(如输 入法名称,输入法选择健等. 6.3.6安装新的输入祛 AX 输入; 0205H ESBX=输入法程序的进入地址 输出 (AX=000oH,正确无误 =0C303H,无法安装或没有提供安装功能
GB/T15189-94 =0C321H,系统空间不够,无法安装 (DL=此输入法注册的D 改变Ax,Dx寄存器 迷本功能井没有为输人法子程序配置内存空间,用户在调用本功能前,而将输入法子程序装人系镜中,井设登好 输入法状态 63.7撒除已安装的输入法 输入 (AX 0206H CDL=输入法ID 输出; AX)=0000H,正确无误 =OD303H,执行失败或没有移除功能 =0D304H,(DL)选到不存在的ID =0D322H,此输入法不可移除(当前使用中) 改变:Ax寄存器 迷,对于一般输入法子程序,本功能会将其D终止,留给其他的输入法使用 6.3.8查询当前使用的输入法 输入: AX=0207H 输出: AX=000oH,正确无误 =0A303H,查询失败或没有提供查询功能 (DL=当前使用的输入法ID 改变,AX,DX寄存器 6.39选择新的输入法 输入: (AX 0208H 一欲选择的输入法D (DL 0oH:选择英文输入法 选择上一次中文输入法或第一个输入法 OFFH 其他,DL-输入法D 输出: Ax一000oH,正确无误(输入法没有改变 =330sH,正确无误(已设置为新选择的箱入法) -oB303H,无法选择或没有提供选择功能 =0B304H,输入法ID不存在 DL一选择前的输入法ID 改变:Ax,DX寄存器 注,本功能可改变当前使用的输入法 63.10查询输入法驱动程序信息 输入: AX=0209H (Dx)一输入法D Es1Bx)-指向输入法驱动程序信息结构的初始地址 输出: (Ax=000oH,正确无误 -0A30H,无法查询或没有提供查询功能 -0A304H,所查询的输入法D不存在 改变:Ax,Dx寄存器 6.3.11重置当前输入法状态 输入: AX=020AH 25

纸浆和纸零距抗张强度测定法
上一篇 本文分享国家标准纸浆和纸零距抗张强度测定法的全文阅读和高清PDF的下载,纸浆和纸零距抗张强度测定法的编号:GB/T2678.4-1994。纸浆和纸零距抗张强度测定法共有5页,发布于1995-03-011995-03-01实施
球形金属罐容积标定法(围尺法)
本文分享国家标准球形金属罐容积标定法(围尺法)的全文阅读和高清PDF的下载,球形金属罐容积标定法(围尺法)的编号:GB/T15181-1994。球形金属罐容积标定法(围尺法)共有14页,发布于1995-06-011995-06-01实施 下一篇
相关推荐