Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi bestimmten Bereich einer Image-Kompo in Image-Kompo anzeigen (https://www.delphipraxis.net/73998-bestimmten-bereich-einer-image-kompo-image-kompo-anzeigen.html)

mlspider 26. Jul 2006 15:53


bestimmten Bereich einer Image-Kompo in Image-Kompo anzeigen
 
Ich stehe nun vor einem schier unlößbaren Problem. Ich möchte nur einen bestimmten Bereich des geladenen Bildes in einer Image-Kompo an eine weitere Image-Kompo übergeben.

Zur Veranschaulichung habe ich ein Screenshot beigefügt. Die 4 Shapes sind die Begrenzungsrahmen. Demzufolge soll nur in der zweiten Image-Kompo der Inhalt innerhalb der Begrenzung übergeben werden.

Wie könnte man dies lösen? Ehrlich gesagt, habe ich überhaupt keinen Plan.

Projekt.jpg

marabu 26. Jul 2006 16:44

Re: bestimmten Bereich einer Image-Kompo in Image-Kompo anze
 
Hallo Mario,

vielleicht helfen dir die Routinen GrabImage() und GetViewPort() aus diesem thread: klick

Grüße vom marabu

mlspider 26. Jul 2006 16:51

Re: bestimmten Bereich einer Image-Kompo in Image-Kompo anze
 
@marabu. Nicht wirklich. Könnte man nicht vom markiertem Bereich vorher ein Screenshot machen und diese Datei in die zweite Image laden? Wenn ja, wie?

Der_Unwissende 26. Jul 2006 17:02

Re: bestimmten Bereich einer Image-Kompo in Image-Kompo anze
 
Hi,
nur damit ich es richtig verstehe, dass Programm mit der Image Komponente ist von?
Wenn es von dir ist, also das einfach nur dein Delphi-Programm ist, das du erweitern möchtest (um die neue Funktionalität), dann musst du nicht extra ein Screenshot machen.
Aber dann hilft dir ein anderer Teil aus dem vom marabu geposteten Thread:
Zitat:

Zitat von Dust Signs
You could use CopyRect or BitBlt instead. And don't forget to free the tmp bitmap.

Leg einfach ein Hintergrundbitmap an und kopier mit einer der beiden Funktionen den ausgewählten Bereich.

Gruß Der Unwissende

marabu 26. Jul 2006 17:04

Re: bestimmten Bereich einer Image-Kompo in Image-Kompo anze
 
Wenn sich beide Images in deinem eigenen Programm befinden, dann wirst du den Bildauschnitt irgendwie wählen und dir die genauen Koordinaten merken. Damit hast du alle Parameter für GetViewPort().

marabu

mlspider 26. Jul 2006 17:07

Re: bestimmten Bereich einer Image-Kompo in Image-Kompo anze
 
Zum Punkt Nr. 1:

Das Programm wurde von der ersten Codezeile bis zur letzen von mir erstellt. Die benutzten Kompos sind Standard-Komponenten von Delphi. (Mal von den Buttons abgesehen) Es wurde von mir zu 100% in Object Pascal "zusammen geschoben".

Wenn die Oberfläche eventuelle Ähnlichkeiten zu anderen Programmen, die ich nicht kenne, aufweisen, ist dies ein unglücklicher Zufall.

Zum Punkt Nr. 2:

Ich werde aus dem Thread einfach nicht schlau und weiß jetzt ehrlich nicht, wie ich diesen in meinem Programm zweckentfremden könnte.

mlspider 26. Jul 2006 17:11

Re: bestimmten Bereich einer Image-Kompo in Image-Kompo anze
 
@marabu. Wie Du vielleicht bemerkt hast, läuft es nicht im Vollbildmodus und auch nicht maximiert. Ändern sich die Koordinaten mit jeder Verschiebung des Fensters nicht?

marabu 26. Jul 2006 17:45

Re: bestimmten Bereich einer Image-Kompo in Image-Kompo anze
 
Liste der Anhänge anzeigen (Anzahl: 1)
Mario, schau dir mal den angehängten Code an. Mit dem Button lädst du das große Image und mit einem Mausklick markierst du die obere linke Ecke eines Bildausschnittes, der dann in das kleinere Image übernommen wird.

marabu

mlspider 26. Jul 2006 17:49

Re: bestimmten Bereich einer Image-Kompo in Image-Kompo anze
 
Danke marabu. Hat mir sehr geholfen. Den Rest werde ich alleine meistern.

PS: Der nächste Aufhänger kommt bestimmt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:01 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