JavaScript API for Office ライブラリ v1.1とOffice 2013 Service Pack 1が公開され、ついにPowerPointでもコンテンツアプリが使えるようになりました。
・アプリ本体(afo_sample.html)
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="robots" content="noindex,nofollow">
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
<title>動作確認用Office用アプリ</title>
<script src="https://ajax.aspnetcdn.com/ajax/jquery/jquery-1.11.0.min.js"></script>
<script src="https://appsforoffice.microsoft.com/lib/1.1/hosted/office.js"></script>
<script>
Office.initialize = function(reason){}
$(function(){
$("#btnGet").click(function(){
Office.context.document.getSelectedDataAsync(Office.CoercionType.Text, function(asyncResult){
if(asyncResult.status !== Office.AsyncResultStatus.Failed){
$("#result").val(asyncResult.value);
}
});
});
$("#btnSet").click(function(){
Office.context.document.setSelectedDataAsync("Hello World.");
});
});
</script>
</head>
<body style="font-size:14px;">
<h4>■ 動作確認用Office用アプリ</h4>
<input id="btnGet" type="button" value="getSelectedDataAsync"><br>
<input id="btnSet" type="button" value="setSelectedDataAsync"><br>
<textarea id="result" rows="5"></textarea>
</body>
</html>
・マニフェストファイル
<?xml version="1.0" encoding="utf-8"?>
<OfficeApp xmlns="http://schemas.microsoft.com/office/appforoffice/1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ContentApp">
<Id>ece003e6-41b6-4621-9630-79deb18a86c9</Id>
<Version>1.0</Version>
<ProviderName>kinuasa</ProviderName>
<DefaultLocale>ja-jp</DefaultLocale>
<DisplayName DefaultValue="テスト用アプリ" />
<Description DefaultValue="テスト用アプリです。" />
<Hosts>
<Host Name="Workbook" />
<Host Name="Presentation" />
<Host Name="Database" />
</Hosts>
<DefaultSettings>
<SourceLocation DefaultValue="http://localhost/afo_sample.html" />
<RequestedWidth>320</RequestedWidth>
<RequestedHeight>360</RequestedHeight>
</DefaultSettings>
<Permissions>ReadWriteDocument</Permissions>
</OfficeApp>
PowerPointのコンテンツアプリは、下図のようにスライドごとに貼りつく感じで、
VBA上の扱いはShapeオブジェクト(TypeはmsoShapeTypeMixed)、ローカルのPowerPoint上だとInternet Explorer_Serverクラスになります。
実体がWebページであるOffice 用アプリをスライド上で扱えるということは、使いようによってはプレゼンテーションの幅が大きく広がることになるだろうと思います。
たとえば、これまではプレゼン中にWebページを表示させるのにいちいち画面を切り替えていたのが、アプリ上にWebページを表示することでその必要がなくなり、シームレスにインターネットから最新の情報を引っ張ってくることができるようになるわけです。
さらに、Webアプリの特性を活かしてWebRTCなどを使ったビデオチャットアプリを作れば、ニュースで中継地点に映像を切り替えるように、プレゼン中に外部に繋いで外部からプレゼンに参加してもらう、といったことも可能になるはずです。
個人的には、今回のアップデートでPowerPoint上でコンテンツアプリが扱えるようになったことは、非常に大きいものだと思っています。
このアップデートを機に、日頃からPowerPointを愛用しているプレゼンターに是非Office 用アプリのことを知っていただければと思います。





















この記事へのコメントはありません。