Skip to content

Commit 3e3a5b5

Browse files
committed
Add file type detection for PDF
1 parent 0ab5da8 commit 3e3a5b5

File tree

6 files changed

+11
-0
lines changed

6 files changed

+11
-0
lines changed

MetadataExtractor/PublicAPI/net462/PublicAPI.Unshipped.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,7 @@ MetadataExtractor.Util.FileType.Avif = 28 -> MetadataExtractor.Util.FileType
118118
MetadataExtractor.Util.FileType.Dng = 29 -> MetadataExtractor.Util.FileType
119119
MetadataExtractor.Util.FileType.GoPro = 30 -> MetadataExtractor.Util.FileType
120120
MetadataExtractor.Util.FileType.Kdc = 31 -> MetadataExtractor.Util.FileType
121+
MetadataExtractor.Util.FileType.Pdf = 35 -> MetadataExtractor.Util.FileType
121122
MetadataExtractor.Util.FileType.ThreeFR = 32 -> MetadataExtractor.Util.FileType
122123
MetadataExtractor.Util.FileType.Pef = 33 -> MetadataExtractor.Util.FileType
123124
MetadataExtractor.Util.FileType.Srw = 34 -> MetadataExtractor.Util.FileType

MetadataExtractor/PublicAPI/net8.0/PublicAPI.Unshipped.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,7 @@ MetadataExtractor.Util.FileType.Avif = 28 -> MetadataExtractor.Util.FileType
117117
MetadataExtractor.Util.FileType.Dng = 29 -> MetadataExtractor.Util.FileType
118118
MetadataExtractor.Util.FileType.GoPro = 30 -> MetadataExtractor.Util.FileType
119119
MetadataExtractor.Util.FileType.Kdc = 31 -> MetadataExtractor.Util.FileType
120+
MetadataExtractor.Util.FileType.Pdf = 35 -> MetadataExtractor.Util.FileType
120121
MetadataExtractor.Util.FileType.ThreeFR = 32 -> MetadataExtractor.Util.FileType
121122
MetadataExtractor.Util.FileType.Pef = 33 -> MetadataExtractor.Util.FileType
122123
MetadataExtractor.Util.FileType.Srw = 34 -> MetadataExtractor.Util.FileType

MetadataExtractor/PublicAPI/netstandard1.3/PublicAPI.Unshipped.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,7 @@ MetadataExtractor.Util.FileType.Avif = 28 -> MetadataExtractor.Util.FileType
118118
MetadataExtractor.Util.FileType.Dng = 29 -> MetadataExtractor.Util.FileType
119119
MetadataExtractor.Util.FileType.GoPro = 30 -> MetadataExtractor.Util.FileType
120120
MetadataExtractor.Util.FileType.Kdc = 31 -> MetadataExtractor.Util.FileType
121+
MetadataExtractor.Util.FileType.Pdf = 35 -> MetadataExtractor.Util.FileType
121122
MetadataExtractor.Util.FileType.ThreeFR = 32 -> MetadataExtractor.Util.FileType
122123
MetadataExtractor.Util.FileType.Pef = 33 -> MetadataExtractor.Util.FileType
123124
MetadataExtractor.Util.FileType.Srw = 34 -> MetadataExtractor.Util.FileType

MetadataExtractor/PublicAPI/netstandard2.1/PublicAPI.Unshipped.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,7 @@ MetadataExtractor.Util.FileType.Avif = 28 -> MetadataExtractor.Util.FileType
117117
MetadataExtractor.Util.FileType.Dng = 29 -> MetadataExtractor.Util.FileType
118118
MetadataExtractor.Util.FileType.GoPro = 30 -> MetadataExtractor.Util.FileType
119119
MetadataExtractor.Util.FileType.Kdc = 31 -> MetadataExtractor.Util.FileType
120+
MetadataExtractor.Util.FileType.Pdf = 35 -> MetadataExtractor.Util.FileType
120121
MetadataExtractor.Util.FileType.ThreeFR = 32 -> MetadataExtractor.Util.FileType
121122
MetadataExtractor.Util.FileType.Pef = 33 -> MetadataExtractor.Util.FileType
122123
MetadataExtractor.Util.FileType.Srw = 34 -> MetadataExtractor.Util.FileType

MetadataExtractor/Util/FileType.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -110,6 +110,8 @@ public enum FileType
110110

111111
/// <summary>SRW (Samsung) Image File Format.</summary>
112112
Srw = 34,
113+
114+
Pdf = 35
113115
}
114116

115117
public static class FileTypeExtensions
@@ -151,6 +153,7 @@ public static class FileTypeExtensions
151153
"3FR",
152154
"PEF",
153155
"SRW",
156+
"PDF"
154157
];
155158

156159
private static readonly string[] _longNames =
@@ -190,6 +193,7 @@ public static class FileTypeExtensions
190193
"Hasselblad Raw",
191194
"Pentax Raw",
192195
"Samsung Raw",
196+
"Portable Document Format"
193197
];
194198

195199
private static readonly string?[] _mimeTypes =
@@ -229,6 +233,7 @@ public static class FileTypeExtensions
229233
"image/x-hasselblad-3fr",
230234
"image/x-pentax-pef",
231235
"image/x-samsung-srw",
236+
"application/pdf"
232237
];
233238

234239
private static readonly string[]?[] _extensions =
@@ -268,6 +273,7 @@ public static class FileTypeExtensions
268273
["3fr"],
269274
["pef"],
270275
["srw"],
276+
["pdf"]
271277
];
272278

273279
public static string GetName(this FileType fileType)

MetadataExtractor/Util/FileTypeDetector.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ public static class FileTypeDetector
4545
{ FileType.Pcx, [0x0A, 0x02, 0x01] },
4646
{ FileType.Pcx, [0x0A, 0x03, 0x01] },
4747
{ FileType.Pcx, [0x0A, 0x05, 0x01] },
48+
{ FileType.Pdf, "%PDF"u8 },
4849
{ FileType.Eps, "%!PS"u8 },
4950
{ FileType.Eps, [0xC5, 0xD0, 0xD3, 0xC6] },
5051
// NOTE several file types match this, which we handle in TryDisambiguate: DNG, GPR (GoPro), KDC (Kodak), 3FR (Hasselblad)

0 commit comments

Comments
 (0)