Obrazek w TP

0

Witam! Czy możliwe jest wyświetlanie w programie napisanym w Turbo Pascalu jakiegoś obrazku (najlepiej bitmapy z miom zdjęciem)? Pozdrawiam

0

jest mozliwe
na necie jest pelno przykladow i zrodel
na 4programmers tez chyba sa ( nie pamietam )
najlatwiej 255 kolorow wyswietlic

0

Greenmag, mógłbyś podać jakiś konkretny przykład ??:>

pozdrawiam ;)

0

Tutaj masz wiele przykladow.

0
Reiko napisał(a)

Greenmag, mógłbyś podać jakiś konkretny przykład ??:>
pozdrawiam ;)

nie ja pisalem ale sprawdzalem i dziala

{obrazek musi byc w rozdzielczoci 320*200 pikseli}
{obrazek musi miec 255 kolorow}
{obrazek musi byc w formacie BMP}
{obrazek wywietlany jest w odbiciu lustrzanym}

uses Crt;
const obrazek : string = 'test';
var
 Pal:array[0..768] of byte;
 Pic:array[1..64000] of byte absolute $A000:0;

procedure UstawPalete;
var X:byte;
begin
 for x:=0 to 255 do begin
  Port[$3c8]:=X;
  Port[$3c9]:=Pal[x*3];
  Port[$3c9]:=Pal[x*3+1];
  Port[$3c9]:=Pal[x*3+2];
 end;
end;

procedure LadujBMP;
var F:text;
    X:word;
    R,G,B,Z:char;
begin
 Assign(F,obrazek+'.bmp');
 Reset(F);

 for x:=0 to 53 do
  Read(F,Z);
 for x:=0 to 255 do begin
  Read(F,B,G,R,Z);
  Pal[x*3  ]:=Ord(r) div 4;
  Pal[x*3+1]:=Ord(g) div 4;
  Pal[x*3+2]:=Ord(b) div 4;
 end;
 UstawPalete;
 for X:=64000 downto 1 do begin
  Read(F,Z);
  Pic[X]:=Ord(Z);
 end;
 Close(F);
end;

begin
 asm
  mov ax,13h
  int 10h
 end;
 LadujBMP;
 readkey;
 asm
  mov ax,3h
  int 10h
 end;
end.
0

najłatwiej jest nie wyswietlać kolorów lub w ogóle nic nie wyswietlać

0

ale sie przyczepiliscie do slowa "najlatwiej"
chodzilo mi o to ze jest to bardzo popularna metoda
i nawet niezaawansowany nie bedzie mial z tym problemu

a jesli jestescie tacy madrzy to bylo trzeba odpowiedziec gosciowi jak pytal a nie madrzyc sie

jak bedziemy tak dalej dyskutowac to ktos pokroju adiblol-a napisze
ze najlatwiej jest uzyskac dwa kolory w trybie tekstowym

1 użytkowników online, w tym zalogowanych: 0, gości: 1