Avatar billede stigc Nybegynder
29. juli 2000 - 18:38 Der er 2 kommentarer og
2 løsninger

Jpeg som Bitmap i Builder

Jeg prøver at ligge et billedet ind på et TBitmap objekt. Det virker fint med når Image1 er et bitmap-billede. Men ikke når Image1 er et Jpeg-billeder. Er det ikke muligt at gøre det sådan?

Graphics::TBitmap* baggrund=new Graphics::TBitmap;

baggrund->Width=Image1->Width;
baggrund->Height=Image1->Height;
baggrund->PixelFormat=pf24bit;
baggrund->Canvas->Draw(0,0,Image1->Picture->Bitmap);



Avatar billede lbs Nybegynder
07. august 2000 - 07:49 #1
Nej det er det ikke.
jpeg er et komprimeret billedet, og du angiver netop med TBitmap at det er et bitmap du arbejder med.
et Bitmap er helt ukomprimeret.
Avatar billede soepro Nybegynder
14. august 2000 - 10:37 #2
Det er jeg ikke enig i !!! Jeg formoder at du først har \"loadet\" JPG billedet ind i TImage componenten. I det øjeblik du gør det, bliver det de-komprimeret OG omdannet til en bitmap. Og dermed kan du \"tegne\" bitmappen på et andet canvas vha. Draw metoden - på samme måde som når man laver ListBoxes med ikoner f.eks.

Jeg har derfor to spørgsmål til dig: Kan du se dit JPG billede i TImage componenten ??? Jeg har oplevet at det ikke er alle JPG formater den understøtter, og dermed kan vise. (Men det plejer at give en exception, og så er man jo ikke længere i tvivl.) Hvis du kan se det - er det så ikke fordi en anden component overlapper dit canvas ???
Avatar billede lbs Nybegynder
15. august 2000 - 00:12 #3
Du har sikkert ret, hvad jeg kom med var blot antagelser...
Avatar billede borrisholt Novice
21. august 2000 - 00:11 #4
Jeg har des værre ikke en C++ Builder her på Arbejde, men \"kun\"  en Delphi. Koden i dette tilfælde er så ens så mon ikke selv du kan porte det ?

Placer et image og en knap på en form og skriv så det følgende kode :

procedure TForm1.Button1Click(Sender: TObject);
var
  JPEG : TJPEGImage;
begin
  JPEG := TJpegImage.Create;
  JPEG.LoadFromFile(\'D:\\Foto\\2000\\08 August\\20002008\\P0002010.jpg\');
  Image1.Stretch := True;
  Image1.Picture.Bitmap.Assign(JPEG);
  JPEG.Free;
end;

Bekalger endnu en gang at jeg svarer med et Delphi eksempel ..

Jens B
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester