Windows11 (25H2), display resolution 3840x2160, dpi scale 150%
EXIF - standard text tags - encoding
XnViewMP uses Type 2 when writing UTF-8 data to EXIF standard text tags.
This is common practice in the real world under EXIF 2.x, but it is not compliant with the EXIF 3.0 specification, which introduced the new Type 129 for UTF-8 text. report from KUSO EXIF Viewer for exif_written_by_XnViewMP.jpg from this post
Suggestion
- write
- explicitly show how standard text tags will be written:
- Modern Standard (EXIF 3.0)
tag Type: 129, encoding: UTF-8
Full support for all languages and emojis; requires EXIF 3.0 compatible software
- Legacy Compatibility (UTF-8 Workaround) default
tag Type: 2, encoding: UTF-8
Preserves all languages. Works across almost all modern apps and operating systems
- (optional) Strict Legacy (EXIF 2.x)
tag Type: 2, encoding: 7-bit ASCII
Strict spec compliance. Non-ASCII characters (eg Ø, 国, Λ, ե) are replaced with '?'
- Modern Standard (EXIF 3.0)
- explicitly show how standard text tags will be written:
- read
separate post
ref
| Field Group | EXIF 2.x Specification | EXIF 3.0 Specification | Extended / Legacy Practice |
|---|---|---|---|
| Standard Text Tags (Artist, Copyright, ImageDescription, Software, etc.) | Strictly 7-bit ASCII (Type 2). Multi-byte characters explicitly forbidden. | Formally updated to ASCII or UTF-8 (Type 129). Native multi-byte support. | Raw UTF-8 was widely injected informally by modern tools prior to EXIF 3.0. |
| Header-Encoded Tags (UserComment, GPSProcessingMethod, etc.) | UNDEFINED (Type 7). Uses 8-byte header prefix (Unicode\0 for UTF-16, JIS\0, ASCII\0). | Header mechanism retained for backward compatibility. | Was the only official way to store international text in EXIF 2.x. |
| Windows XP Tags (XPKeywords, XPTitle, XPComment, etc.) | BYTE (Type 1). Proprietary Microsoft extension using UTF-16LE / UCS-2. | Not part of core EXIF spec (Microsoft proprietary extension). | Native UTF-16LE support across Windows OS and file properties. |
Related