J

keynote.app でファイルサイズが異常に大きいときは,テーマを疑え

背景

keynote.appはとても便利なソフトであるが,異常にファイルサイズが大きくなることがある.スライド数が2枚で内容は数百KBなのに,6MBなどといったありえない大きさになったり.こうなると,Mailで添付する際などで困る.この大きさの原因は何か?それは対処することができるのか?

目的

keynote.appのファイルサイズを小さくする.

方法

ファイルサイズを大きくしている要因として疑う対象は次のとおり.

  1. 眼に見えていないゴミのようなオブジェクト
  2. スライドに記載している(画像数式などの)データ
  3. スライドで使用しているテーマ

実験

  1. 「眼に見えていないゴミのようなオブジェクト」の排除
    スライド上で「すべて選択(⌘A)」を行い,チェックする.ゴミがあれば綺麗にしよう.
  2. 「スライドに記載している(画像や数式などの)データ」のチェック
    keynoteファイルの上で副ボタン-「パッケージの内容を表示」を選択する.すると,keynoteファイルで使用しているデータのサイズを見ることができる.画像や数式などで,特に大きいファイルに注目.筆者の環境ではもともとpng形式の画像(100KB前後)がtiff形式(3MBぐらい)に変換されていたりした.おそらく元のpng画像に透明度などの情報があったからじゃないかなーと疑っているが原因は不明.ただ,簡単な解決方法を発見した.
    1). 画像を一度PowerPointに貼りつけて,
    2). それをコピーしてkeynoteに貼り付ける
    という方法.PowerPointからコピーした画像はkeynote上ではpdfとして扱われており,ファイルサイズを極端に小さくすることができる.PowerPointなんて持ってないよ!とかいうヘビーなマカーは別な方法を考えてください.というかむしろ教えてください.
  3. 「スライドで使用しているテーマ」をチェック
    これはkeynoteのマスタースライドをいじったりするとたまに起こる現象で,テーマに関するファイルがkeynoteファイルの中で大きなサイズになってしまうというもの.先に述べた「パッケージの内容を表示」によってkeynoteファイル内を見ると,「theme-files」というフォルダが作成されていることがある.このフォルダにはテーマに関する画像などが入っており,単純に消してしまうとkeynoteファイルを開くたびにエラーを吐き出すようになるから注意.この「theme-files」というフォルダは既存の(はじめから用意されている)テーマで作成したkeynoteファイルの中には存在しないようだ.既存のテーマのマスタースライドを移動させたり,テキストボックスなどのオブジェクトをマスタースライド内に追加したりすると,theme-filesフォルダが作成されてしまったりする.特に,新たに作成したテーマを「テーマファイルとして保存」すると,そのオリジナルテーマファイルにはもれなくtheme-filesフォルダがついてくるようである.原因はよく分からないが,そこに含まれるデータを見るかぎりでは,オブジェクトを「イメージで塗りつぶす」ための画像ファイルであるようだ.解決方法としては,テーマを既存のものにし,作りなおす方法しか分からない.
    (theme-filesフォルダを排除する方法については現在調査中)

結論

keynote.appでファイルサイズが大きくなったときは,オブジェクトや画像ファイルなどのデータを工夫することで大幅なサイズダウンが期待できる.また,テーマについては極力,既存のテーマを利用するか,独自にテーマを工夫したい場合は,テーマファイルとして保存したオリジナルテーマを利用するのではなく,既存のテーマで作り始めてから,後で調整する方法をとると良い.