AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Bild auf Bitmap kopieren
Thema durchsuchen
Ansicht
Themen-Optionen

Bild auf Bitmap kopieren

Ein Thema von Antigo · begonnen am 19. Dez 2006 · letzter Beitrag vom 19. Dez 2006
Antwort Antwort
Antigo

Registriert seit: 14. Mär 2005
274 Beiträge
 
#1

Bild auf Bitmap kopieren

  Alt 19. Dez 2006, 14:22
Hi,
folgende Situation: Ich male mit Canvas auf ein Bitmap, um es anschliessend mit bitblt auf eine paintbox zu kopieren. Jetzt möchte ich allerdings statt der weissen oder wie auch immer einfarbigen Malfläche des Bitmaps, ein Hintergrundbild einfügen, auf das ich dann meine Sachen male.
Es gibt zwar die Funktion LoadFromFile, aber hier gibt es zwei Probleme:
Erstens möchte ich das Bild in das Programm einbinden und nicht lose mitrumschleppen.
Zweitens möchte ich keine bmp datei benutzen, da sich der Speicherverbrauch gegenüber jpg verhundertfacht.

Also, wie binde ich ein JPG Bild in mein Programm ein und wie kopiere ich es anschliessend auf mein TBitmap?


Vielen Dank schonmal im vorraus
Michael
"How should I know if it works? That's what beta testers are for. I only coded it."
  Mit Zitat antworten Zitat
Skullschildi

Registriert seit: 7. Jan 2006
94 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Bild auf Bitmap kopieren

  Alt 19. Dez 2006, 14:31
soweit ich weiss wird das bild, wenn es dem programm beim compilieren schon bekannt is(in nem image geladen) in die exe eingebaut.
Ehe man über den Berg kommt, soll man nicht Juchhe schreien.
  Mit Zitat antworten Zitat
Antigo

Registriert seit: 14. Mär 2005
274 Beiträge
 
#3

Re: Bild auf Bitmap kopieren

  Alt 19. Dez 2006, 14:34
jo das stimmt, aber wie komme ich an das bild das in dem Image liegt? ich hab schon versucht mit bitblt das ganze auf ein anderes bitmap zu kopieren in dem ich auf image.picture.bitmap.canvas.handle ( ) zugegriffen hab, aber da kam nichts bei rum.
Michael
"How should I know if it works? That's what beta testers are for. I only coded it."
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#4

Re: Bild auf Bitmap kopieren

  Alt 19. Dez 2006, 14:35
Such mal nach "Ressource" ([dp]res*ource[/dp])

Damit kannst du Bilder in die Exe einkompilieren. Ansonsten gäbe es noch die möglichkeit einer TImagelist. Dasd bietet sich aber nur bei kleinen Grafiken mit der gleichen größe an.
  Mit Zitat antworten Zitat
Antigo

Registriert seit: 14. Mär 2005
274 Beiträge
 
#5

Re: Bild auf Bitmap kopieren

  Alt 19. Dez 2006, 15:14
ok ich hab das Bild jetzt als JPG File in einem TImage in mein Projekt eingebunden. Teil 1 des Problems ist also gelöst. Teil 2 besteht noch. WIe kann ich den Inhalt des Bildes auf ein TBitmap zeichnen?
Michael
"How should I know if it works? That's what beta testers are for. I only coded it."
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Bild auf Bitmap kopieren

  Alt 19. Dez 2006, 15:24
TGraphic hat eine Methode Draw im Protected abschnitt. Mit ZielBitmap.Canvas.Draw kannst du zum Beispiel eine beliebige TGraphic auf die Canvas ausgeben. Somit hast du das Bild auf der Canvas und kannst es dann verwenden.
Im übrigen ist ein JPEG auch nur im Dateiformat kleiner. Sobald es darum geht dass das eigentliche Bild berechnet/hergestellt wurde verbraucht es im Speicher genau so viel weil es genau so viel Bildpunkte hat.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Antigo

Registriert seit: 14. Mär 2005
274 Beiträge
 
#7

Re: Bild auf Bitmap kopieren

  Alt 19. Dez 2006, 15:52
ok dann werde ich das malausprobieren. danke

Es geht mir beim Speicher einfach nur darum, das die exe datei nicht unnötig groß werden soll.

dank an alle
Michael
"How should I know if it works? That's what beta testers are for. I only coded it."
  Mit Zitat antworten Zitat
Antigo

Registriert seit: 14. Mär 2005
274 Beiträge
 
#8

Re: Bild auf Bitmap kopieren

  Alt 19. Dez 2006, 16:50
tja das ganze hat leider nicht funktioniert.

background.Canvas.Draw(0,0,hintergrund.Picture.Graphic); backround ist ein TBitmap, hintergrund eine TImage.

Das Bitmap bleibt leider völlig weiss :/

edit: sry hat sich erledigt, ich hatte nur ein bsclear vergessen,

danke nochmal
Michael
"How should I know if it works? That's what beta testers are for. I only coded it."
  Mit Zitat antworten Zitat
Cöster

Registriert seit: 6. Jun 2006
589 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: Bild auf Bitmap kopieren

  Alt 19. Dez 2006, 17:45
Mit Image1.Picture.Bitmap erhält man imho am einfachsten das Bitmap eines Images.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:49 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz