Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Größe TIFF-Datei mittels VBS bestimmen (https://www.delphipraxis.net/115368-groesse-tiff-datei-mittels-vbs-bestimmen.html)

Bernhard Geyer 11. Jun 2008 07:26


Größe TIFF-Datei mittels VBS bestimmen
 
Gibt es eine einfache Möglichkeit in einem VBS Script die Größe in Pixel einer TIFF Datei zu ermitteln?
Bevorzugt wäre eine Lösung die mit Windows (ab XP?) Bordmitteln standardmäßig zu verfügung steht.

Codewalker 11. Jun 2008 09:57

Re: Größe TIFF-Datei mittels VBS bestimmen
 
Moin.

Wikipedia ist hier erstaunlich hilfreich:

Zitat:

Die ersten acht Bytes der TIFF-Datei enthalten eine Signatur, die die Byte order und die Magische Zahl 42 enthält, außerdem ein Offset zum ersten Image File Directory (IFD).

Ein solches IFD gibt Informationen zu einem Bild in der TIFF-Datei und besteht aus einer Liste von Tags, einzelnen Informationseinheiten. Ein solches Tag kann etwa die Breite des Bildes in Pixeln beschreiben oder den Namen der Software enthalten, die die TIFF-Datei erzeugt hat.

Jedes Tag hat eine eigene Nummer, die es kennzeichnet (z. B. 256 für Bildbreite) und einen Typ (z. B. 16-Bit-Ganzzahlen, 32-Bit-Gleitkommazahlen, Zeichenketten u. v. m.). Manche Tags müssen vorhanden sein (z. B. die Bildbreite), andere sind optional (z. B. der Name der Software). Eine Reihe von Anwendungen verwendet proprietäre Tags. Der Aufbau der Daten, die in einem solchen Tag gespeichert oder referenziert werden, ist dann i. A. nicht dokumentiert. Eine Nummer für eigene proprietäre Tags kann man bei Adobe beantragen.

Am Ende des IFD steht ein Offset-Wert, der das nächste IFD in der Datei referenziert, oder aber 0, falls das aktuelle IFD das letzte war. Auf diese Art und Weise können beliebig viele Bilder in der Datei untergebracht werden, solange die Gesamtmenge der Daten vier Gigabytes nicht übersteigt (siehe auch Einschränkungen weiter oben).

Die IFD-Struktur wird im Exif-Teil von JFIF-Dateien wiederverwendet.
Die Spezifikation gibt es hier. Ansonsten könnte man zur Inspiration noch in der LibTIFF schmökern. Wobei VBS das sicherlich nicht einfacher machen wird (Ich weiß nicht, wie es mit Dateizugriff in VBS aussieht)

Bernhard Geyer 11. Jun 2008 10:05

Re: Größe TIFF-Datei mittels VBS bestimmen
 
Die Spezifikation kenn ich und habe diverse Funktionen schon dafür geschrieben. Jedoch suche ich für einen Kunden ein Lösung ohne das *irgendwelche* Zusatzsoftware oder relativ viele Zeilen VBS-Code geschrieben werden muss einen Ansatz. Der Windows-Explorer verrät mir ja auch wie groß die Datei ist. Und falls es hier eine standardmäßig installiertes COM-Inteface gibt welche über 2-3 Zeilen Code sowas anbietet würde ich gern dieses nehmen.

Codewalker 11. Jun 2008 10:30

Re: Größe TIFF-Datei mittels VBS bestimmen
 
Das einzige was bei mir im Zusammenhang mit TIFFs registriert ist, ist C:\PROGRA~1\COMMON~1\MICROS~1\MODI\11.0\MSPFILT.DL L. Habe nur gerade keine Zeit, da mal nachzuforschen, aber evtl. hilft dir das ja schon weiter


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