標籤

4GL (1) 人才發展 (10) 人物 (3) 太陽能 (4) 心理 (3) 心靈 (10) 文學 (31) 生活常識 (14) 光學 (1) 名句 (10) 即時通訊軟體 (2) 奇狐 (2) 音樂 (2) 產業 (5) 郭語錄 (3) 無聊 (3) 統計 (4) 新聞 (1) 經濟學 (1) 經營管理 (42) 解析度 (1) 遊戲 (5) 電學 (1) 網管 (10) 廣告 (1) 數學 (1) 機率 (1) 雜趣 (1) 證券 (4) 證券期貨 (1) ABAP (15) AD (1) agentflow (4) AJAX (1) Android (1) AnyChart (1) Apache (14) BASIS (4) BDL (1) C# (1) Church (1) CIE (1) CO (38) Converter (1) cron (1) CSS (23) DMS (1) DVD (1) Eclipse (1) English (1) excel (5) Exchange (4) Failover (1) FI (57) File Transfer (1) Firefox (2) FM (2) fourjs (1) gladiatus (1) google (1) Google Maps API (2) grep (1) Grub (1) HR (2) html (23) HTS (8) IE (1) IE 8 (1) IIS (1) IMAP (3) Internet Explorer (1) java (3) JavaScript (22) jQuery (6) JSON (1) K3b (1) LED (3) Linux (112) Linux Mint (4) Load Balance (1) Microsoft (2) MIS (2) MM (51) MSSQL (1) MySQL (27) Network (1) NFS (1) Office (1) Oracle (125) Outlook (3) PDF (6) Perl (59) PHP (33) PL/SQL (1) PL/SQL Developer (1) PM (3) Postfix (2) postfwd (1) PostgreSQL (1) PP (50) python (1) QM (1) Red Hat (4) Reporting Service (28) ruby (11) SAP (234) scp (1) SD (16) sed (1) Selenium-WebDriver (5) shell (5) SQL (4) SQL server (8) SQuirreL SQL Client (1) SSH (2) SWOT (3) Symantec (2) T-SQL (7) Tera Term (2) tip (1) tiptop (22) Tomcat (6) Trouble Shooting (1) Tuning (5) Ubuntu (33) ufw (1) utf-8 (1) VIM (11) Virtual Machine (2) vnc (3) Web Service (2) wget (1) Windows (19) Windows (1) WM (6) youtube (1) yum (2)

2011年8月12日 星期五

[转] ubuntu Linux/Mint 下实现动态桌面壁纸 原理

不知大家在使用ubuntu时有没有注意到,ubuntu下是可以实现多张壁纸动态切换的,好像Win7下也有类似的功能(曾经使用win7一段时间)。我也是最近才注意到这点,下面是在ubuntu10.04下实验的,之前版本的应该也可以。 
实现原理是使用一个xml文件来记录可供切换选择的壁纸。下面展示的是10.04中自带的一个样例。 
首先说明一下,ubuntu默认的壁纸存放在/usr/share/backgrounds/目录下的,在该目录中还有一个cosmos(意思是“宇宙”)目录,cosmos里面的xml文件就是实现动态桌面壁纸切换功能的了。 
 
jarson@jarson-laptop:/usr/share/backgrounds/cosmos$ ls 
background-1.xml      cloud.jpg  earth-horizon.jpg   helix-nebula.jpg  sombrero.jpg 
blue-marble-west.jpg  comet.jpg  galaxy-ngc3370.jpg  jupiter.jpg       whirlpool.jpg 
jarson@jarson-laptop:/usr/share/backgrounds/cosmos$ cat background-1.xml  
<background> 
  <starttime>   starttime标签设置动画(幻灯片)开始的时间,可根据自己制作的时间设定,这个应该不影响实际要实现的功能 
    <year>2009</year> 
    <month>08</month> 
    <day>04</day> 
    <hour>00</hour> 
    <minute>00</minute> 
    <second>00</second> 
  </starttime> 
<!-- This animation will start at midnight. -->    "animation"动画的意思 
  <static>  "static"静态的意思 
    <duration>1800.0</duration>  duration标签设置持续的时间,以秒为单位。 
    <file>/usr/share/backgrounds/cosmos/cloud.jpg</file>  file标签指定壁纸存放的路径 
  </static> 
  <transition> "transition"切换的意思 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/cloud.jpg</from> from ... to从壁纸A切换到壁纸B。 
    <to>/usr/share/backgrounds/cosmos/comet.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/comet.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/comet.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/earth-horizon.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/earth-horizon.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/earth-horizon.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/blue-marble-west.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/blue-marble-west.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/blue-marble-west.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/galaxy-ngc3370.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/galaxy-ngc3370.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/galaxy-ngc3370.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/helix-nebula.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/helix-nebula.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/helix-nebula.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/jupiter.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/jupiter.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/jupiter.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/sombrero.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/sombrero.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/sombrero.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/whirlpool.jpg</to> 
  </transition> 
  <static> 
    <duration>1800.0</duration> 
    <file>/usr/share/backgrounds/cosmos/whirlpool.jpg</file> 
  </static> 
  <transition> 
    <duration>5.0</duration> 
    <from>/usr/share/backgrounds/cosmos/whirlpool.jpg</from> 
    <to>/usr/share/backgrounds/cosmos/cloud.jpg</to> 
  </transition> 
</background> 
注意from ... to要构成一个循环。 
设置动态桌面壁纸有两个好的功能:1、满足自己设置多张壁纸的需要;2、时间提醒,例如我这里设置半小时切换一次,这样每次桌面变换时,我就会知道半个小时又过去了。。。 
 
设置好后的应用方法:右键桌面->更改桌面背景->添加,在弹出对话框的右下方那里选择“全部文件”(默认是“图像”),然后找到你定义好的动态桌面壁纸的xml文件,双击添加就可以了。

沒有留言:

張貼留言