And... quicker than expected I finished version 2 of my fullscreen layout (version 1). This time it is much better coded and highly configurable. Credits go to FofR for inspiration and Cyex for his beautiful cd cover.
Preview
Default view
Addinfo (can be switched off) at beginning and end of a song
Pause
Personal modded version (second codebox)
Stuff needed- Images. Extract to your foobar's image directory.
- Font used: Calibri. All font settings are at the top, so you easily can change it to another one if you don't have it
Trackinfo mod code (also included in the images' download)
// Global
// CONFIGURATION ///////////////////////////////////////////
// Album Art
// Use $if and $fileexists if more locations need to be checked
$puts(path.albumart,$replace(%path%,$if(%disc%,$directory(%path%,1)\)%filename_ext%,folder.jpg))
// Additional info
// addinfo.show: delete the '1' to disable additional info
// addinfo.time: determines how long addinfo is shown
$puts(addinfo.show,1)
$puts(addinfo.time,30)
// Positions
// pos.horizon: y-position of the grey horizon gradient
// pos.shadow: increase to see more reflection of the cd-cover
// pos.artx: if changed, further changes will be necessary for text positioning
// pos.arty: change position of album art relative to horizon line
$puts(pos.horizon,$muldiv(%_height%,4,7))
$puts(pos.shadow,120)
$puts(pos.artx,$sub($div(%_width%,2),278))
$puts(pos.arty,$sub($get(pos.horizon),400))
// Fonts
// font.a, font.b: used by addinfo for a) filling text, b) values
$puts(font.track,$font(Calibri,32,,255-255-255))
$puts(font.artist,$font(Calibri,24,,255-255-255))
$puts(font.a,$font(Calibri,16,,150-150-150))
$puts(font.b,$font(Calibri,16,,255-255-255))
// Progress bar
$puts(bar.height,5)
$puts(bar.color,255-255-255)
// END OF CONFIG ///////////////////////////////////////////
// Background
$drawrect(,,,,brushcolor-0-0-0 pencolor-null)
$imageabs(,$get(pos.horizon),/images/htpc2/horizon.png,)
// PerTrack
// Album Art
$imageabs2(556,516,0,0,556,$add(29,$get(pos.shadow)),$get(pos.artx),$add(460,$get(pos.arty)),/images/htpc2/case.png,ROTATEFLIP-6)
$imageabs2(454,454,0,0,454,$add(-2,$get(pos.shadow)),$add(71,$get(pos.artx)),$add(460,31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT ROTATEFLIP-6)
$imageabs($get(pos.artx),$add($get(pos.shadow),299,$get(pos.arty)),/images/htpc2/shadow.png,)
$imageabs($get(pos.artx),$get(pos.arty),/images/htpc2/case.png,)
$imageabs2(454,454,0,0,454,454,$add(71,$get(pos.artx)),$add(31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT)
$imageabs($add(71,$get(pos.artx)),$add(31,$get(pos.arty)),/images/htpc2/gloss.png,)
// PerSecond
// Pause Overlay
$if(%ispaused%,
$drawrect($add(71,$get(pos.artx)),$add(31,$get(pos.arty)),454,454,pencolor-0-0-0 alpha-150)
$alignabs($add(71,$get(pos.artx)),$add(31,$get(pos.arty)),454,454,center,middle)$font(Webdings,72,,255-255-255)';'
$drawrect($add(71,$get(pos.artx)),$add(460,31,$get(pos.arty)),454,$add(-2,$get(pos.shadow)),pencolor-0-0-0 alpha-150)
)
// Progress Bar
$ifgreater($muldiv(%playback_time_seconds%,%_width%,%length_seconds%),0,
$drawrect(0,$sub(%_height%,$mul($get(bar.height),3)),$muldiv(%playback_time_seconds%,%_width%,%length_seconds%),$get(bar.height),pencolor-null brushcolor-$get(bar.color))
,)
// Trackinfo
$if($and($or($greater($get(addinfo.time),%playback_time_seconds%),$greater($get(addinfo.time),%playback_time_remaining_seconds%)),$get(addinfo.show)),
// Detailed
$alignabs(80,$add($get(pos.horizon),$get(pos.shadow)),$sub(%_width%,160),$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.track)$if2(%title%,%filename%)$char(10)
$get(font.artist)[%artist%]
$char(10)$font(Arial,10,,0-0-0) $char(10)
$if(%last_played%,$get(font.a)Bisher $get(font.b)%play_counter%$get(font.a)mal gehört', 'zuletzt am $get(font.b)$substr(%last_played%,9,10). $select($substr(%last_played%,6,7),Januar,Februar,März,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember) $substr(%last_played%,1,4)$get(font.a).$char(10))
$if(%playback_time_seconds%,$get(font.a)Erschienen $if(%date%,im Jahr $get(font.b)%date%$get(font.a) )$if(%publisher%,bei $get(font.b)%publisher%$get(font.a) )$if(%album%,auf dem Album $get(font.b)%album%$get(font.a)).)
,
// Default
$alignabs($get(pos.artx),$add($get(pos.horizon),$get(pos.shadow)),556,$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.track)$if2(%title%,%filename%)$char(10)
$get(font.artist)[%artist%]
)
Personal modded version (displays rating and mood with colored bars, progress bar changes color on shuffle mode)
// Global
// CONFIGURATION ///////////////////////////////////////////
// Album Art
// Use $if and $fileexists if more locations need to be checked
$puts(path.albumart,
$if($fileexists($replace(%path%,%filename_ext%,%filename%.jpg)),$replace(%path%,%filename_ext%,%filename%.jpg),
$replace(%path%,$if(%disc%,$directory(%path%,1)\)%filename_ext%,folder.jpg)
)
)
// Additional info
// addinfo.show: delete the '1' to disable additional info
// addinfo.time: determines how long addinfo is shown
$puts(addinfo.show,1)
$puts(addinfo.time,30)
// Positions
// pos.horizon: y-position of the grey horizon gradient
// pos.shadow: increase to see more reflection of the cd-cover
// pos.artx: if changed, further changes will be necessary for text positioning
// pos.arty: change position of album art relative to horizon line
$puts(pos.horizon,$muldiv(%_height%,4,7))
$puts(pos.shadow,120)
$puts(pos.artx,$sub($div(%_width%,2),278))
$puts(pos.arty,$sub($get(pos.horizon),400))
// Fonts
// font.a, font.b: used by addinfo for a) filling text, b) values
$puts(font.track,$font(Calibri,32,,255-255-255))
$puts(font.artist,$font(Calibri,24,,255-255-255))
$puts(font.a,$font(Calibri,16,,150-150-150))
$puts(font.b,$font(Calibri,16,,255-255-255))
// Progress bar
$puts(bar.height,5)
$puts(bar.width,32)
$puts(bar.progresscolor,$if($strstr(%cwb_playback_order%,Shuffle),128-0-255,0-128-255))
$puts(bar.ratingcolor,255-128-0)
$puts(bar.moodcolor,0-255-0)
// END OF CONFIG ///////////////////////////////////////////
// Background
$drawrect(,,,,brushcolor-0-0-0 pencolor-null)
$imageabs2(%_width%,49,0,0,%_width%,49,0,$get(pos.horizon),/images/htpc2/horizon.png,NOKEEPASPECT)
// PerTrack
// Album Art
$imageabs2(556,516,0,0,556,$add(29,$get(pos.shadow)),$get(pos.artx),$add(460,$get(pos.arty)),/images/htpc2/case.png,ROTATEFLIP-6)
$imageabs2(454,454,0,0,454,$add(-2,$get(pos.shadow)),$add(71,$get(pos.artx)),$add(460,31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT ROTATEFLIP-6)
$imageabs($get(pos.artx),$add($get(pos.shadow),299,$get(pos.arty)),/images/htpc2/shadow.png,)
$imageabs($get(pos.artx),$get(pos.arty),/images/htpc2/case.png,)
$imageabs2(454,454,0,0,454,454,$add(71,$get(pos.artx)),$add(31,$get(pos.arty)),$get(path.albumart),NOKEEPASPECT)
$imageabs($add(71,$get(pos.artx)),$add(31,$get(pos.arty)),/images/htpc2/gloss.png,)
// PerSecond
// Pause Overlay
$if(%ispaused%,
$drawrect($add(71,$get(pos.artx)),$add(31,$get(pos.arty)),454,454,pencolor-0-0-0 alpha-150)
$alignabs($add(71,$get(pos.artx)),$add(31,$get(pos.arty)),454,454,center,middle)$font(Webdings,72,,255-255-255)';'
$drawrect($add(71,$get(pos.artx)),$add(460,31,$get(pos.arty)),454,$add(-2,$get(pos.shadow)),pencolor-0-0-0 alpha-150)
)
// Bars
$ifgreater($muldiv(%playback_time_seconds%,%_width%,%length_seconds%),0,$drawrect(0,$sub(%_height%,$mul($get(bar.height),3)),$muldiv(%playback_time_seconds%,%_width%,%length_seconds%),$get(bar.height),pencolor-null brushcolor-$get(bar.progresscolor)),)
$ifgreater(%rating%,0,
$drawrect(0,$sub(%_height%,$mul($get(bar.height),6)),$mul(%rating%,$get(bar.width)),$get(bar.height),pencolor-null brushcolor-$get(bar.ratingcolor))
$alignabs($add(5,$mul(%rating%,$get(bar.width))),$sub(%_height%,$mul($get(bar.height),5),$div($get(bar.height),2),3,32),64,64,left,middle)$get(font.b)%rating%
,)
$ifgreater(%mood%,0,
$drawrect($sub(%_width%,$mul(%mood%,$get(bar.width))),$sub(%_height%,$mul($get(bar.height),6)),$mul(%mood%,$get(bar.width)),$get(bar.height),pencolor-null brushcolor-$get(bar.moodcolor))
$alignabs($sub(%_width%,$mul(%mood%,$get(bar.width)),64,5),$sub(%_height%,$mul($get(bar.height),5),$div($get(bar.height),2),3,32),64,64,right,middle)$get(font.b)%mood%
,)
// Trackinfo
$if($and($or($greater($get(addinfo.time),%playback_time_seconds%),$greater($get(addinfo.time),%playback_time_remaining_seconds%)),$get(addinfo.show)),
// Detailed
$alignabs(80,$add($get(pos.horizon),$get(pos.shadow)),$sub(%_width%,160),$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.track)$if2(%title%,[%filename%])$char(10)
$get(font.artist)[%artist%]
$char(10)$font(Arial,10,,0-0-0) $char(10)
$if(%last_played%,$get(font.a)Bisher $get(font.b)%play_counter%$get(font.a)mal gehört', 'zuletzt am $get(font.b)$substr(%last_played%,9,10). $select($substr(%last_played%,6,7),Januar,Februar,März,April,Mai,Juni,Juli,August,September,Oktober,November,Dezember) $substr(%last_played%,1,4)$get(font.a)., )$char(10)
$if(%playback_time_seconds%,$get(font.a)Erschienen $if(%date%,im Jahr $get(font.b)%date%$get(font.a) )$if(%publisher%,bei $get(font.b)%publisher%$get(font.a) )$if(%album%,auf dem Album $get(font.b)%album%$get(font.a))., )$char(10)
,
// Default
$alignabs(80,$add($get(pos.horizon),$get(pos.shadow)),$sub(%_width%,160),$sub(%_height%,$get(pos.horizon),$get(pos.shadow),64),center,bottom)
$get(font.track)$if2(%title%,%filename%)$char(10)
$get(font.artist)[%artist%]
$char(10)$font(Arial,10,,0-0-0) $char(10)
$get(font.a) $char(10) $char(10)
)
Edit: Bugfixed pause overlay. Now mirrored album art image gets darker, too.
Edit2: Added personal modded version
Edit3: Added screenshot of personal modded version