AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi DisplayWidth (TField) in Milimeter umrechnen
Thema durchsuchen
Ansicht
Themen-Optionen

DisplayWidth (TField) in Milimeter umrechnen

Ein Thema von Icemanemp · begonnen am 1. Okt 2004 · letzter Beitrag vom 4. Okt 2004
Antwort Antwort
Seite 1 von 2  1 2      
Icemanemp

Registriert seit: 28. Mai 2004
Ort: immer dem Pfeil nach --->
26 Beiträge
 
Delphi 5 Enterprise
 
#1

DisplayWidth (TField) in Milimeter umrechnen

  Alt 1. Okt 2004, 12:41
Hi,

ich brauch für meine Abschlussprojekt (Fachinformatiker Anwendungsentwicklung) ne mathematische Formel, wie ich die DisplayWidth eines TFields in Milimeter oder cm umrechnen kann!
Da DisplayWidth nur die Anzahl der Zeichen angibt kann ich diese nich an mein Projekt übergeben! Ich hab mir den Quellcode des DBGrids angeschaut, aber nur diese Formel gefunden:
Delphi-Quellcode:
 Field.DisplayWidth := (Value + (TM.tmAveCharWidth div 2) - TM.tmOverhang - 3)
          div TM.tmAveCharWidth;
Wenns interessiert es ist was mit List&Label und diese Software verarbeitet nunmal alles in Milimeter!
Wäre net, wenn mir einer helfen könnte, da mir nur noch diese kleine Berechnung zur Vollendung meines Abschlussprojektes fehlt! Danke
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#2

Re: DisplayWidth (TField) in Milimeter umrechnen

  Alt 1. Okt 2004, 13:02
vielleicht lässt sich da ja was mit canvas und den pixeln machen!
  Mit Zitat antworten Zitat
Icemanemp

Registriert seit: 28. Mai 2004
Ort: immer dem Pfeil nach --->
26 Beiträge
 
Delphi 5 Enterprise
 
#3

Re: DisplayWidth (TField) in Milimeter umrechnen

  Alt 1. Okt 2004, 13:11
Die Formel aus den DBGrid scheint mir schon richtig zu sein, aber wie und mit was soll ich die Werte füllen bzw. muss ich dann noch irgendwas berechnen, da ich denke, da man dann nur ein ergebnis hat, das pixelgenau ist, weil Windows ja Pixel zeichnet. Ich brauch aber Millimeter...
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#4

Re: DisplayWidth (TField) in Milimeter umrechnen

  Alt 1. Okt 2004, 13:18
das kommt doch dann auf die auflösung des displays an, ist die nicht in pixel/inch angegeben, das kann man dann doch auf mm umrechnen!
  Mit Zitat antworten Zitat
Icemanemp

Registriert seit: 28. Mai 2004
Ort: immer dem Pfeil nach --->
26 Beiträge
 
Delphi 5 Enterprise
 
#5

Re: DisplayWidth (TField) in Milimeter umrechnen

  Alt 1. Okt 2004, 13:29
Screen.PixelsperInch gibt aber nur den vertikalen Wert an! horizantal scheint der anders zu sein lt. Hilfe! Da ich aber Spalten einer tabelle habe sind diese horizontal angeordnet!
Bin z.Z am rumbasteln an der Formel, aber bekomm da nix gescheites raus!
  Mit Zitat antworten Zitat
Jörn

Registriert seit: 5. Sep 2003
Ort: Helmstedt
312 Beiträge
 
#6

Re: DisplayWidth (TField) in Milimeter umrechnen

  Alt 1. Okt 2004, 13:40
Das wird auch nichts. Es kommt ganz auf die Größe des Monitors an, auf die Einstellungen (nutze ich den ganzen Bildschirm, oder hab ich schwarze Ränder?) usw. Wenn das was werden soll, dann nur über das Ausmessen des Bildschirms durch den User.
  Mit Zitat antworten Zitat
Icemanemp

Registriert seit: 28. Mai 2004
Ort: immer dem Pfeil nach --->
26 Beiträge
 
Delphi 5 Enterprise
 
#7

Re: DisplayWidth (TField) in Milimeter umrechnen

  Alt 1. Okt 2004, 13:48
Unmöglich ist das bestimmt nicht! Egal ob ich schwarze Ränder hab oder nicht die Auflösung kann ja abgefragt werden! vielleicht auch noch obs small also 96dpi schriftgrösse benutzt wird usw., aber die genau berechnung fehlt mir!
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#8

Re: DisplayWidth (TField) in Milimeter umrechnen

  Alt 1. Okt 2004, 13:50
ok, ^ das stimmt also sollte man dvon ausgegeh, daß der bildschirm voll ausgenutzt wird und es ein tft ist, da hier die sichtbaren Bildschirmgröße in zoll (1 zoll (1") = 2,54 cm = 1 inch) angegeben ist! also ist die umrechnung nun nicht allzu schwer, nur muss das programm wissen, wie hoch ist die auflösung und wie groß ist der sichtbare bereich, zur not leg ein maßband mit dabei!
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: DisplayWidth (TField) in Milimeter umrechnen

  Alt 1. Okt 2004, 13:54
Es ist ohne Hilfe des Users unmöglich! Woher willst du denn wissen, ob ich nen 14"er auf 800x600, oder nen 22"er auf 800x600 Pixel fahre? Das bekommst du softwareseitig nicht raus. Und selbst wenn: Wer sagt dir, dass ich bei meinem 22"er den Sichtbereich nicht so klein gemacht habe, dass effektiv nur so 17" angezeigt werden?
Die größe eines Pixels ist nicht softwareseitig ermittelbar! Geht einfach nicht. Du brauchst den User, und selbiger ein Lineal und ein gutes Auge. Mit dessen Hilfe kannst du dann deine Ausgaben kalibrieren - anders nicht.
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
Benutzerbild von Aenogym
Aenogym

Registriert seit: 7. Mär 2004
Ort: Schwerin
1.089 Beiträge
 
Delphi 7 Enterprise
 
#10

Re: DisplayWidth (TField) in Milimeter umrechnen

  Alt 1. Okt 2004, 13:58
hi,

die auflösung und PixelsPerInch nützen dir garnichts, wenn du nicht die exakten ausmaße des im monitor angezeigten bildes weißt

denn angenommen du findest jetzt zufällig ein paar werte, die das ganze bei dir richtig ausgeben. dann stell in deinem monitor einfach mal dein bild ein (zB etwas breiter oder dünner).
wenn du nun mit diesem "verzerrten" bild etwas am pc zeichnest o.ä. und dies dann mit dem gleichen code drucken lässt, dann wird das verschoben sein, da du ja nicht mehr die pixel so siehst, wie vorher.

worauf ich hinaus will: pixel sind virtuelle größenangaben. millimeter reelle.
du kannst pixel in millimeter nur umrechnen, wenn du folgende größen kennst:
-exakte ausmaße des angezeigten bildes
-die auflösung
-die DPI

dann kannst du dir das ausrechnen

Aenogym

edit: war ich doch wieder zu lahm
Steffen Rieke
Was nicht buzzt, wird buzzend gemacht!
http://blog.base-records.de
http://www.base-records.de
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 01:15 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