AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Graphics32 - Layer (Transparenz, zechnen)
Thema durchsuchen
Ansicht
Themen-Optionen

Graphics32 - Layer (Transparenz, zechnen)

Ein Thema von simlei · begonnen am 17. Mai 2006 · letzter Beitrag vom 2. Jun 2006
 
simlei

Registriert seit: 23. Nov 2005
119 Beiträge
 
Delphi 7 Professional
 
#1

Graphics32 - Layer (Transparenz, zechnen)

  Alt 17. Mai 2006, 19:33
Hallo! Ich will in ein TBitmap32 einen Layer zeichnen, der (was bei Layern ja so ist ) einen bestimmten Inhalt hat; es soll auch der Alpha-Wert verändert werden können. Leider ist das Problem, dass zur Zeit zwar ein Layer vorhanden ist (ich habe ihn in die Layercollection vom Image32 gesetzt), aber er zeichent sich von selbst a) an die Position 0,0; b) kann ich nicht irgendwie sagen (zeichne(positionx, y, z, alpha), womit ich die pos. und Alpha verändern kann.

Mein Quelltext sieht zur Zeit so aus:
Wenn jemand Hinweise, Lösungsvorschlag ... hat: hierher!!
vielen Dank schonmal!

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, GR32, GR32_Image, GR32_Transforms, GR32_Resamplers,
  GR32_Layers, ExtCtrls, Buttons, ComCtrls, Grids, GR32_RangeBars;

type
  TForm1 = class(TForm)
    Image321: TImage32;
    Button1: TButton;
    Image322: TImage32;
    procedure Button1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
implementation

{$R *.dfm}


procedure createImg32(var ziel:TImage32; color:Integer);
var leer:TBitmap32;
begin
 leer := TBitmap32.Create;
 leer.SetSize(ziel.Width, ziel.Height);
 leer.Canvas.Brush.Color := color;
 leer.Canvas.Rectangle(-1, -1, ziel.Width+2, ziel.Height+2);
 ziel.Bitmap.Assign(leer);
end;

procedure createBmp32Layer(var ziel:TBitmapLayer; Image: TImage32; color, breite, hoehe:Integer);
var leer:TBitmap32;
    layer:TBitmapLayer;
begin
 ziel:=TBitmapLayer.Create(Image.Layers);
 leer := TBitmap32.Create;
 leer.SetSize(breite, hoehe);
 leer.Canvas.Brush.Color := color;
 leer.Canvas.Rectangle(-1, -1, breite+2, hoehe+2);
 ziel.Bitmap.Assign(leer);
end;

procedure TForm1.Button1Click(Sender: TObject);
var layer:TBitmapLayer;
    leer:TBitmap32;
begin
 Image321.Bitmap.LineToFS(100, 100);
 Image321.Bitmap.Textout(100, 100, 'HALLOWELT');
 createBmp32Layer(layer, Image321, clred, 30, 100);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
createImg32(Image321, clgreen);
end;

end.
  Mit Zitat antworten Zitat
 


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 12:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz