




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
原有排版文件的超文本化处理第9卷第1期Vol_9No.1北京印刷学院JournalofingInstituteofGraphicCommunication2001年3月Mar.2001文章编号:10048626(2001)01000308原有排版文件的超文本化处理何薇,黄煜红(北京印刷学院电子工程系.北京102600)摘要:以华光排版系统为例,分析了原有排版文件特别是其小样文件的格式特点,撮讨了将其转换为超文本格式的途径与方法并编制出相关程序,这对于充分利用已有排版信息资源开发电子出版物是有利的.关键调:排版语言;超文本语言;格式转换中图分类号:TP335;TS803.23文献标识码:A电子出版物及网络出版的出现,使印刷与出版的观念产生了新的飞跃电子出版物作为印刷技术与计算机技术相结合的产物,其图文声并茂,更快更便当的交互性阅读方式,改变着传统的阅读习惯.电子出版物已发展成为与书报刊并驾齐驱的信息载体,具有传统出版物不可比拟的优势和价值,越来越受到入们的青睬.电子出版物所涉及到的数据已不再是单纯的文字,还包括图形,图像,声音,动画视频在内的多种数据.为了将多种数据综合为统一的整体,并具有联想式的跳跃结构,电子出版物的数据组织方式一般采用超文本/媒体的数据结构.超文本的HTML文件数据正符合这样的结构以各个独立信息块和信息块之间的热链而形成的非线性的网状结构.任何电子出版物其内容都少不了文字.文字作为电子出版物数据非常重要的成分,其录入是一项十分费时费力的工作.近十多年来出版的书报刊在印制过程中由于采用电子照排工艺往往会留下大量已录入的文字数据,如果能直接把这些数据引入电子出版物中,将会给电子出版物的制作带来极大方便.特别是将这些文字数据转换为超文本的HTML文件格式,还可以进行阿上出版.不过,印刷出版所留下的文字数据多为加有注解符格式的文件,用当时华光,方正等厂家提供的排版软件产生.为了有效利用以往电子照排的成果,应进行文收稿日期:20010222件格式的转换,将原有的排版文件转换为纯文本文件,更可转换为HTML文件下面仅以采用华光系统所产生的原有排版文件为例,加以分析讨论.1原有排版文件的基本特性华光排版系统是在输入的文字间加入相应的版式注解符并通过编译处理后生成一定格式的排版文件,可分为小样文件与大样文件两种.小样文件是指编译处理前加有版式注解符的文本文件,版式注解符是在华光排版系统的缩辑环境下利用重定义键盘输入完成的版式注解符也可以由转义字符代替.加转义字符的小样文件是用普通键盘完成输入的,这部分文件的文字量相当大所以,对加有转义字符的小样文件进行格式转换处理更有意义.表1列出了华光排版系统部分转义字符与版式注解符之间的对应关系.大样文件是小样文件经编译处理后生成的版式结果文件.在编译过程中通过对版式注解符的处理,生成与小样文件同名的带.s2后缀的文件.只有.s2文件才能发往系统进行排版作业.无论华光小样文件或大样文件,都可以转换为电子出版物与网络出版所要求的纯文本文件或HTML文件.北京印刷学院2001表1华光排版系统部分转义字符爰所对应的颇式注解符转义字符+版式注解符意义转义字符+版式注解符意义(空格)空格中文空格.三联点!中文左双I号换段注解中文右双I号I<书名左双括号-中文顿号一换行注解.中文句号I>书名右双括号V中文左单引号,?右箭头rr汉字字体字号注解I0文件结束注解汀T数字字体字号注解HKHS(行数开弧注解T外文字体字号注解1DY(居右开弧注解豳H表行注解JDz(居中开弧注解03T标题注解1口x(倾斜开弧注解5中圆点本身6【黑左括号本身7】黑右括号I本身8<书名左单括号|9>书名右单括号/KH空行2大样文件格式分析实际上-华光大样文件可看成是二进制代码文件.代码信息由三部分组成:控制代码;一组坐标值汉字或其他字符的机内码.控制代码由小样文件中的版式注解符转换而来,一般用双字节表示.一组坐标值可确定一个要输出对象的位置.华光照排系统把所有要输出的对象,包括汉字,字符,表格,公式,化学符号,数学符号等,都转化为不同字体字号的字符机内码与不同线型的线段来处理,从而把版式说明转化为一组二进制代码.华光犬样文件格式包括文件头,文件体与文件尾三部分,其结构如下所示;文件头l控制代码l坐标值I字符机内码l坐标值l字符机内码I控制代码l页号l文件尾不妨举一个含汉字乙的大样文件实例:0380F8110380BE190280A5104400020205800000前12个字节为文件头,最后2个字节为文件尾.控制代码0180表示后面的2字节为纵坐标,坐标值是A800.控制代码0280表示后面的6个字节分别为字体字号/横坐标/字符机内码,即乙宇的字体字号为A510,横坐标值为4400,字符机内码为0202.控制代码7280表示后面2个字节为页结束038000000180A8007280228304800100标志.控制代码0480表示后面2个字节为页号.当前页号为0100.如果在当前文件中继续以不变的字体字号输入汉字,则在大样文件乙字的机内码0202后面,出现其他汉字的横坐标和字符的机内码.只有在改变字体或字号时,或者换行,换段时,才重新出现控制代码0180与0280.第1期何蕞.黄煜红:原有排版文件的超文本化处理5下面是一个带有数学公式的大样文件:0380F8110380BE19038000000180B70002802110DA08B3A30180C5000280A5103909B2A350806400B2C3BF00068081A816C9BF0086C9BF000180C5000280A5107280C5000480010005800000该文件体所表达的顺序是;开方数3,开方内表2线与线型厦大样文件控腻代码容2,根符号,横线.线与线型大样文件控制代码;用0180B70002802110DA08D3A3缺省068081A3一组编码确定了开方数3的位置与字体字号;反线O68o83A3用0180C5000280A5103909B2A3横线双线068O85A3虚线O6808BA3一组编码确定了开方内容2的位置与字体字号;点线0680ADA3根符号是由根号控制代码,根号大小,位缺省078O80A3反线078O82A3置来表示的,这组码为:竖线双线O78084A350806400B2C3BF00虚线07808AA3横线的描述是由横线控制代码,线型,起始位点线0780ACA3置,终止位置来表示的.这组码为:缺省088O80A3反线088O82A3068081A316C9BFOO86C9BF00.斜线双线O880B4A3表2表4列出大样文件部分控制代码的含虚线O8808CA3点线08808AA3:义.,表3字体字号类型及大样文件控制代码字体字号大样文件控制代码字体字号大拌文件控制代码小七号报宋0000五号书宋AS10七号报宋.2100小四号书宋C610小六号报宋4200四号书宋E700六号报宋6300三号黑体0809小五号报宋8400小二号书宋.291r五号报宋A5O0二号报宋A11五号楷体A50C二号小标宋4A15七号仿宋2104二号书宋4A04表4界标与添线类型及大样文件控制代码界标类型大样文件控制代码添线类型大样文件控制代码界标(0D800000上线(0C800000界标)0D800400下线)0C800400界标OD8O0100上线0C800100界标.0D800500下线.OC8O0500界标P.0D80O200上线.0C8OO200j界标0D8O0600下线0C800600iI界标.0D800300上线0C8O0300界标0D8O07OO下线)0C8O07006北京印刷学院2001年华光大样文件结构复杂,但也有一定规律可循.例如,连续排的汉字横坐标位置都是以6c为值常量进行递增,每行汉字纵坐标的位置可随字号大小而改变.在以双字节表示的字体字号控制代码中,高字节表示字体,低字节表示字号.字号以常量21递增几种常见字体,如报宋00,仿宋04,黑体O8,楷体oc,书宋11等.均以常量O4递增.3大样文件的转换处理对华光大样文件进行转换处理,主要是滤掉其中的控制代码及坐标值.换句话说,只是抽取其中的字符信息及格式信息.由于大样文件的格式信息基本上都已转化为位置坐标值,要使转换后的结果文件保留原有的版式,就必须对控制代码后面关键性的坐标值进行处理,才能获得理想的效果.华光大样文件以不同的纵坐标表示行,在文件转换时,必须添加必要的换行标志.下面列出能完成对大样文件换行处理的程序:f1.Seek(fllength/2,Cfile:begin);while(1)/滤掉大样文件头,尾部分f1.Read(&hz,2);if(hz一=0x8072)break:if(hz一=0x8003)break:f1.Seek(-4,cfile:current);)while(1)/读取相邻字符纵坐标,并统计出最大差值a12;f1.Read(8hz,z);if(hz=0x8072)break:if(hz=一0x8004)break;if(hz=0xS001)fi.Read(.dx,2);d=dx-dO;for(i一0i<.cur;i+)if(TJ-i.value=一d)TJ.times+;gotoa12;)if(i=cur)13i.value=d;TJEil.times+;cur+潍霜maxh=TJ-0.times;/比较绌坐标的最大差point=0;for(i一0d<eur,i+)if(TJEl1.times>maxh)maxh=TJEo.times;point=i;maxhv=TJpoint.value;/在相邻字符的纵坐标满足最大差值,换入换行标记f1.SeekToBeginO从大样文件抽取的有效字符信息应能保证转换后结果文件的信息完整性,这一点是非常重要的.大样文件的控制代码及坐标值均以双字节描述,通过分析控制代码的编码及坐标值的特性,发现控制代码及坐标值的双字节并不能同时满足大于A0的条件.而任何字符的机内码却能同时满足大于A0.这样,有效字符信息就可以双字节来进行读取.例如,从源文件中任意读取两个字节:f1.read(6co,1)f1.read(8Lc1.1).字节CO,C1若同时满足下列条件:c0>一oXA0C1>=0XA0,则这两个字节合起来就能被解释成一个字符代码的汉字.4小样文件格式分析小样文件是指加华光专用版式注解符的文本文件.特别是加有华光转义字符的小样文件,在滤掉注解符的转换处理上要比大样文件方便许多.下例是加有转义字符的一个小样文件:瞰H2目Hs2rrrlxBsKJZ微机基础KHT一KKH2KHS2HT4F目匠Jz目张炎编着cT一HISDz目阻T3K南大出版社T目为了滤掉转义字符,并保持原有排版样式,将采用相应的HTML标签代替,则转换后的HTML文件如下所示:<BR><BR)(H5)<FONTSIZE=1TYPE一小报宋><CENTER)微机基础</cENTER)</FONT></H5><BR)(BR)(BR><H5><FONTSIZE=1TYPE=仿宋)<CENTER)张炎编着</cENTER)第1期何穰,黄煜红:原有排版文件的超文奉化处理</FONT></H5><BR><BR)(BR<FONTSIZE=1TYPE=楷体>(CENTER>献出版社(/cENTER/FONT)并非所有转义字符都可以找到相应的HTML标签,但转换的原则是在去掉转义字符后应尽可能地保持华光系统描述的原有排版样式,并成为能直接为电子出版物或网络出版所引用的HTML文件.5转义字符与HTML标签转义字符按其功能可分为字符说明类,标题说明类,版面控制类,表格定义类等.5.1字符说明类转义字符与HTML标签字符说明类转义字符主要是用来定义汉字和外文的字体字号.例如:DHT4H定义为汉字4号黑体DHT1Bs定义为汉字小1号小报宋体eWT4Hz定义为外文4号黑正体ST4BZ定义为数字使用4号白正体尽管华光排版系统对字体的描述可用纵,横坐标来定义长,扁的不同形状的字符,但于HTML文件却无关紧要.可以归纳出字符说明类转义字符的一般形式:E(字符类型)(字号>(字体),其作用域是遇到下一个转义字符为止.当遇到(字符类型)说明时,后面的字符将自动恢复到定义的正文字体字号.所以,可将字符说明类转义字符转换为相应的HTML标签是(FONTSIZE=字号,TYPE一字体).不像华光系统,无论是汉字,外文,数字,一律使用HTML的(FONT)标签来定义字体.例如,HT4H目可转换为(FONTSIZE=4,TYPE一黑体>.对于数字,外文均可转换均为<FoNTSIZE=字号>.5.2标蠢说明类转义字符与HTML标签标题说明类转义字符主要包括D与BT注解.其中,D定义各级标题的排版格式,若以后再出现相应级的标题时可按此处定义的格式排版.一般形式归纳如下;KBD(级号>,(标题字体)<字号>,(标题所占行数).例如,D1,2XBS,6s2定义了1级标题,字体字号为2号小报宋,占6行,标题起始位置为距左端2个汉字的位置.BT定义标题内容并按邸D定义好的格式对标题排版.一般形式归纳如下:髓(级号>(标题内容)T.将BD,匝T注解转换为相应的HTML标签,即(H)或(FoNT).若忽略字体不计,可直接换为(H>标签.至于占行参数,可用(P>代替或忽略,因为HTML在以(H>来表示标题时,各标题问会自动留有空隙.例如,一个带有转义字符的小样文件:匝T1第二篇微机排版技术=T2第六章电子排版系统ffi髓3第一节概述ffi另有标题定义是BD1,2XBS,6S2BD2,3K,5S1D3,4F,3S2l.可转换成的HTML文件:<FONTSIZEffi2TYPE一报宋><BR)(BR><BR)/6个(BR> g:.nbsp第二篇微机排版技术(/FoNT)<FONTSIZE=3TYPE楷体><BR)(BR)(BR><BR)<BR)nbsp;第六章电子排版系统</FONT><FONTSIZE=4TYPE=仿宋><BR)(BR)(BR>-g:nbsp;g:.nbsp第一节概述</FONT)作为标题排版的另一补充的行数转义字符目Hs,同样也可转换为HTML标签(H>.5.3版面控制类转义字符与HTML标签版面控制类转义字符主要用于版式说明,如居中Jz;空行H目空格眯Gi换行/换段b等.空格EKG,主要用于指定盒子(开闭弧之间)的距离.一般形式为;G(空格参数>目或EKG(空格参数)内容G)目.尽管空格参数的形式有很多种,但HTML标签化简为g-nbsp.居中Dz目的一般格式为:Dz居中的具体内容/此注解只对单行而言Dz(目居中的具体内容Jz)日或jz(空格参数)居中的具体内容.I北京印刷学院2001韭可转换为HTML的(CENTER)标签只有在处理居中的具体内容时,才考虑Dz的不同形式.例如,一个有转义字符的小样文件:EHT3xBsDz第一章排版语言简介阻T一转换成HTML文件是<FONTSIZE=3TYPE一,报宋)(CENTER)第一章排版语言简介(/cENTER)(/FONT)又如,另一个有转义字符的小样文件:HT4HDz2目录一转换成居中内容并有字间距的HTML文件是<FONTSIZE一4TYPE一黑体)(CENTER)目b.bnsp;b.bnsp;录(/CENTER)(/FONT>当遇到空行H,换行符/或换段符时,可转换为HTML标签(BR)或(P).5.4衰格定义类转义字符与HTML标签用华光表格定义类转义字符G可排出各种复杂式样的表格,包括多种线型,任意方向斜线及任意捌分的表格单元.在表格行内还可实现子表嵌入.HTML同样也可以定义出各种形式的表格,但相对华光而言要逊色许多.不过,有一点是共同的,表格均以基本的表行组合而成.可将【ElG转义字符转换为HTML标签(TABLE),并可将G所用的表行注解BH日转换为相应的HTML标签(TR)或iTD).可归纳出表格定义类转义字符注解的一般形式为:03G(<>/J)03T/SD<线型)日D(线型)(表格体)03G)由于&BTlsDxD日为折页时选用,而HTML标签并不包括这样的选项,在转换中往往可以忽略.在<表格体)中,主要用转义字符H日描述表格的行线,栏线,栏宽等信息,这些在用HTML定义时均可忽略.从华光排版表格转换为HTML表格,主要应完成表行内容的转换.至于栏宽,行线等,HTML则能自动根据内容及缺省值加以确定.例如,对下列加转义字符的小样文件进行HTML转换:旺IG(!)日03HDPGZ,PK5,K3.4F科目【数电【日模电03HDGz成绩8992E03G)P主要应当考虑在转义符旺日和KBH中间出现的项间隔符目的转换问题.BG可用(TABLE)标签替换,KBH可用<TR)标签替换.所遇到每个【也将用<TD)或<TR)标签替换.于是,该小样文件转换成的HTML文件如下;P)(TABLEBORDER><TR>(TD)科目(/TD)(TD)数电</TD)(TD)模电(/TD)(/TR)<TR>(TD)成绩(/TD)(TD)89(/TD)(TD)92(/TD)</TR)(/TABLE)5.5小样文件格式转换的编程处理完成由小样文件到HTML文件的转换,主要是要把小样文件中的各种转义字符转换成对应的HTML标签.因此,编程的思路是首先识别原小样文件中的转义字符,然后再对它们进行相应的转换处理下面给出处理转义字符的流程图._1f_一一第1期何蔽,黄煜红:原有排版文件的超文本化处理圉1小样文件转义字符的处理流程图(1)对换段转义字符转换的编程处理小样文件换段的转义字符是;,将其转换成HTML相应的标签(P>,编出的程序如下chfgetc(fp);/指针fp指向带有转义符的小样文件,读取字符switch(ch)/字符特性判断ease,;/当读出时,表明后面跟有转义字符)d0/循环读字符直到下一有效转义字符ch=fgetc(fp);while(ch一一);switch(ch)case,;/读出换行转义字符;charpstring=(p);/将(p)标签代替写入转换文件中inti一0;while(pstringI1一,.)fpUtC(pstringI+,pl);ch=fgetc(fp);break;),(2)对居中转义字符转换的编程处理对小样文件的居中转义字符,将其转化成相应的HTML标签(CENTER)居中内容</CENTER).编出的程序如下:CHAR*JZSTART=(CENTER>);/当读出居中转义字符后转入该段程序CHAR*JZEND=f<CENTER>);IntI=0,i=O;DoCh=fgetc(fp)whiie(eh=一);if(ch=一()/将(CENTER>及居中的具体内容写入转换文件while(jzstartI!一0)fpute(jzstart1+,fp1)elseif(ch:一)1O北京印刷学院2001正while(jzend
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-湖南-湖南房管员二级(技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-湖南-湖南动物检疫员二级(技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-湖北-湖北经济岗位工三级(高级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-湖北-湖北机械热加工二级(技师)历年参考题库含答案解析
- 创业孵化基地建设资金申请报告:2025年创业环境优化策略
- 2025年事业单位工勤技能-海南-海南医技工五级(初级工)历年参考题库含答案解析
- 保险行业数字化理赔服务与保险欺诈防范研究报告
- 2025年K2教育STEM课程实施效果评估:学生问题解决能力提升策略研究报告
- 2025年休闲农业与乡村旅游乡村旅游产业投资机会分析报告
- 2025年虚拟现实教育产品在虚拟现实心理健康教育中的应用设计与效果评估报告
- 2025高级会计师考试试题及答案
- 2025-2030中国特高压电网建设规划与设备需求分析报告
- 2026版赢在微点顶层设计大一轮物理-专题提升二十 测量电阻的其他几种方法
- 民族文化宫2025年公开招聘17人笔试模拟试题含答案详解
- 光传输业务配置课件
- 2025年幼儿园教师专业考试试题及答案书
- 机关事业单位工人汽车驾驶员高级、技师国家题库练习题及答案
- 2025年辽宁省地质勘探矿业集团有限责任公司校园招聘笔试备考题库带答案详解
- 2025年青海辅警招聘考试题及答案
- 2025新外研版初中英语八年级上全册课文原文翻译
- 2025年高处作业特种作业操作证考试试卷:高处作业特种作业操作证考试备考攻略与技巧
评论
0/150
提交评论