AW: Zeichnen auf Image mit zoom
Möglicherweise, er lässt sich ja selbst auf Anfrage nicht auf Einzelheiten zu seiner Person aus, obwohl das unter Umständen zumindest ein bisschen zum Verständnis beitragen könnte.
|
AW: Zeichnen auf Image mit zoom
Google "delphi grafik skalieren"
1. Suchergebnis: :) http://www.swissdelphicenter.ch/de/showcode.php?id=1806 |
AW: Zeichnen auf Image mit zoom
Oder man rechnet die prozentuale Größe vorher aus und nimmt dann z.B. mein StretchGraphic.
|
AW: Zeichnen auf Image mit zoom
@Bjoerk:
Wie kannst du nur so etwas kompliziertes, wie mit Google suchen, verlangen :P @DeddyH: Das Wort Suaheli ist veraltet, damit du modern bleibst, musst du jetzt Swahili nutzen :wink: |
AW: Zeichnen auf Image mit zoom
Dann nehm ich halt Mandarin-Chinesisch, ändert aber am Kern nix :roll:
|
AW: Zeichnen auf Image mit zoom
Gäbe es eigentlich für die Forenbetreiber eine Möglichkeit automatisiert Threads direkt bei der Erstellung in einen anderen Bereich zu verschieben?
|
AW: Zeichnen auf Image mit zoom
Zitat:
Der Code aber kann nur vergrössern, da du Integer verwendest für desWidth, desHeight Ich versuche nun deinen Code zu ändern, so dass ich auch den Grafik verkleinern kann
Delphi-Quellcode:
StretchGraphic(Image2.Picture.Graphic,Image1.Picture.Graphic, w*zoom, h*zoom);
|
AW: Zeichnen auf Image mit zoom
Falsch, sein Code kann auch verkleinern.
Der Typ hat hier rein garnichts mit dem Vergrößerungs-/Verkleinerungsfaktor zu tun, da dort nicht der Faktor angegeben wird, aber egal... Wenn man den wichtigen Teil aus seinem Code rausnimmt, die Berechnung des Faktors übergeht und seinen Faktor direkt verwendet, dann ist es schon richtig so. |
AW: Zeichnen auf Image mit zoom
Ich muss die neue Breite und die neue Höhe vorher je nach dem angegeben Faktor berechnen
Ich habe folgendes gemacht :
Delphi-Quellcode:
Also mit dem skalieren ist nun kein Problem
procedure TForm1.Button1Click(Sender: TObject);
var NewWidth, NewHeight : Integer; begin zoom:=StrToFloat(Edit1.Text); NewWidth:=Round(zoom*Image2.Picture.Width); NewHeight:=Round(zoom*Image2.Picture.Height); //StretchGraphic(Image2.Picture.Bitmap,Image1.Picture.Graphic, 300, 300); StretchGraphic(Image2.Picture.Graphic,Image1.Picture.Graphic, NewWidth, NewHeight); end; Nun möchte ich auf dem skalierten Image zeichnen d.h. ich muss auch beim zeichnen alles * zoom multiplizieren zum Beispiel : Image2.canvas.pen.Width:=1*zoom Beim Vergrössern ist kein Problem aber was wäre beim Verkleinern ? Wenn ich das Image 2 mal verkleinern wie breit soll Image.canvas.pen.Width sein ? |
AW: Zeichnen auf Image mit zoom
Zitat:
Wie wäre es, wenn du vor einfach dem verkleiner alles darauf zeichnest? Originalbild > neues Bild mit Draufgezeichnetem > gezoomtes Bild |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:27 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