AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Die Abmessung (in cm) und Auflösung eines Bildes ermitteln?

Die Abmessung (in cm) und Auflösung eines Bildes ermitteln?

Ein Thema von jus · begonnen am 1. Aug 2009 · letzter Beitrag vom 4. Aug 2009
Antwort Antwort
Seite 1 von 2  1 2   
jus

Registriert seit: 22. Jan 2005
328 Beiträge
 
Delphi 2007 Professional
 
#1

Die Abmessung (in cm) und Auflösung eines Bildes ermitteln?

  Alt 1. Aug 2009, 17:21
Hallo,

ich versuche ein Programm zu schreiben, das Bilddateien(derzeit JPG, TIF, BMP, PSD) gebündelt ausdrucken kann. Später möchte ich noch weitere Bildformate unterstützen.
Zum Reinladen des Bildes auf einen TImage verwende ich die Vampyre Imaging Library. Die funktioniert ziemlich einfach und problemlos. Das Problem ist, dass ich derzeit keine Möglichkeit habe, die Bildgröße, sprich Bildbreite und Bildhöhe, in Zentimeter abzufragen, so wie es ursprünglich für das Bild angedacht war.
Der aktuelle Stand meiner Internetsuche ist, dass man anscheinend sich jedesmal mit dem jeweiligen Dateiformat auseinandersetzen muß, damit man die Abmessungen des Bildes in Zentimeter bekommt.

Gibt es eine allgemeine Methode die Abmessung in Zentimeter von einem Bild zu ermitteln? Falls die Beschäftigung mit dem Dateiformat die einzige Möglichkeit ist die Bildabmessung zu bekommen, gibt es eine gute Delphibibliothek die viele Formate abdeckt?

Lg,
jus
  Mit Zitat antworten Zitat
Benutzerbild von anse
anse

Registriert seit: 30. Okt 2006
162 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: Die Abmessung (in cm) und Auflösung eines Bildes ermitte

  Alt 1. Aug 2009, 18:17
Mußt du dafür nicht die DPI eines Bildes feststellen (wie auch immer das gehen soll)? Soweit ich weiß kann man mit einer DPI/Pixel Multiplikation auf die Originalgröße schließen.
Ansgar Becker
  Mit Zitat antworten Zitat
jus

Registriert seit: 22. Jan 2005
328 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Die Abmessung (in cm) und Auflösung eines Bildes ermitte

  Alt 1. Aug 2009, 18:45
Ja, über die Auflösung bekomme ich auch die Breite in Zentimeter. Habe ich die Breite bekomme ich auch die horizontale Auflösung. Die Frage ist halt nur wie bekomme ich die dpi oder die Breite in Zentimeter?

Lg,
jus
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.655 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Die Abmessung (in cm) und Auflösung eines Bildes ermitte

  Alt 1. Aug 2009, 21:11
Zitat von jus:
Das Problem ist, dass ich derzeit keine Möglichkeit habe, die Bildgröße, sprich Bildbreite und Bildhöhe, in Zentimeter abzufragen, so wie es ursprünglich für das Bild angedacht war.
...
Gibt es eine allgemeine Methode die Abmessung in Zentimeter von einem Bild zu ermitteln? Falls die Beschäftigung mit dem Dateiformat die einzige Möglichkeit ist die Bildabmessung zu bekommen, gibt es eine gute Delphibibliothek die viele Formate abdeckt?
Guten Abend Jus,

die Ausmaße eines Bildes in cm stecken sind nicht in dem Bildformat (jpg,tiff) gespeichert.
Die Ausmaße in cm sind immer abhänging davon wo Du das Bild ausgebenen willst.
Das Ausgabegerät unterstützt eine gewisse Auflösung.
Bei Druckern ist sie höher 300 bzw. 600 dpi (dots per Inch) auf dem Bildschirm
sind es in der Regel 72 dpi.

Wenn Du nun ein Bild mit einer "Kantenlänge" von 1000 Pixeln (dots) hast
wird das Bild auf dem Bildschirm 35,27 cm (1000/72 * 2.54) lang sein
auf dem Drucker mit 600 dpi ist das Bild nur 4,23 cm groß.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
jus

Registriert seit: 22. Jan 2005
328 Beiträge
 
Delphi 2007 Professional
 
#5

Re: Die Abmessung (in cm) und Auflösung eines Bildes ermitte

  Alt 1. Aug 2009, 22:02
Hallo Klaus01,

