Module:File/doc
Scope
File title and file information. If the code here grows beyond a border line, this should be converted to an interface and the processing code should be outsourced.[clarification needed]
Usage
Note that an error is thrown if the title can't be constructed (e.g. a title containing invalid characters is supplied) or metadata isn't available (e.g. due to missing file or extraction error). It is your responsibility to catch them; in Lua through pcall(); from Wikitext as {{#iferror: {{#invoke:File|function|file=File:P%bar]baz.qqq}} | meaningful message}}.
From Wikitext
Examples:
{{#invoke:File|woExtension|file=File:Test.C.JpeG}}→File:Test.C{{#invoke:File|extension|file=File:Test.C.JpeG}}→jpeg{{#invoke:File|csExtension|file=File:Test.C.JpeG}}→JpeG{{#invoke:File|mime|file=File:DOESNOTEXIST-0a8de8c83.Png}}→image/pngdeprecated (but works even if the file does not exist and has no metadata){{#invoke:File|mimeType|file=File:DOESNOTEXIST-0a8de8c83.Png}}→preferred (but will not work if the file does not exist to parse its metadata){{#invoke:File|fileExists|file=File:Commons-logo.png}}→true{{#invoke:File|fileExists|file=File:DOESNOTEXIST-0a8de8c83.png}}→{{#invoke:File|fileExistsRelaxed|file=File:Ba[!#llot-sprite.png}}→
{{#invoke:File|width|file=File:Commons-logo.png}}→114{{#invoke:File|height|file=File:Commons-logo.png}}→153{{#invoke:File|dimensions|file=File:Commons-logo.png}}→114 × 153{{#invoke:File|size|file=File:Commons-logo.png}}→5557