12. december 2002 - 12:20
Der er
7 kommentarer og 1 løsning
WebApp: Billede skal retur
Jeg har en WebApp (DLL), som når den kaldes, skal returnere et billede... Det har jeg fikset ved at Response.ContentType := 'image/jpeg'; Men hvordan får jeg smuttet billedet ind i selve Response.Content..?
Annonceindlæg fra DE-CIX
12. december 2002 - 12:28
#1
Prøv med dette: var MemStrm: TMemoryStream; Bitmap: TBitmap; JPEG: TJPEGImage; begin MemStrm := TMemoryStream.Create; Bitmap := TBitmap.Create; JPEG := TJPEGImage.Create; Bitmap.LoadFromFile('C:\test.bmp'); JPEG.Assign(Bitmap); JPEG.SaveToStream(MemStrm); MemStrm.Position := 0; Response.ContentType := 'image/jpeg'; Response.CotentStream := MemStrm; JPEG.Free; Bitmap.Free; end;
12. december 2002 - 12:47
#2
Der kommer bare et billede, med et kryds i... Det behøver muligvis ikke være JPEG - bitmap kan også bruges
12. december 2002 - 12:53
#3
det kode jeg har lavet til dig åbner jo nettop en bitmap fil, laver den til jpg og sender den
12. december 2002 - 13:06
#4
Ohh - I see.. :) Men nu ville jeg ikke have åbnet en fil, men returere et billede, der bli'r lavet "runtime"... Det her kan måske lede dig på sporet af hvad jeg mener.. var Bar: TBarcode; MemStrm: TMemoryStream; Bitmap: TBitmap; begin Bar := Tbarcode.Create(nil); Bar.Height := 100; Bar.Text := Request.QueryFields[0]; Bar.Typ := bcCode128C; Bar.ShowText := bcoCode; MemStrm := TMemoryStream.Create; Bitmap := TBitmap.Create; Bar.DrawBarcode(Bitmap.Canvas); Bitmap.SaveToStream(MemStrm); MemStrm.Position := 0; Response.ContentType := 'image/bmp'; Response.ContentStream := MemStrm; Bitmap.Free; end;
12. december 2002 - 13:12
#5
ehm ja men hvad er dit problem så ligenu? Jeg kender jo ikke TBarcodes methods, så det er svært at hjælpe dig videre. Du kan evt sende TBarcode component og project til dkn@pc.dk
12. december 2002 - 13:21
#6
Sendt...
12. december 2002 - 13:24
#7
jeg står der, at alt hvad der er i mit browser, er et "broken" billede...
12. december 2002 - 13:46
#8
var Bar: TAsBarcode; MemStrm: TMemoryStream; Bitmap: TBitmap; begin Bar := TAsBarcode.Create(nil); MemStrm := TMemoryStream.Create; Bitmap := TBitmap.Create; Bar.Height := 50; Bar.ShowTextPosition := stpBottomCenter; Bar.Text := '1234'; Bar.Typ := bcCode128C; Bar.ShowText := bcoCode; Bitmap.Height := Bar.Height; Bitmap.Width := Bar.Width; Bar.DrawBarcode(Bitmap.Canvas); Bitmap.SaveToFile('test.bmp'); //Debug Bitmap.SaveToStream(MemStrm); MemStrm.Position := 0; Response.ContentType := 'image/bmp'; Response.ContentStream := MemStrm; Bitmap.Free; Bar.Free; end; det der virker
Kurser inden for grundlæggende programmering