AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Problem mit Form.Canvas speichern

Ein Thema von bayou · begonnen am 14. Feb 2018 · letzter Beitrag vom 17. Feb 2018
Antwort Antwort
bayou

Registriert seit: 12. Feb 2018
Ort: Friedrichsdorf
7 Beiträge
 
Delphi 6 Personal
 
#1

Problem mit Form.Canvas speichern

  Alt 14. Feb 2018, 22:30
Delphi-Version: 6
Hallo,

ich habe lange nichts mehr mit Delphi gemacht und habe eine Frage zu Delphi 6.
Ich weiß auch nicht ob die Themenüberschrift richtig ist.
Ich habe ein Programm bei dem ich einen Notizzettel in einem neuen Fenster öffnen möchte.
Dieses Formular „Notizzettel“ soll Handschriftlich mit Stift bzw. Maus beschrieben werden.
Das bekomme ich über Form1.Canvas usw. auch gut hin.
Mein Problem ist wenn ich das Fenster „Notizzettel“ schließe und wieder öffne ist das Handgeschriebene weg.
Kann mir jemand bitte einen Tipp geben?

Vielen Dank
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
961 Beiträge
 
Delphi 6 Professional
 
#2

AW: Problem mit Form.Canvas speichern

  Alt 15. Feb 2018, 05:32
Hmm..

ISt vielleicht nicht das Richtige, aber schaue Dir mal den Thread an:

http://www.delphipraxis.net/192146-s...uf-tablet.html

Mit den verwendeten Komponenten ist ein Speichern und Laden, incl. Erkennen des 'gemalten' Textes möglich..
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.288 Beiträge
 
Delphi 11 Alexandria
 
#3

AW: Problem mit Form.Canvas speichern

  Alt 15. Feb 2018, 06:28
In diesem Fall reicht auch ein TImage.

Wenn du das ganz kurz gesagt auf Align alClient setzt und auf dessen Canvas malst, kannst du dieses einfach mit SaveToFile speichern.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.010 Beiträge
 
Delphi 2009 Professional
 
#4

AW: Problem mit Form.Canvas speichern

  Alt 15. Feb 2018, 09:43
Nachteil: Die Größe der Canvas eines TImage wird beim ersten Zeichnen gesetzt. Wird es dann vergrößert, bleibt die beschreibbare Fläche gleich groß.

Man kann die Canvas eines TImages speichern mit:
Delphi-Quellcode:
(Image1.Picture.Graphics as TBitmap).SaveToFile('Datei.bmp');
Image1.Picture.LoadFromFile('Datei.bmp');
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.017 Beiträge
 
Delphi 12 Athens
 
#5

AW: Problem mit Form.Canvas speichern

  Alt 15. Feb 2018, 10:20
Zitat:
Canvas speichern
Ein pures Canvas ist ohne irgendeine Cache/RepaintEreignis nicht sicher.
Darauf gezeichnette Dinge können/werden schnell verschwinden, wenn das zum Canvas gehörende Control sich neu zeichnen muß.


Nachteil: Die Größe der Canvas eines TImage wird beim ersten Zeichnen gesetzt. Wird es dann vergrößert, bleibt die beschreibbare Fläche gleich groß.
Falsch. Der Canvas ist immer genau so groß, wie das TImage.

Beim ersten Zugriff auf das Cache-Bitmap (Picture.Graphic) wird dessen Größe auf die größe des TImage gesetzt.
Und wie sonst auch bei allen Bildern im TImage (Picture) wird die größe des Bildes niemals beim Resizen des Images verändert, aber es verbietet dir niemand, dass du es nicht im OnResize machen darfst.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (15. Feb 2018 um 13:31 Uhr)
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
961 Beiträge
 
Delphi 6 Professional
 
#6

AW: Problem mit Form.Canvas speichern

  Alt 15. Feb 2018, 13:30
Hmm..

Dieses Formular „Notizzettel“ soll Handschriftlich mit Stift bzw. Maus beschrieben werden.

Ich hab gedacht, er will genau das machen, wofür InkOverlay/InkRecognizers gedacht sind.

- Mit Stift/Touch/Mouse einen Text 'malen'
- Einfaches und platzsparendes Speichern/Laden
- als Bonus sogar eine Schrifterkennung, so dass er direkt aus dem gemalten Text einen String bekommt.

Und er muss sich nicht mit dem Malen auf einem Canvas selber herum schlagen
  Mit Zitat antworten Zitat
bayou

Registriert seit: 12. Feb 2018
Ort: Friedrichsdorf
7 Beiträge
 
Delphi 6 Personal
 
#7

AW: Problem mit Form.Canvas speichern

  Alt 17. Feb 2018, 23:19
@HolgerX Vielen Dank für den Tipp.

Ich habe alles was ich brauche und sehr viel mehr.
Ich sprühe förmlich vor Ideen wie ich mein Programm noch einfacher zu händeln machen kann.

Vielen Dank an alle für die Hilfe
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 23:43 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