AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Bitmap32 auf ZielBitmap32 malen
Thema durchsuchen
Ansicht
Themen-Optionen

Bitmap32 auf ZielBitmap32 malen

Ein Thema von stOrM · begonnen am 29. Jul 2008 · letzter Beitrag vom 1. Aug 2008
Antwort Antwort
Seite 3 von 6     123 45     Letzte »    
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.540 Beiträge
 
Delphi 11 Alexandria
 
#21

Re: Bitmap32 auf ZielBitmap32 malen

  Alt 30. Jul 2008, 12:24
Ich könnte es zu Hause mal versuchen (ca. gegen 18:00).
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#22

Re: Bitmap32 auf ZielBitmap32 malen

  Alt 30. Jul 2008, 12:33
Will ja nicht nerven, aber ist
Zitat:
..weil ich dann meine transparenz verlieren würde..
nicht eine Anforderung, die für die Verwendung von BitBlt() spricht?
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von stOrM
stOrM

Registriert seit: 7. Jun 2003
Ort: Mülheim an der Ruhr
434 Beiträge
 
Delphi 10.3 Rio
 
#23

Re: Bitmap32 auf ZielBitmap32 malen

  Alt 30. Jul 2008, 12:34
Zitat von DeddyH:
Ich könnte es zu Hause mal versuchen (ca. gegen 18:00).
Wäre echt mehr als genial!
Schick mir einfach ne PM, wenn Du soweit bist ich sende dir dann alles was du brauchst zu!

Viele Grüße
Marc
  Mit Zitat antworten Zitat
Benutzerbild von stOrM
stOrM

Registriert seit: 7. Jun 2003
Ort: Mülheim an der Ruhr
434 Beiträge
 
Delphi 10.3 Rio
 
#24

Re: Bitmap32 auf ZielBitmap32 malen

  Alt 30. Jul 2008, 12:35
Zitat von taaktaak:
Will ja nicht nerven, aber ist
Zitat:
..weil ich dann meine transparenz verlieren würde..
nicht eine Anforderung, die für die Verwendung von BitBlt() spricht?
Öm sorry ich will dich ja nicht ignorieren, aber ich brauch die Graphics32 noch für andere Sachen, soweit ich weiss kann ich da mit Bitblt nix anfangen...
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#25

Re: Bitmap32 auf ZielBitmap32 malen

  Alt 30. Jul 2008, 12:56
BitBlt ignoriert das "Reserwed"-Byte eines Bitmaps welches bei der GR32 als Alphakanal verwenet wird.
Das sind Altlasten der Windowsvorgänger ni nichts mit Transpatenzen zu schaffen haben "wollten".


Delphi-Quellcode:
procedure TForm1.FormPaint(Sender: TObject);
var qb1, qb2, qb3, ziel: TBitmap32;
begin
  //Erzeugen und Zeichnen der 3 Quellbitmaps
  qb1 := TBitmap32.Create;
  try
    qb1.Width := 20;
    qb1.Height := 40;
    qb1.FillRect(0,0,20,40, clRed32);
    // Oder
    // DrawTo(Dst: TBitmap32; DstX, DstY: Integer; const SrcRect: TRect);

    qb2 := TBitmap32.Create;
    try
      qb2.Width := 20;
      qb2.Height := 40;
      qb2.FillRect(0,0,20,40, clYellow32);

      qb3 := TBitmap32.Create;
      try
        qb3.Width := 20;
        qb3.Height := 40;
        qb3.FillRect(0,0,20,40, clBlue32);

        //Erzeugen und Zeichnen der Zielbitmap
        ziel := TBitmap32.Create;
        try
          ziel.Width := 60;
          ziel.Height := 40;
          //linke Quellbitmap
          ziel.Draw(0,0 ,qb1);
          //mittlere Quellbitmap
          ziel.Draw(qb1.Width,0,qb2);
          //rechte Quellbitmap
          ziel.Draw((qb1.Width + qb2.Width),0,qb3);
          ziel.DrawTo(Self.Canvas.Handle, 10, 10);
        finally
          ziel.Free;
        end;
      finally
        qb3.Free;
      end;
    finally
      qb2.Free;
    end;
  finally
    qb1.Free;
  end;
end;
... was klappt da jetzt nicht ?
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
taaktaak

Registriert seit: 25. Okt 2007
Ort: Radbruch
1.990 Beiträge
 
Delphi 7 Professional
 
#26

Re: Bitmap32 auf ZielBitmap32 malen

  Alt 30. Jul 2008, 13:18
@turboPASCAL: Vielen Dank für den Hinweis!
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von stOrM
stOrM

Registriert seit: 7. Jun 2003
Ort: Mülheim an der Ruhr
434 Beiträge
 
Delphi 10.3 Rio
 
#27

Re: Bitmap32 auf ZielBitmap32 malen

  Alt 30. Jul 2008, 15:38
Hallo Turbo
Naja das drawing klappt nun so wie es sollte nuuuuur (links und rechts die grafiken sind nu nicht mehr transparent) *heul
Die linke und rechte Grafik dient eigentlich nur dazu um das Rechteck abzurunden, daher haben diese beiden Grafiken oben sowie unten jeweils einen Transparenten Pixel, der nicht zu sehen sein sollte nur das ist er aber, was ziemlich bescheuert aussieht jetzt, da könnte ich mir die linke un d rechte Grafik direkt sparen und nen Rechtangle malen
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#28

Re: Bitmap32 auf ZielBitmap32 malen

  Alt 30. Jul 2008, 16:42
Mach ma 'n Bild btte wie es ist und wie es sein soll.
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
Benutzerbild von stOrM
stOrM

Registriert seit: 7. Jun 2003
Ort: Mülheim an der Ruhr
434 Beiträge
 
Delphi 10.3 Rio
 
#29

Re: Bitmap32 auf ZielBitmap32 malen

  Alt 30. Jul 2008, 16:47
Zitat von turboPASCAL:
Mach ma 'n Bild btte wie es ist und wie es sein soll.
Kann ich machen, ich kann dir auch das Project senden wie du magst?

Ich hoffe man kanns erkennen, bei dem "Sonicht" sind man relativ klein diese dunklen Rechtecke. 4 Stück an der Zahl bei Outleft, OutRight.
Miniaturansicht angehängter Grafiken
capture_170.png   sonicht_188.png  
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#30

Re: Bitmap32 auf ZielBitmap32 malen

  Alt 31. Jul 2008, 01:26
Ich gehe mal davon aus, dass die Maske im PNG hinterlegt ist. Probier mal den DrawMode der Bitmaps auf dmBlend zu setzen.
Wenn das nicht hilft, kann mir gut vorstellen, dass der Tranfer des Alphakanals von der PNG Kompo zum Bitmap32 nicht so geht. In dem Fall wäre es praktisch, wenn man die Maske des PNGs als Bitmap bekommen könnte, da man sie dann mit IntensityToAlpha() den jeweiligen Bitmaps zu Fuß eintrichtern kann. Aber ich tippe zunächst mal auf den DrawMode.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 6     123 45     Letzte »    


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 03:02 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