fix: replace webp by png

This commit is contained in:
ryan4yin
2023-05-06 12:26:29 +08:00
parent 07d13c7cc9
commit b50cca1ec6
13 changed files with 28 additions and 43 deletions

View File

@@ -9,8 +9,8 @@
# copy the scripts directory recursively
recursive = true;
};
home.file.".config/hypr/wallpapers/lockscreen.webp".source = ../wallpapers/lockscreen.webp;
home.file.".config/hypr/wallpapers/wallpaper.webp".source = ../wallpapers/wallpaper.webp;
home.file.".config/hypr/wallpapers/lockscreen.png".source = ../wallpapers/lockscreen.png;
home.file.".config/hypr/wallpapers/wallpaper.png".source = ../wallpapers/wallpaper.png;
# allow fontconfig to discover fonts and configurations installed through home.packages
fonts.fontconfig.enable = true;

View File

@@ -1,7 +1,7 @@
#!/usr/bin/env bash
# Background Image
IMAGE="$HOME/.config/hypr/wallpapers/lockscreen.webp"
IMAGE="$HOME/.config/hypr/wallpapers/lockscreen.png"
# Colors
bg='1e1e2e' bgl='313244' fg='d9e0ee'

View File

@@ -14,7 +14,7 @@ done
/usr/lib/xfce-polkit/xfce-polkit &
# Set wallpaper
swaybg --output '*' --mode fill --image ~/.config/hypr/wallpapers/wallpaper.webp &
swaybg --output '*' --mode fill --image ~/.config/hypr/wallpapers/wallpaper.png &
# Apply themes
~/.config/hypr/scripts/gtkthemes &

View File

@@ -346,7 +346,7 @@ exec --no-startup-id dex --autostart --environment i3
# set wallpaper
# exec --no-startup-id sleep 2 && nitrogen --restore
exec --no-startup-id sleep 1 && feh --bg-fill ~/.config/i3/wallpaper.webp
exec --no-startup-id sleep 1 && feh --bg-fill ~/.config/i3/wallpaper.png
# set powersavings for display:
exec --no-startup-id xset s 480 dpms 600 600 600

View File

@@ -7,7 +7,7 @@
# 直接从当前文件夹中读取配置文件作为配置内容
# wallpaper, binary file
home.file.".config/i3/wallpaper.webp".source = ../wallpapers/wallpaper.webp;
home.file.".config/i3/wallpaper.png".source = ../wallpapers/wallpaper.png;
home.file.".config/i3/config".source = ./config;
home.file.".config/i3/i3blocks.conf".source = ./i3blocks.conf;
home.file.".config/i3/keybindings".source = ./keybindings;

View File

@@ -0,0 +1,22 @@
# convert all images to png
def to_png [old_path: string, old_format: string] {
# 将后缀改为 .png 得到新图片的 path
let webp_path = ($old_path | split row $old_format | append ".png" | str join)
# 使用 ffmpeg 进行格式转换
ffmpeg -y -i $old_path $webp_path
# 删除旧图片
rm $old_path
}
def convert_format [old_format: string] {
# 递归找出所有大于 10kib 的图片
let old_paths = (ls $"**/*($old_format)" | where size > 10kb | each {|it| $it.name})
$old_paths | to md
# 1. 执行图片格式转换与压缩,同时删除原图片
$old_paths | each { |it| to_png $it $old_format }
}
convert_format ".webp"
# convert_format ".jpg"

View File

@@ -1,37 +0,0 @@
# convert all png/jpeg images to webp
def to_webp [old_path: string, old_format: string] {
# 将后缀改为 .webp 得到新图片的 path
let webp_path = ($old_path | split row $old_format | append ".webp" | str collect)
# 使用 ffmpeg 进行格式转换
ffmpeg -y -i $old_path -c:v libwebp $webp_path
# 删除旧图片
rm $old_path
}
def replace_with_webp [old_path: string, old_format: string] {
# 将后缀改为 .webp 得到新图片的 path
let webp_path = ($old_path | split row $old_format | append ".webp" | str collect)
# 图片的旧名称与新名称
let old_name = ($old_path | path basename)
let webp_name = ($webp_path | path basename)
# 批量将 .md 文件中的所有图片名称,改为对应的 webp 图片名称
# 注MacOS 需要首先安装好 gsedLinux 请将下面的 gsed 替换为 sed
let cmd = $"gsed -ri 's/($old_name)/($webp_name)/g' `find . -name "*.md"`"
echo $cmd
bash -c $cmd
}
def convert_format(old_format: string) {
# 递归找出所有大于 10kib 的图片
let old_paths = (ls $"**/*($old_format)" | where size > 10kb | each {|it| $it.name})
$old_paths | to md | save --raw ./old_paths.txt
# 1. 执行图片格式转换与压缩,同时删除原图片
$old_paths | each { |it| to_webp $it $old_format }
# 2. 执行 .md 文档中的图片名称替换
$old_paths | each { |it| replace_with_webp $it $old_format }
}
convert_format ".png"
convert_format ".jpg"

Binary file not shown.

After

Width:  |  Height:  |  Size: 254 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 765 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 373 KiB