WORD文档出啥问题了?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WORD文档出啥问题了?相关的知识,希望对你有一定的参考价值。
每次粘贴的时候都跳出一句“Only one Mathtype command can be executive at a time .Please try again later ”
1、MathType 6.0与office 2007兼容问题由于Office软件安装时默认是不安装公式编辑器的,在安装完MathType 6.0之后,需要将\MathType 6.0\Office Support\目录中的MathType Commands 6 For Word.dot复制到C:\Documents and Settings\当前用户名\Application Data\Microsoft\Word\STARTUP目录中,重新打开Office 2007 Word之后就可以在的“加载项”选项卡中看到Mathtype的快捷按钮了,此时“插入”菜单中的“公式”符号显示为亮色,表示可以使用。
但是此时也会出现一个问题,在使用Ctrl+V粘贴时会提示出错“Only One MathType command can be executed at a time. Please try again later.”,而只有在Word的“开始”菜单中选择“选择性粘贴”才可以将复制的内容粘贴进来。而且插入公式的功能只对word 2007格式的文件(后缀名为docx)有效,对之前版本的word文件(doc格式)仍然不能使用公式编辑器。
建议:不将MathType 6.0作为Word 2007的默认加载项,即删除C:\Documents and Settings\当前用户名\Application Data\Microsoft\Word\STARTUP目录中的MathType Commands 6 For Word.dot文件,而在需要插入公式的使用使用独立的MathType 6.0程序,然后将编辑好的公式粘贴到Word中。
2、MathType 6.0中MT Extra(TrueType)字体问题
在打开MathType 6.0时,有时会提示MathType需要安装一个较新版本的MT Extra(TrueType)字体,这是因为你的系统没有MT Extra(TrueType)字体,或此字体的版本太低,缺少某些符号。
解决方法:打开C:\WINDOWS\Fonts,若里面有MT Extra(TrueType)字体或其快捷方式,则将其删除,再把MathType安装目录下\MathType 6.0\Fonts\TrueType\目录里面的MTEXTRA.TTF字体文件复制粘贴到C:\WINDOWS\Fonts文件夹中(粘贴时会有安装字体提示),完成字体完装。
转载的 参考技术A 公式编辑器正在被执行,请稍后再操作。
建议保存一下后关闭再重新打开。
你能在 Java 中抛出啥?
【中文标题】你能在 Java 中抛出啥?【英文标题】:What can you throw in Java?你能在 Java 中抛出什么? 【发布时间】:2011-08-10 15:08:08 【问题描述】:传统观点认为您只能在 Java 中抛出扩展 Throwable
的对象,但是否可以禁用字节码验证器并让 Java 编译和运行抛出任意对象甚至基元的代码?
我查看了 JVM 的 athrow
,它会弹出操作数堆栈上的第一个 objref;但它会在运行时检查所述引用是否指向Throwable
?
【问题讨论】:
有趣的问题 - 但你为什么希望能够抛出不可投掷的东西? (难道只是为了开bug?) @RonK 主要是出于好奇;我想知道为什么 Java 强迫我们抛出比它们可能更大的占用空间的对象。注意我不打算在实际代码中使用它。 @RonK:有效的用例包括设计新的 java 方言或新的 JVM 语言。 【参考方案1】:[...] 禁用字节码验证器 [...]
字节码验证是 JVM 规范的一部分,因此如果您禁用此功能(或以其他方式篡改 JVM),您可以根据实现情况做任何我认为的事情(包括抛出原语等)。
引用自 JVM 规范:
objectref必须是引用类型并且必须引用作为 Throwable 类的实例或 Throwable 的子类的对象。
也就是说,您的问题可以解释为“如果 JVM 偏离规范,它是否可以做一些奇怪的事情,例如抛出原始对象”,答案当然是肯定的。
【讨论】:
【参考方案2】:这取决于您的 JVM 实现。根据 Java VM 规范,如果对象不是 Throwable
,则为未定义行为。
objectref必须是引用类型,并且必须引用作为 Throwable 类或 Throwable 子类的实例的对象。
在section 6.1, "The Meaning of 'Must'":
如果在运行时不满足指令描述中的某些约束(“必须”或“不得”),则 Java 虚拟机的行为未定义。
我使用Jasmin assembler 编写了一个测试程序,它相当于throw new Object()
。 Java HotSpot Server VM 抛出 VerifyError
:
# cat Athrow.j
.source Athrow.j
.class public Athrow
.super java/lang/Object
.method public <init>()V
aload_0
invokenonvirtual java/lang/Object/<init>()V
return
.end method
.method public static main([Ljava/lang/String;)V
.limit stack 2
new java/lang/Object
dup
invokenonvirtual java/lang/Object/<init>()V
athrow
return
.end method
# java -jar jasmin.jar Athrow.j
Generated: Athrow.class
# java Athrow
Exception in thread "main" java.lang.VerifyError: (class: Athrow, method: main signature: ([Ljava/lang/String;)V) Can only throw Throwable objects
禁用字节码验证器允许athrow
执行,当JVM 尝试打印异常的详细信息时,它似乎崩溃了。比较这两个程序,第一个抛出一个Exception
,第二个是上面的测试程序,它抛出一个Object
。注意它是如何在打印输出中间退出的:
# java -Xverify:none examples/Uncaught
Exception in thread "main" java.lang.Exception
at examples.Uncaught.main(Uncaught.j)
# java -Xverify:none Athrow
Exception in thread "main" #
当然,禁用字节码验证器是危险的。编写 VM 本身以假定已执行字节码验证,因此不必对指令操作数进行类型检查。注意:绕过字节码验证时调用的未定义行为很像 C 程序中的未定义行为;任何事情都有可能发生,包括从你鼻子里飞出来的恶魔。
【讨论】:
【参考方案3】:正如约翰的回答中提到的,您可以禁用验证(将类放在 bootclasspath 上也应该可以),加载并执行一个类,成功抛出非Throwable
类。
令人惊讶的是,它并不一定会导致崩溃!
只要不隐式或显式调用Throwable
方法,一切都会正常工作:
.source ThrowObject.j
.class public ThrowObject
.super java/lang/Object
.method public <init>()V
aload_0
invokenonvirtual java/lang/Object/<init>()V
return
.end method
.method public static main([Ljava/lang/String;)V
new java/lang/Object
dup
invokenonvirtual java/lang/Object/<init>()V
BeforeThrow:
athrow
AfterThrow:
return
CatchThrow:
getstatic java/lang/System/out Ljava/io/PrintStream;
ldc "Thrown and catched Object successfully!"
invokevirtual java/io/PrintStream.println(Ljava/lang/String;)V
return
.catch all from BeforeThrow to AfterThrow using CatchThrow
.end method
结果:
% java -Xverify:none ThrowObject
Thrown and catched Object successfully!
【讨论】:
以上是关于WORD文档出啥问题了?的主要内容,如果未能解决你的问题,请参考以下文章
话说office 2010 word文档和PPT是可以转化成PDF文档的,为啥我的word转化过来后乱码了?怎么破?谢谢~~