前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在OpenOffice.org和微软Office之间共享文档

在OpenOffice.org和微软Office之间共享文档

作者头像
张善友
发布2018-01-29 17:18:55
2.6K0
发布2018-01-29 17:18:55
举报
文章被收录于专栏:张善友的专栏张善友的专栏

原文:Sharing files between OpenOffice.org and Microsoft Office。翻译可能也比较随意。 本文版权请向原文网站及原作者咨询。仅在已经获取原文使用权的情况下,以下文字可自由使用。本翻译未获原网站或原作者授权。 要用OpenOffice.org,不可避免的问题之一就是如何同MS Office共享文档。有些人可不想这么做,他们会建设使用HTML/PDF/RTF来共享,但这仍然不是长久之计,特别是你的老板用MS Office的时候。其实这件事不难,只要搞明白什么能共享,什么不能,两边都不会再感到头痛。 在OpenOffice.org中,用File > Wizards > Document Converter就可以把一个目录下的所有微软文档都转换成OpenOffice文档,如果你只在乎内容,而忽略一些小的格式上的不便的话,这个小工具就足够了。 在OpenOffice.org 2.0中,把一个文件输出为MS Office文档已经非常简单。但总还有一些MS的特性不被OOo支持或不能完全支持,这些不能完美支持的特性在输出时就会简单抛弃掉。所以,要完美共享文档的前提就是搞明白哪些特性能被OOo完美支持。 共享的准备 第一步是要确定一个输出过滤器,OOo2.0支持Word 6.0, 97/2000/XP以及2003xml几种,这里,请坚持选用97/2000/XP这个,因为它是目前毛病最少的过滤器,虽然不完美也不是最新格式。(OOo对MS格式的理解是通过猜测实验或许反向工程的手段进行的,不可能是完美的。译注) 第2步,如果格式很重要,请确认在OOo里所用的字体在MS Office里面也能使用。否则,MS会用相同字号的Times Roman字体来替换所有找不着的字体,这样格式就全毁了。在从Linux共享到Windows的时候,这个问题可能会比较严重,但不论什么平台,最好都确认一下。 如果你坚持只用标准字体,即Times Roman 或 Helvetica(中文应该坚持用宋体-Simsun或用黑体作为强调,不要用粗体,因为Linux平台对中文粗体的支持还有点麻烦。在正规出版物上中文也没有粗体的用法。)如果在所有机器上都安装了OOo,还可以使用Bitstream Vera字体,这是一个TTF的开源字体,但它的效果可能会比较柔和一些。如果你对美术效果比较在意,解决方法是在所有机器上装上所有字体(请先检查许可协议),或者用PDF来共享文件。 如果你用了非标准字体,请记住名字一样绝不意味着字体真的效果一样,比如有许多字体名字叫Garamond,但它们中间只有很少一些是相同的。对中文而言,微软字体、中易字体、方正字体、华文字体等相同名字之间也都有不小的差别。更麻烦的是,这些字体对Linux而言都有麻烦,简单地用宋体或黑体或仿宋或楷应该是推荐的。 下面对OOo自己进行设置。首先,选中所有在Tools > Options > Load/Save > Microsoft Office下面的选项,这可以提升OOo对OLE的支持--仅在支持OLE对象的系统上有效。其次,选中所有在Load/Save > VBA Properties中的选项,这样就可以在OOo另存时保存文档中的VB脚本(OOo不会执行这些脚本),如果不选中,则这些VB脚本就会被扔掉。 事先注意这些事可以极大地减轻共享文档的痛苦。但如果想在共享中完美地保留格式,则还需要一些手段。而如果你在设定格式时使用样式,而不是手工设定字符和段落,则这个手段会变得很简单。样式可以保存在一个模板文件中,因此你只需要设定一次即可。最重要的是,字符和段落的样式可以完美地从OOo Writer迁移到MS Word,这样就容易多了。 在开始共享文档之前,打开一个空白的Writer窗口,选中Tools > Options > OpenOffice.org Writer > Compatibility中的选项。其中有一些是为了兼容StarOffice--OOo的商业版本,但其中有半数都是为了兼容MS Word。其中有些设置,是为了让OOo像MS Word那样增加行距和对象边距的:   在段落和表格之间添加空白(当前文档)   不在行间增加额外间距   在表格单元的底部增加段落和表格间距   定位对象时考虑折行 如果是在导入MS Word文档,应该选中“在页顶部(当前文档)增加段落和表格间距”。如果所有的电脑都使用同一型号的打印机或PS打印机,则不论导入还是导出,都应该选中“在格式化时使用打印机单位”。这一选项提供了一个独立于软件的通用标准。(注:这些选项相当有用,以前打开一个有表格的Word文档时,经常出现格式超高的情况,这样设置即可消除。) 在设置时,可以点击Use as Default(设为缺省值)来把你的选择设为缺省值。也有些设置只针对当前文档,这可以通过保存为模板来保留:File > Template > Save。 在Writer和Word之间共享文档 有了以上的设置,共享文档应该问题就比较少了。可能的困难包括插入对象和页面级别的格式化。 字符和段落格式,不论手工设置还是使用样式,通常迁移是简单的。如果所用的字体都有,则字体、字号、效果以及定位都是没有问题的;字符旋转和字体宽度的变化亦无迁移问题。基本的段落格式也是同样,比如行间距和Tab(制表符)。OOo使用的列表格式是MS Office不支持的,但同本个列表样式相联系的段落可以在Word中也使用相同类型的列表。段落格式中不被MS Word支持的特性包括自定义连字符,分页,两端对齐的段落的最后一行,这些元素会因为Word的缺省设置而被抛弃。所以结果就是分页和断行会有些微的不同--多数也不过在行数上多了一行。 在OOo的早期版本中,有序列表(用数字做前缀的)和无序列表(用各种符号做前缀)在转换中是个问题,主要是因为它和Word在无序列表中用不同的字符来做前缀。但在2.0中,这个问题基本没有。使用特殊字符做前缀仍旧会有问题,那是因为OOo用了Unicode,而Word仍旧使用Ansi字符,除此之外,高级的如前缀(数字或字符)前后的文字都可以正确的转换。关于列表最大的问题在于Tools > Outline Numbering的使用,它会让存为MS Word格式不能成功。 多数域的使用也没有问题,包括页码,交叉引用和目录。实际上,即便是自定义的目录,比如页码在前,都可以成功地在Word中打开。而另外一些域,比如要依赖于文档属性的字数统计,会被转成普通文本,这在两个软件中来回转换时必然要出问题。还有些和条件文本有关的域在Word中完全不工作,如隐藏文本,隐藏段落和输入列表。隐藏文本在Word中直接消失,隐藏段落会显示出来,而输入列表会固定在当前的选择上。 插入对象的情况比较复杂,许多普通的对象可以正常使用。超链接可以,除非它带着个帧,同样的还有备注和修订信息。 图片的设置,包括尺寸、锚定和对齐都没有问题,但如果在Writer中设定了Align as Character会比较麻烦,这种情况下Word会不显示这个图片。复杂的表格和边框设置一般没有问题,但嵌套表格在Word中不能工作。用绘图工具绘出的图形没有问题,但图形编号以及复杂图表也不行。脚注一般没有问题,但一般会有页码重排的麻烦,所以最后还是在文档最后做尾注。 也有不少对象是不能转换的,包括动画和嵌入的OOo文档。在Linux上用OOo时,来自Word文件的OLE对象也不能转换,因为操作系统根本不支持它们,除非是在Insert > Object菜单下列出的那些。 另外一些不能成功转换的东西多是和页面布局有关的,因为MS Word根本没有考虑印刷问题。页面样式中的页边距可以保留,但页面样式自己会丢失。同样的还有除去第一个之外的所有页眉和页脚,以及为它们设定的边框和阴影。同样,文本框可以转换,但它们的设置会丢掉。Section不行,甚至更麻烦的它们还会被当作分页符,此外还有密码保护和隐藏设置。而文本框或Section中分成多栏的,经常会只显示前面几行。 对于主控文档这种概念,既不能导入也不能导出。 在Calc和Excel之间共享文档 这两个速算表程序之间转换问题主要是函数,基本的函数,比如SUM, AVERAGE, 和 MAX 通常没有问题。但另复杂的函数可就未必,使用之前请查阅在线帮助。虽然Calc是按同Excel兼容的目标设计的,但它们都有专用的函数。其中除了缺乏某函数之外,还有Calc会有两个相似的函数,第一个是正常使用的,第二个是专为兼容Excel设计的。WEEKNUM可以根据ISO 6801来计算给定数据的星期数,WEEKNUM_ADD却是专门兼容Excel的相同功能的函数。 如同Writer一样,对象的情况也很复杂。特殊的图表是不行的,页面和单元格样式也不行,尽管使用样式的单元格的格式可以保存。 在Impress和PowerPoint之间共享文档 在OOo2.0中,PPT的过滤器比以前要可靠得多。比如,不能转换主幻灯片中的背景图片的毛病已经没有了。幻灯片的导出也相当可靠,虽然还需要一些实验。但OOo Impress生成的GIF动画在PowerPoint中仍旧不能打开。另外,复杂的图表也不可靠。所以推荐用Draw来生成图表,再转成通用的图片格式再插入。 从PowerPoint中导入时,要注意到Impress不会理会多数声音的设置。尽管Impress在2.0中已经增加了对更多种声音格式的支持,但它仍然缺乏记录声音和对话的工具,也不能在幻灯中播放CD音轨。Impress中的声音仅限于单张幻灯片中。另外,Impress也不支持PowerPoint的打包功能,也不能把所有图片声音和字体都保存到CDROM中。 共享Draw文件 Draw自己的格式,odg/sxd,都不被MS Office支持。但Draw可以输出多种常见的图形格式,包括png/gif/jpeg在内。这些格式都可以被MS Office插入。所以共享方案只能是保留原始文件,但输出成图片。 结论 这还不是一个完整的能否工作的特性列表,事实上也还没有这个列表。在线帮助已经提示了可能存在问题的地方,但现在的MS Office并未把OOo 2.0当回事,甚至还表现出一些不必要的偏执。 最后,如果真有什么在两套Office软件之间共享文档的秘诀的话,那就是:保持简单。格式越简单,就越少问题。对象,页面设置以及超出文字和段落以外的样式都可能出现问题。 还有必须记住的是,除非是最简单的情况,否则情况不大可能是完美的。在办公软件之间共享文档总是很难的。对商业公司来说,设计输入输出过滤器是非常昂贵的,对自由软件开发者来说又完全没有吸引力。更由于MS使用专有格式,而且还经常改来改去,开发者只能用反向工程的手段,这样就更难以进步了。 在这种情况下,共享文档时有些问题再正常不过,倒是如果你能完美共享的话还真是令人惊奇。 http://blog.cathayan.org/item/1038

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2005-11-06 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档