OpenOffice 之:死屍還魂

星期才說封印 OpenOffice,今天就已經忍不住要再開一次。為甚麼?死不心息。在寫上一篇 blog 時,其實想到一個方法,將 background 圖片硬塞進 template 裏面,但並未實證過;經我那些低級 luser-wannabe skillz 實戰一次:

結果係成功嘅!何守信配音

作為將來取笑自己用的笑料,完整方法記錄如下:

這裏有一些名稱在不同的地方都要使用,例如 template 檔案名稱、圖片名稱等等,而且每個人所用的名稱都有不同;這些部份全部會用顏色標示。

  1. 先製作一個空白的資料夾,然後進入資料夾。
  2. 將 template 解壓:
    unzip abcxyz.otp
  3. 將背景圖片放進 Pictures/ 資料夾:
    cp 0123456789.png Pictures/
  4. 然後用文字編輯器修改 styles.xml。沒錯,是文字編輯器。不過因為 styles.xml 的內容完全不換行,基本上無法編輯,所以先用 tidy 整理一下:
    tidy -m -i -raw -xml styles.xml

    怕有甚麼問題的話,最好先備份。

  5. 文字編輯器出動。我用的是 vim。
    LC_CTYPE=C vim styles.xml

    (因為有時 xml 會含有不正確編碼的內容,尤其是從 Microsoft Office 轉換至 OpenOffice 那些,所以用 LC_CTYPE=C 強制保留。)要改的地方有三處:

    1. 在第 26 行左右,會有一行:<office:styles>;在那一行下面加 4 行,指定 template 有甚麼背景圖片:
          <draw:fill-image draw:name="Background1"
          xlink:href="Pictures/0123456789.png"
          xlink:type="simple" xlink:show="embed"
          xlink:actuate="onLoad" />
    2. 尋找類似如下的 4 行內容:
          <style:style style:name="abcxyz-background"
          style:family="presentation">
            <style:graphic-properties draw:stroke="none"
            draw:fill="bitmap" style:repeat="stretch" />
      

      這裏最重要的關鍵字是 template 檔案名稱加上 “-background”,但要小心,有幾個地方都有同一個關鍵字,但要改的地方只有一處。找到後,將上面 4 行的最後一行換成:

            draw:fill="bitmap" draw:fill-image-name="Background1"
            draw:fill-image-width="100%" draw:fill-image-height="100%" />
      
    3. 尋找含有 style:name="dp1" 的內容,應該只有一處,類似如下:
          <style:style style:name="dp1" style:family="drawing-page">
            <style:drawing-page-properties draw:background-size="border"
            draw:fill="bitmap" style:repeat="stretch" />
          </style:style>
      

      將那 4 行的第 3 行換成:

            draw:fill="bitmap" draw:fill-image-name="Background1"
            draw:fill-image-width="100%" draw:fill-image-height="100%" />
      

      (我無法理解為甚麼指定一個 background 要改兩處!)

  6. 改好 styles.xml 後,再將所有檔案打包:
    zip -r ../somethingelse.otp ./

嘿,OpenOffice 真的使用了我指定的背景圖片耶!我真是要跪地叩謝 OpenOffice,竟然還允許我完成工作,太感謝了。終於死得眼閉。

開始為 Wily 用那麼多時間四出奔走聯絡感到惋惜。

Tagged as , , , • Categorized as Software

Leave a Reply

E-mail is not disclosed nor shared. Required fields are marked *