Witam! Czy możliwe jest wyświetlanie w programie napisanym w Turbo Pascalu jakiegoś obrazku (najlepiej bitmapy z miom zdjęciem)? Pozdrawiam
jest mozliwe
na necie jest pelno przykladow i zrodel
na 4programmers tez chyba sa ( nie pamietam )
najlatwiej 255 kolorow wyswietlic
Greenmag, mógłbyś podać jakiś konkretny przykład ??:>
pozdrawiam ;)
Tutaj masz wiele przykladow.
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.
najłatwiej jest nie wyswietlać kolorów lub w ogóle nic nie wyswietlać
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