This commit is contained in:
2025-11-01 17:19:40 +08:00
parent aa7f4fb686
commit bd0fc6a284
4 changed files with 179 additions and 4 deletions

50
check-fonts.sh Executable file
View File

@@ -0,0 +1,50 @@
#!/bin/bash
echo "=== 字体配置检查脚本 ==="
echo
CONTAINER_NAME="digital-archive-app"
# 检查容器是否运行
if ! docker ps | grep -q "$CONTAINER_NAME"; then
echo "❌ 容器 $CONTAINER_NAME 未运行"
echo "请先启动容器: ./archive-manager.sh start"
exit 1
fi
echo "✓ 找到运行中的容器: $CONTAINER_NAME"
echo
echo "🔍 检查字体配置:"
# 检查字体目录
echo "1. 字体目录:"
docker exec "$CONTAINER_NAME" ls -la /usr/share/fonts/ 2>/dev/null || echo " 字体目录不存在"
# 检查字体配置
echo
echo "2. 字体配置:"
docker exec "$CONTAINER_NAME" ls -la /etc/fonts/ 2>/dev/null || echo " 字体配置目录不存在"
# 检查可用字体
echo
echo "3. 可用字体:"
docker exec "$CONTAINER_NAME" fc-list | head -10 2>/dev/null || echo " 无法获取字体列表"
# 检查 Java 字体环境
echo
echo "4. Java 字体环境:"
docker exec "$CONTAINER_NAME" java -Djava.awt.headless=true -cp . -c "import java.awt.GraphicsEnvironment; import java.awt.Font; System.out.println(\"Available fonts: \" + GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames().length); System.out.println(\"Headless: \" + GraphicsEnvironment.isHeadless());" 2>/dev/null || echo " 无法检查 Java 字体环境"
echo
echo "🧪 测试字体渲染:"
docker exec "$CONTAINER_NAME" sh -c "echo '测试字体' | fc-match -v 2>/dev/null || echo '字体匹配失败'"
echo
echo "💡 如果字体问题持续,可以尝试:"
echo "1. 重新构建镜像(包含字体包)"
echo "2. 添加中文字体支持"
echo "3. 设置 JAVA_OPTS 包含 -Djava.awt.headless=true"
echo
echo "=== 检查完成 ==="