28 lines
1.1 KiB
Dart
28 lines
1.1 KiB
Dart
import 'package:aves/ref/metadata/exif.dart';
|
|
import 'package:aves/ref/metadata/xmp.dart';
|
|
import 'package:aves/widgets/viewer/info/metadata/xmp_namespaces.dart';
|
|
|
|
// cf https://github.com/adobe/xmp-docs/blob/master/XMPNamespaces/tiff.md
|
|
class XmpTiffNamespace extends XmpNamespace {
|
|
XmpTiffNamespace({required super.schemaRegistryPrefixes, required super.rawProps}) : super(nsUri: XmpNamespaces.tiff);
|
|
|
|
@override
|
|
String formatValue(XmpProp prop) {
|
|
final value = prop.value;
|
|
switch (prop.path) {
|
|
case 'tiff:Compression':
|
|
return Exif.getCompressionDescription(value);
|
|
case 'tiff:Orientation':
|
|
return Exif.getOrientationDescription(value);
|
|
case 'tiff:PhotometricInterpretation':
|
|
return Exif.getPhotometricInterpretationDescription(value);
|
|
case 'tiff:PlanarConfiguration':
|
|
return Exif.getPlanarConfigurationDescription(value);
|
|
case 'tiff:ResolutionUnit':
|
|
return Exif.getResolutionUnitDescription(value);
|
|
case 'tiff:YCbCrPositioning':
|
|
return Exif.getYCbCrPositioningDescription(value);
|
|
}
|
|
return value;
|
|
}
|
|
}
|