Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Blattgröße einer Tiffdatei ermitteln VBA

Blattgröße einer Tiffdatei ermitteln VBA
13.04.2005 09:43:56
Konrad
Hallo an alle Freeks...........
Gibt es eine Möglichkeit unter VBA (VBE Excel) in eine Tiffdatei "hineinzuschauen" und die Größe in inch oder cm zu ermitteln?
Jedes kleine Bildbearbeitungsprogramm kann dies ja unter "Information"
Ich würde dies benötigen, um CAD-Zeichnungsableitungen, die als Tiffausdrucke vorliegen in einem Batchprozess abzuarbeiten.
Vielen Dank für jeden Tip!!!!
mfg
Konrad
Anzeige

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Blattgröße einer Tiffdatei ermitteln VBA
13.04.2005 10:00:21
Werner
Hallo Konrad
Rechte Maustaste - Grafik formatieren..
im Register Größe
Das ist dieselbe Größe wie sie z.B. im Photoshop angezeigt wird.
Was Du aber nicht sehen kannst, ist die Auflösung. Auch sonst keine Metatdaten.
Gruss Werner
AW: Blattgröße einer Tiffdatei ermitteln VBA
13.04.2005 10:25:17
Konrad
Hallo Werner,
danke erst mal..........
Doch habe ich eigentlich vor, dass das VBA-Proggy die Datei untersucht und dann aufgrund der Information, die das Modul aus der Tiffdatei ausliest, entscheiden soll ob es sich um eine Zeichnung DIN A0 oder DIN A1 .... usw. handelt.
Der Dateiname ist dem Modul bekannt aber sonst halt nichts.........
mfg
Konrad
Anzeige
AW: Blattgröße einer Tiffdatei ermitteln VBA
13.04.2005 10:44:35
Werner
Hallo Konrad
Wie ensteht denn Deine *.Tiff Datei Aus einer CAD Zeichnung?
Ich Habe soeben mal zwie Zeichnungen konvertiert. Eine A0 und eine A1
Die Grösse A0 ist 371.5 zu 262.78cm
Die Grösse A1 ist 262.78 zu 185.85cm
Vielleicht hilft Dir Das weiter.
Ich lasse den Thread noch offen.
Gruss Werner
Anzeige
Noch offen
13.04.2005 10:48:14
Werner
Bin gerade gestört worden
sorry
AW: Blattgröße einer Tiffdatei ermitteln VBA
13.04.2005 10:50:25
Konrad
Hi Werner,
die Tiffdatei entsteht dadurch, dass ich in einen virtuellen Drucker plotte (Universal Dokument Converter) mit der Vorgabe z. B. Blatt A0, Auflösung 300x300 Dpi.
Damit steht im Tiff-Dokument das Attribut 118,1 cm x 81,4 cm für die Seitengröße.
Jetzt gilt es im Prinzip, das gleiche zu machen, was manuell mit der rechten Maustaste möglich ist, nämlich diese Attribute auszulesen, auszuwerten und dann einfach per VBA zu entscheiden wenn (118,1 cm x 81,4 cm ) dann handelt es sich um DIN A0.........
mfg
Konrad
Anzeige
AW: Blattgröße einer Tiffdatei ermitteln VBA
13.04.2005 13:23:25
Herbert
Hi,
wenn du nur diese eine Information brauchst, kannst das doch aus der Dateigröße
ableiten. Ansonsten recherchiere mal nach Dateieigenschaften Windows lesen, da
gabs vor kurzem eine Lösung.
mfg Herbert
AW: Blattgröße einer Tiffdatei ermitteln VBA
13.04.2005 14:00:06
Konrad
Hallo,
ganz so banal ist das aber nicht:
Die Dateigröße ist extrem abhängig von der Farbtiefe.
Leider habe ich aber in meinem vorherigen Posting Maße genannt, die aber nicht in der Dateiinfo stehen, sonder es steht definitiv die Anzahl Pixel in Breite und Höhe plus die Auflösung in Breite und Höhe als Dateiinfo in Tiff-Dateien.
Aufgrund der Info Pixel in der Breite plus Auflösung in der Breite wäre es nun kein Problem auf die Seitengröße zurückzurechnen.
Der Hinweis auf Windows und Dateieigenschaft führt leider in eine Sackgasse, da Microsoft hier eine Api-Schnittstelle nur für Office-Dateien zur Verfügung stellt.
Vielen Dank für alle Tips!
mfg
Konrad
Anzeige
AW: Blattgröße einer Tiffdatei ermitteln VBA
13.04.2005 14:15:08
Herbert
Hi,
kein API nötig, setzt mal einen Verweis auf MS Shell Controls and Automation und sieh dir
GetDetailsOf an.
mfg Herbert
AW: Blattgröße einer Tiffdatei ermitteln VBA
13.04.2005 16:42:46
Konrad
Hi,
Leider komme ich mit GetDetailsOf nur an ganz banale Attribute einer Tif-Datei ran.
Nach vielen Recherchen kam ich nur auf eine Lösung die für .jpg-dateien arbeitet:
ein Executable jhead.exe
würde mit jpg alles machen.................habs getestet....
Ein anderer Verweis geht immer auf "exif" hinaus, was mich jedoch endgültig überfordert, da ich eigentlich nur mit VBE von Excel arbeiten möchte..........
Microsoft nun verweist auf die .NET Framework Class Library --- was immer das auch ist.......:
NET Framework Class Library
Image.HorizontalResolution Property
Gets the horizontal resolution, in pixels-per-inch, of this Image object.
[Visual Basic]
Public ReadOnly Property HorizontalResolution As Single
........auf jeden Fall wäre hier eine adäquate Funktion vorhanden -- Kann mir nun vielleicht jemand auf die Sprünge helfen, ob dies in Office 2000 noch nutzbar gemacht werden kann (Microsoft bietet eine ganze Reihe von SDK's zum Download an)
..............
mfg
Konrad
Anzeige
AW: Blattgröße einer Tiffdatei ermitteln VBA
13.04.2005 17:29:18
Herbert
Hi,
habs gerade mal probiert, Item 27 liefert Höhe mal Breite, Item 28 die Breite in Pixeln
Item 29 die Höhe in Pixeln.
mfg Herbert
AW: Blattgröße einer Tiffdatei ermitteln VBA
14.04.2005 07:24:57
Konrad
Guten Morgen Herbert,
hab ich das richtig verstanden, Du hast die Funktionalität der .NET Framework Class Library verwendet?
Gehe ich recht in der Annahme, dass Dir dazu MS Visual Studio in einer aktuellen Version zur Verfügung steht -- oder wie ist Dir das gelungen?
Bitte lass mich nicht dumm sterben :-)
mfg
Konrad
Anzeige
AW: Blattgröße einer Tiffdatei ermitteln VBA
14.04.2005 09:53:35
Herbert
Hi,
wie schon geschrieben ganz normal über MS Shell controls and Automation und
GetDetailsOf. Liefert ein Array mit den 34 Informationen aus dem Dateiheader.
Der Code stammt von K.Rola hier im Forum vor ca. 4 Wochen veröffentlicht.
mfg Herbert
AW: Blattgröße einer Tiffdatei ermitteln VBA
14.04.2005 11:18:12
Konrad
Hallo Herbert,
ich steh leider voll auf dem Schlauch.
Finde weder den Beitrag von K.Rola noch krieg ich ein anderes Ergebnis:
Private Sub btnGetDetailsOf_Click()
Dim objShell As Shell
Dim objFolder As Folder
Set objShell = New Shell
Set objFolder = objShell.NameSpace("C:\DB")

If (Not objFolder Is Nothing) Then
Dim objFolderItem As FolderItem
Set objFolderItem = objFolder.ParseName("4600282710010.tif")
If (Not objFolderItem Is Nothing) Then
Dim szItem As String
szItem = objFolder.GetDetailsOf(objFolderItem, 27)
MsgBox szItem
End If

Set objFolderItem = Nothing
End If
Hättest Du nicht ein kleines Codeschnipsel für mich?
Offensichtlich stimmt das objFolderItem nicht ? dies ist aber
die einzige info die ich von Microsoft gefunden habe.........
mfg
Konrad
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige