|
|
|
@ -13,60 +13,57 @@ namespace SixLabors.ImageSharp.Metadata.Profiles.Iptc |
|
|
|
/// </summary>
|
|
|
|
/// <param name="tag">The tag to check the max length for.</param>
|
|
|
|
/// <returns>The maximum length.</returns>
|
|
|
|
public static int MaxLength(this IptcTag tag) |
|
|
|
public static int MaxLength(this IptcTag tag) => tag switch |
|
|
|
{ |
|
|
|
return tag switch |
|
|
|
{ |
|
|
|
IptcTag.RecordVersion => 2, |
|
|
|
IptcTag.ObjectType => 67, |
|
|
|
IptcTag.ObjectAttribute => 68, |
|
|
|
IptcTag.Name => 64, |
|
|
|
IptcTag.EditStatus => 64, |
|
|
|
IptcTag.EditorialUpdate => 2, |
|
|
|
IptcTag.Urgency => 1, |
|
|
|
IptcTag.SubjectReference => 236, |
|
|
|
IptcTag.Category => 3, |
|
|
|
IptcTag.SupplementalCategories => 32, |
|
|
|
IptcTag.FixtureIdentifier => 32, |
|
|
|
IptcTag.Keywords => 64, |
|
|
|
IptcTag.LocationCode => 3, |
|
|
|
IptcTag.LocationName => 64, |
|
|
|
IptcTag.ReleaseDate => 8, |
|
|
|
IptcTag.ReleaseTime => 11, |
|
|
|
IptcTag.ExpirationDate => 8, |
|
|
|
IptcTag.ExpirationTime => 11, |
|
|
|
IptcTag.SpecialInstructions => 256, |
|
|
|
IptcTag.ActionAdvised => 2, |
|
|
|
IptcTag.ReferenceService => 10, |
|
|
|
IptcTag.ReferenceDate => 8, |
|
|
|
IptcTag.ReferenceNumber => 8, |
|
|
|
IptcTag.CreatedDate => 8, |
|
|
|
IptcTag.CreatedTime => 11, |
|
|
|
IptcTag.DigitalCreationDate => 8, |
|
|
|
IptcTag.DigitalCreationTime => 11, |
|
|
|
IptcTag.OriginatingProgram => 32, |
|
|
|
IptcTag.ProgramVersion => 10, |
|
|
|
IptcTag.ObjectCycle => 1, |
|
|
|
IptcTag.Byline => 32, |
|
|
|
IptcTag.BylineTitle => 32, |
|
|
|
IptcTag.City => 32, |
|
|
|
IptcTag.SubLocation => 32, |
|
|
|
IptcTag.ProvinceState => 32, |
|
|
|
IptcTag.CountryCode => 3, |
|
|
|
IptcTag.Country => 64, |
|
|
|
IptcTag.OriginalTransmissionReference => 32, |
|
|
|
IptcTag.Headline => 256, |
|
|
|
IptcTag.Credit => 32, |
|
|
|
IptcTag.Source => 32, |
|
|
|
IptcTag.CopyrightNotice => 128, |
|
|
|
IptcTag.Contact => 128, |
|
|
|
IptcTag.Caption => 2000, |
|
|
|
IptcTag.CaptionWriter => 32, |
|
|
|
IptcTag.ImageType => 2, |
|
|
|
IptcTag.ImageOrientation => 1, |
|
|
|
_ => 256 |
|
|
|
}; |
|
|
|
} |
|
|
|
IptcTag.RecordVersion => 2, |
|
|
|
IptcTag.ObjectType => 67, |
|
|
|
IptcTag.ObjectAttribute => 68, |
|
|
|
IptcTag.Name => 64, |
|
|
|
IptcTag.EditStatus => 64, |
|
|
|
IptcTag.EditorialUpdate => 2, |
|
|
|
IptcTag.Urgency => 1, |
|
|
|
IptcTag.SubjectReference => 236, |
|
|
|
IptcTag.Category => 3, |
|
|
|
IptcTag.SupplementalCategories => 32, |
|
|
|
IptcTag.FixtureIdentifier => 32, |
|
|
|
IptcTag.Keywords => 64, |
|
|
|
IptcTag.LocationCode => 3, |
|
|
|
IptcTag.LocationName => 64, |
|
|
|
IptcTag.ReleaseDate => 8, |
|
|
|
IptcTag.ReleaseTime => 11, |
|
|
|
IptcTag.ExpirationDate => 8, |
|
|
|
IptcTag.ExpirationTime => 11, |
|
|
|
IptcTag.SpecialInstructions => 256, |
|
|
|
IptcTag.ActionAdvised => 2, |
|
|
|
IptcTag.ReferenceService => 10, |
|
|
|
IptcTag.ReferenceDate => 8, |
|
|
|
IptcTag.ReferenceNumber => 8, |
|
|
|
IptcTag.CreatedDate => 8, |
|
|
|
IptcTag.CreatedTime => 11, |
|
|
|
IptcTag.DigitalCreationDate => 8, |
|
|
|
IptcTag.DigitalCreationTime => 11, |
|
|
|
IptcTag.OriginatingProgram => 32, |
|
|
|
IptcTag.ProgramVersion => 10, |
|
|
|
IptcTag.ObjectCycle => 1, |
|
|
|
IptcTag.Byline => 32, |
|
|
|
IptcTag.BylineTitle => 32, |
|
|
|
IptcTag.City => 32, |
|
|
|
IptcTag.SubLocation => 32, |
|
|
|
IptcTag.ProvinceState => 32, |
|
|
|
IptcTag.CountryCode => 3, |
|
|
|
IptcTag.Country => 64, |
|
|
|
IptcTag.OriginalTransmissionReference => 32, |
|
|
|
IptcTag.Headline => 256, |
|
|
|
IptcTag.Credit => 32, |
|
|
|
IptcTag.Source => 32, |
|
|
|
IptcTag.CopyrightNotice => 128, |
|
|
|
IptcTag.Contact => 128, |
|
|
|
IptcTag.Caption => 2000, |
|
|
|
IptcTag.CaptionWriter => 32, |
|
|
|
IptcTag.ImageType => 2, |
|
|
|
IptcTag.ImageOrientation => 1, |
|
|
|
_ => 256 |
|
|
|
}; |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Determines if the given tag can be repeated according to the specification.
|
|
|
|
|