Answers:
注意:不适用于PowerPoint 2003,仅适用于新的pptx文件(自2007年起)
似乎支持相对路径,但是它们并不容易实现。例如,如果Powerpoint演示文稿位于MyFiles文件夹中,而MyMovie.avi位于MyFiles内的Media文件夹中。技巧是编辑Powerpoint文件中的xml文件:
在Windows 7上对我有效。
祝好运!
这就是Microsoft具有“打包”向导的原因-在PowerPoint上运行该向导将收集所有链接的视频,字体,声音文件等,并将其打包在可随身携带的CD或自解压文件中您可以带上需要去的地方。
您甚至可以自行决定将其嵌入查看器,因此您不必担心目标计算机是否具有支持您的演示文稿的应用程序。
这个想法是将PPT转换为Flash Video。
:)
我通过Google找到了这个线程,这是我的建议,它适用于Powerpoint2010。让我们使用Trespasser的示例:
因此,通过Powerpoint菜单插入MyMovie.avi,但不要选择插入,而是选择“与文件关联”(我不知道确切的英语翻译)。此选项在文件对话框中可用,请看此处:
现在,Powerpoint执行以下操作:
如果将演示文稿移动到另一个文件夹/计算机,则Powerpoint首先尝试使用绝对路径打开视频。如果您不删除/移动视频,则在计算机上可以使用。如果Powerpoint找不到视频,因为您已将其移动或演示文稿在另一台计算机上,则Powerpoint会尝试将其作为相对链接打开。
因此,使用Powerpoint 2010,只需将您的演示文稿和媒体文件夹复制到新的目标位置,即可从头开始工作。
我写了一个小的VB脚本,该脚本将从媒体文件中剥离绝对路径,并将其保留为相对路径。
Global fso As New FileSystemObject
Public Sub ConvertMediaToRelativePaths()
Dim i As Integer
Dim sld As Slide, shp As Shape
For Each sld In ActivePresentation.Slides
For Each shp In sld.Shapes
If shp.Type = msoMedia Then
Dim path As String, fname As String
path = shp.LinkFormat.SourceFullName
fname = fso.GetFileName(path)
shp.LinkFormat.SourceFullName = fname
i = i + 1
End If
Next
Next
If i > 0 Then
MsgBox "Converted " & CStr(i) & " Video Source Paths.", vbOK
Else
MsgBox "No Videos Found.", vbOK
End If
End Sub
这应该适用于2003年和更高版本的PowerPoint。解决方案Trespasser概述要容易得多。
注意,VBA需要引用"Microsoft Scripting Runtime (scrun.dll)"
才能使用FileSystemObject
该类。
解决这个问题有很多简便的方法。PowerPoint允许通过超链接启动程序。代替程序,选择您的视频:
有用 ;)