Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

When I attempt to save a file as "picture.jpg", OS X unhelpfully informs me that the standard extension is ".jpeg". I think the bazillion .jpg files on the web beg to differ, so where does Apple get this notion that it is supposed to be ".jpeg"?

share|improve this question
1  
Where do you want to save an image as JPEG? Through Preview.app? Another image editing program? Or are you just renaming a file from Finder? –  slhck Jun 28 '12 at 6:02
add comment

2 Answers

up vote 1 down vote accepted

The 'standard' extension is derived from the Uniform Type Identifier ( http://en.wikipedia.org/wiki/Uniform_Type_Identifier ) which, for JPEG files is public.jpeg. It's just a different method of identifying a file (as opposed to looking at the MIME type information).

For more information about JPEG file formats: http://en.wikipedia.org/wiki/JPEG

share|improve this answer
    
Derived from the UTI? Are UTIs associated with a primary filename extension or something? –  Lauri Ranta Jun 28 '12 at 21:53
    
@LauriRanta See the Wikipedia article regarding the UTI specification as linked in the answer. –  Justin Pearce Jun 29 '12 at 14:23
    
I read the Wikipedia page again, but it didn't really explain it. .jpeg seems to be listed before .jpg in the main type declaration shown by $(locate lsregister) -dump. But the CFBundleTypeExtensions arrays don't always seem to be sorted or list the most common extensions at the top. Is there some way to get the primary extension in Objective-C or something? –  Lauri Ranta Jun 29 '12 at 23:42
add comment

After a coworker approached me about his displeasure with his system's apparent insistence on JPEGs ending in .jpeg under particular circumstances, I decided to look into this issue.

Following some research, I tried to coax the public.jpeg UTI declaration stored in /System/Library/CoreServices/CoreTypes.bundle/Contents/Info.plist to favor the .jpg extension over the .jpeg extension by switching the extension order like so:

<key>public.filename-extension</key>
<array>
    <string>jpg</string>
    <string>jpeg</string>
    <string>jpe</string>
</array>

`Rebooted the computer after making the modification, but alas: the application insisting on JPEGs ending in .jpeg (saving a .jpg attachment in Microsoft Outlook using the Message > Attachments > Save... menu item, if you must know) continued to insist on the .jpeg extension. Even removing the .jpeg extension declaration (a rather drastic measure) and another reboot didn't do anything to change this. Apple's Uniform Type Identifier system appears to be a many-headed hydra that is difficult to train.

Related observations: loading the URL of an online JPEG image that ends in the .jpg extension in a web browser will result in a drag and drop to the desktop sans changed extension in both Safari (5.1.7) and Firefox (15.0.1). Google Chrome (22.0.1229.79) however does change the .jpg to a .jpeg. In the aforementioned Microsoft Outlook (14.2.4) dragging and dropping a .jpg attachment to the desktop retains the .jpg extension, but going through the Message > Attachments > Save... menu or right-clicking the attachment and choosing Save As... will insist on a JPEG image filename needing to end in a .jpeg extension.

Between the crapshoot nature of this small sampling of application behaviors and my inability to effectively tweak a public identifier locally I cut my losses and gave up.

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.