데스크탑 환경 없이 큰 텍스트 표시(그래픽 모드에서?) [복제]

데스크탑 환경 없이 큰 텍스트 표시(그래픽 모드에서?) [복제]

전제:

자동차 도어 자동화 시나리오에서 저는 Ubuntu 헤드리스 서버에서 실행될 것으로 생각되는 데몬을 구축하고 있습니다.

      linux headless host
    +----------------------+
    |                      |
    |                      |
    |                      |
    |   +--------------+   |
    |   | graphic card |   |
    +---+------+-------+---+
               | HDMI
               |
               |
+--------------v---------------+
|                              |
| Please contact the operator. |
| Push the emergency button    |
|                              |
|                              |
|                              |
|                              |
+------------------------------+
     high resolution screen

표적:

데몬은 화면에 간단한 텍스트를 표시해야 합니다. 기본적으로 stdout에 텍스트 줄을 작성하면 되지만 데스크톱 환경에서 gnome 터미널을 사용하는 것처럼 구성 가능한 큰 크기 글꼴과 기하학적 모양을 사용하면 됩니다. 요점은 단지 문제를 해결하기 위해 데스크탑 환경을 설치하는 것을 피한다는 것입니다.

터미널 예의 큰 텍스트

clear && echo "Please contact operator"스크린샷에서는 글꼴 크기 설정이 다른 gnome 터미널의 명령을 보여줍니다.

그런데 큰 글꼴을 요구하는 이유는 트럭 운전자가 컴퓨터 모니터로부터 1/2미터 거리에서 표시된 텍스트를 읽을 것이기 때문입니다.

노트:

질문:

헤드리스 컴퓨터에서 큰 전면 텍스트(그래픽 모드)를 어떻게 표시합니까?

답변1

나는 최악의 IMHO에서 최고의 IMHO까지 내가 찾은 3가지 솔루션을 공유하기 위해 스스로 대답했습니다.

  1. toilet또는 같은 프로그램을 사용하십시오 .figlet
clear && printf "push the\nemergency\nbutton" | toilet -t --font=mono12

                               ▄▄                            ▄▄
                               ██                    ██      ██
 ██▄███▄   ██    ██  ▄▄█████▄  ██▄████▄            ███████   ██▄████▄   ▄████▄
 ██▀  ▀██  ██    ██  ██▄▄▄▄ ▀  ██▀   ██              ██      ██▀   ██  ██▄▄▄▄██
 ██    ██  ██    ██   ▀▀▀▀██▄  ██    ██              ██      ██    ██  ██▀▀▀▀▀▀
 ███▄▄██▀  ██▄▄▄███  █▄▄▄▄▄██  ██    ██              ██▄▄▄   ██    ██  ▀██▄▄▄▄█
 ██ ▀▀▀     ▀▀▀▀ ▀▀   ▀▀▀▀▀▀   ▀▀    ▀▀               ▀▀▀▀   ▀▀    ▀▀    ▀▀▀▀▀
 ██




  ▄████▄   ████▄██▄   ▄████▄    ██▄████   ▄███▄██   ▄████▄   ██▄████▄   ▄█████▄  ▀██  ███
 ██▄▄▄▄██  ██ ██ ██  ██▄▄▄▄██   ██▀      ██▀  ▀██  ██▄▄▄▄██  ██▀   ██  ██▀    ▀   ██▄ ██
 ██▀▀▀▀▀▀  ██ ██ ██  ██▀▀▀▀▀▀   ██       ██    ██  ██▀▀▀▀▀▀  ██    ██  ██          ████▀
 ▀██▄▄▄▄█  ██ ██ ██  ▀██▄▄▄▄█   ██       ▀██▄▄███  ▀██▄▄▄▄█  ██    ██  ▀██▄▄▄▄█     ███
   ▀▀▀▀▀   ▀▀ ▀▀ ▀▀    ▀▀▀▀▀    ▀▀        ▄▀▀▀ ██    ▀▀▀▀▀   ▀▀    ▀▀    ▀▀▀▀▀      ██
                                          ▀████▀▀                                 ███


 ▄▄
 ██                    ██        ██
 ██▄███▄   ██    ██  ███████   ███████    ▄████▄   ██▄████▄
 ██▀  ▀██  ██    ██    ██        ██      ██▀  ▀██  ██▀   ██
 ██    ██  ██    ██    ██        ██      ██    ██  ██    ██
 ███▄▄██▀  ██▄▄▄███    ██▄▄▄     ██▄▄▄   ▀██▄▄██▀  ██    ██
 ▀▀ ▀▀▀     ▀▀▀▀ ▀▀     ▀▀▀▀      ▀▀▀▀     ▀▀▀▀    ▀▀    ▀▀


  1. 프레임 버퍼에서 이미지 시각화

텍스트가 "정적"(고정)인 경우 해결 방법은 프레임 버퍼에 비트맵(원하는 텍스트가 포함된 이미지)을 표시하는 것입니다.

오래되었지만 좋은 유틸리티는 다음과 같습니다 fbi.

$ sudo apt install fbi

따라서 이미지가 fullscreen_text_image.PNG전체 화면 비트맵(예: PNG 형식)인 경우 이미지를 5초 동안 표시하는 명령(트릭)은 다음과 같습니다.

sudo fbi --noverbose --timeout 5 --once fullscreen_text_image.PNG

  1. 프레임버퍼 터미널 에뮬레이션

fbterm오래된 프레임버퍼 터미널 에뮬레이션 프로그램입니다. 좋은 기능은 선택할 수 있는 옵션이 많다는 것입니다. 예를 들어 매우 큰 글꼴 크기를 사용할 수 있습니다.

sudo apt install fbterm

# run the terminal emulation on the framebuffer
fbterm --font-size=300

# remove prompt
PS1=''

# remove cursor
setterm --cursor off

# other settings (e.g. change background color)
# setterm --background red

# font change
# setfont /usr/share/consolefonts/Uni3-Terminus32x16.psf.gz

표시된 대로 fbterm을 실행하면 "일반" stdout을 얻을 수 있지만 매우 높은 그래픽 품질을 갖춘 매우 큰 텍스트를 얻을 수 있습니다! 그림을 참조하십시오:

여기에 이미지 설명을 입력하세요.

관련 정보