![]() |
Linealdarstellung in cm
Hallo,
im Delphibeispielordner gibt es einen RTF-Editor, mit einem Lineal. Leider ist dieses in der Maßeinheit Pixel. Kann mir von euch jemand sagen, wie ich das Lineal von Pixel in cm umprogrammieren kan?
Delphi-Quellcode:
Danke
const
RulerAdj = 4/3; // für Lineal GutterWid = 6; //Lineal procedure TForm1.SetupRuler; var I: Integer; S: String; begin SetLength(S, 201); I := 1; while I < 200 do begin S[I] := #9; S[I+1] := '|'; Inc(I, 2); end; Lineal.Caption := S; end; ... Form1.Create ... SetupRuler; //Lineal |
Re: Linealdarstellung in cm
Dafür bräuchtest du die Auflösung und die Monitorgröße.
Dann gilt:
Code:
(Kannst ja den User bitten, er soll seinen Monitor ausmessen :mrgreen: )
Pixel * (Anzeigebreite in cm / Anzeigebreite in px) = cm
|
Re: Linealdarstellung in cm
Tut mir, ich glaube, ich verstehe nicht so richtig.
|
Re: Linealdarstellung in cm
Hi,
das Problem ist, dass je nach Auflösung ein Pixel unterschiedlich groß ist. Wenn du eine Auflösung von 800x600 auf einem 15"-Monitor hast ist ein Pixel wesentlich größer als bei einer 1280x1024-Auflösung auf dem selben Monitor. Und da du die Größe des Monitors nicht herausbekommst, wird das etwas schwierig... ;) Chris |
Re: Linealdarstellung in cm
Das oben ist eine Formel, mit der du Pixel in cm umrechnen kannst ...
Delphi-Quellcode:
var
px, // Anzahl der Pixel, die du umrechnen willst MonitorCM, // Breite des Monitors in cm MonitorPx: integer; // Breite des Monitors in Pixeln begin showmessage(inttostr(px)+' Pixel entsprechen bei ihnen '+Px * (MonitorCM / MonitorPx)+' cm'); |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:31 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