die Problematik der Ausgabe zum Drucker oder Monitor mit unterschiedlicher Auflösung ist mir bewußt. Aber ich bin mir ziemlich sicher, dass die von Anwender ursprünglich vorgegebenen Abmessungen, in welcher Form auch immer, in einem JPG oder TIF gespeichert sind.
z. B. der Photoshop kann die angedachten Abmessungen des Bilder auslesen.

Lg,
jus
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie
(Moderator)

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Die Abmessung (in cm) und Auflösung eines Bildes ermitte

  Alt 1. Aug 2009, 22:30
Was sind denn die "angedachten" Abmessungen?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#7

Re: Die Abmessung (in cm) und Auflösung eines Bildes ermitte

  Alt 1. Aug 2009, 22:35
Die realen Abmessungen sind eigentlich immer aus der DPI-Zahl zu entnehmen. Wenn jemand ein Document mit 300 dpi einscannt so ist es unabhängig von der Darstellung auf Bildschirm etc. immer so das beim Drucken (egal welche DPI-Zahl der Drucker hat) das Bild entsprechend zur Auflösung des Druckers scaliert wird so das wieder die richtige Größe dabei raus kommt. Und auch wenn eine Grafikabteilung ein Bild mit 1200 DPI anlegt bezieht sich da rein gar nichts davon auf die Darstellung am Bildschirm sondern die 1200 DPI sind dann die Angabe wie groß das Bild nach dem Drucken ist.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
jus

Registriert seit: 22. Jan 2005
328 Beiträge
 
Delphi 2007 Professional
 
#8

Re: Die Abmessung (in cm) und Auflösung eines Bildes ermitte

  Alt 1. Aug 2009, 23:17
@Luckie
OK "angedachten Abmesssungen" ist vielleicht bisschen blöd formuliert. Besser wäre wahrscheinlich "vorgegebene Auflösung" z.B. Breite 10,1cm Länge 15cm

@SirThornberry
Ich schließe mich der Meinung voll an, ich denke nämlich auch, dass die Abmessungen in irgendeiner Form in der JPG/TIF/BMP/... Datei gespeichert sind. Damit wären wir der wieder fast bei der ursprünglichen Frage:
Gibt es gute eine Bibliothek für die Ermittlung der Auflösung, ohne sich jedesmal mit der Formatdefinition auseinandersetzen zu müssen?

lg,
jus
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie
(Moderator)

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9

Re: Die Abmessung (in cm) und Auflösung eines Bildes ermitte

  Alt 2. Aug 2009, 01:12
Im Bitmap-Format sind sie bestimmt nicht gespeichert, dazu brauzchst du dir ja nur mal den Bitmap Header angucken.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.645 Beiträge
 
Delphi 2007 Enterprise
 
#10

Re: Die Abmessung (in cm) und Auflösung eines Bildes ermitte

  Alt 2. Aug 2009, 01:54
Im JPEG auch eher nicht, ausser evtl. in Exif Abschnitten. Formate die speziell für DTP entwickelt wurden, wie z.B. das Photoshop eigene, evtl. auch TIFF sehen solche Angaben schon eher vor - es gibt aber keinen Standard nach dem man für alle Formate in etwa gleich da dran kommt, zumal es auch optionale Angaben sein könnten. Du müsstest also entweder eine Loader-Lib finden die das für die entsprechenden Formate leistet, oder aber du legst selbst Hand an und wühlst in den Files. Der Regelfall dürfte allerdings sein, dass solche Angaben nicht hinterlegt sind.

Wenn du die Angaben dann aber dennoch mal hast, und diese in metrischer oder imperialer Einheit vorliegen, so kannst du Windows die Umrechnerei mittels SetMapMode() erledigen lassen. (DPI lassen sich ja auch leicht in die beiden o.g. Darstellungen umrechnen.)

Wenn du aber wie z.B. bei BMPs überhaupt keine Informationen ausser der absoluten Auflösung hast, dann MUSS irgend wer von Hand eine Zielgröße vorgeben um ein wohl definiertes Ergebnis zu erzielen.


Und am Rande: Die 72 DPI für Monitore sind auch eher ein grober Schätzwert - eher eine Richtgröße. Wie viel er nun wirklich genau macht bekommt man noch am ehesten heraus in dem man den User mit Linieal an den Bildschirm zitiert. Möglicherweise liefern neuere Bildschirme auch über die Datenleitung (mir fällt gerade ihr genauer Name nicht mehr ein) solche Infos, ob wie und wo man diese dann aber Abfragen kann weiss ich leider nicht. Zumal das auch wenn eher bei neueren Bildschirmen, und dann auch eher in gehobener Preisklasse implementiert ist.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

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 04:47 Uhr.
Powered by vBulletin® Copyright ©2000 - 2022, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf