Files
Sprinter-SDCC/tests/bgitest/bgitest.c
T
snark13 657c6d2955 libc: BGI Фаза 2d-3 — settextstyle (масштаб и направление текста)
settextstyle/gettextsettings/textwidth/textheight: DEFAULT_FONT 8×8,
целочисленный масштаб 1..10, HORIZ/VERT (поворот 90° CCW), прозрачный
фон. Свой scaled-рендер (_bgi_draw_scaled) читает глиф через leaf
_bgi_font_rows (interleaved системный шрифт) и рисует блоки size×size
raw в одной W3-скобке. outtext/outtextxy переведены на него. Проверено
в MAME (tests/bgitest): размеры 1..4 + вертикальный текст.

Доки обновлены (Ф2d-1/2/3 готовы; осталось viewport/клиппинг).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 16:18:48 +03:00

51 lines
1.2 KiB
C
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/*
* bgitest — демонстрация BGI-слоя graphics.h (режим 320×256×256).
* Фаза 2d-3: settextstyle — масштаб и направление текста.
*/
#include <graphics.h>
int main(void)
{
int mx, my;
initgraph();
mx = getmaxx();
my = getmaxy();
cleardevice();
setcolor(WHITE);
rectangle(0, 0, mx, my);
setcolor(YELLOW);
settextstyle(DEFAULT_FONT, HORIZ_DIR, 1);
outtextxy(96, 8, "settextstyle demo");
setcolor(LIGHTGREEN);
settextstyle(DEFAULT_FONT, HORIZ_DIR, 1);
outtextxy(16, 34, "size 1 ABC");
setcolor(LIGHTCYAN);
settextstyle(DEFAULT_FONT, HORIZ_DIR, 2);
outtextxy(16, 52, "size 2 ABC");
setcolor(LIGHTRED);
settextstyle(DEFAULT_FONT, HORIZ_DIR, 3);
outtextxy(16, 86, "size 3");
setcolor(LIGHTMAGENTA);
settextstyle(DEFAULT_FONT, HORIZ_DIR, 4);
outtextxy(16, 140, "BIG 4");
/* Вертикальный текст (поворот 90° CCW). */
setcolor(YELLOW);
settextstyle(DEFAULT_FONT, VERT_DIR, 2);
outtextxy(280, 240, "VERTICAL");
setcolor(WHITE);
settextstyle(DEFAULT_FONT, HORIZ_DIR, 1);
outtextxy(16, 200, "horiz + vert, scale 1..4");
for (;;) { }
}