Changed GetDimensions to handle a stream at the end and one exit Switched to using Action? over IDlibDotNet for Tick method Switched to using AsReadOnly over new() Moved Meta Base to Shared
68 lines
3.0 KiB
C#
68 lines
3.0 KiB
C#
using System.Text.Json;
|
|
using System.Text.Json.Serialization;
|
|
|
|
namespace View_by_Distance.Shared.Models;
|
|
|
|
public record ExifDirectoryBase(string? Aperture,
|
|
string? ApplicationNotes,
|
|
string? Artist,
|
|
string? BitsPerSample,
|
|
string? BodySerialNumber,
|
|
string? CameraOwnerName,
|
|
string? CompressedAverageBitsPerPixel,
|
|
string? Compression,
|
|
string? Copyright,
|
|
DateTime? DateTime,
|
|
DateTime? DateTimeDigitized,
|
|
DateTime? DateTimeOriginal,
|
|
string? DocumentName,
|
|
string? ExifVersion,
|
|
string? ExposureTime,
|
|
string? FileSource,
|
|
string? ImageDescription,
|
|
string? ImageHeight,
|
|
int? ImageHeightValue,
|
|
string? ImageNumber,
|
|
string? ImageUniqueId,
|
|
string? ImageWidth,
|
|
int? ImageWidthValue,
|
|
string? IsoSpeed,
|
|
string? LensMake,
|
|
string? LensModel,
|
|
string? LensSerialNumber,
|
|
string? Make,
|
|
string? MakerNote,
|
|
string? Model,
|
|
string? Orientation,
|
|
int? OrientationValue,
|
|
string? Rating,
|
|
string? RatingPercent,
|
|
string? SecurityClassification,
|
|
string? ShutterSpeed,
|
|
string? Software,
|
|
string? TimeZone,
|
|
string? TimeZoneDigitized,
|
|
string? TimeZoneOriginal,
|
|
string? UserComment,
|
|
string? WinAuthor,
|
|
string? WinComment,
|
|
string? WinKeywords,
|
|
string? WinSubject,
|
|
string? WinTitle,
|
|
string? XResolution,
|
|
string? YResolution)
|
|
{
|
|
|
|
public override string ToString()
|
|
{
|
|
string result = JsonSerializer.Serialize(this, ExifDirectoryBaseSourceGenerationContext.Default.ExifDirectoryBase);
|
|
return result;
|
|
}
|
|
|
|
}
|
|
|
|
[JsonSourceGenerationOptions(WriteIndented = true)]
|
|
[JsonSerializable(typeof(ExifDirectoryBase))]
|
|
public partial class ExifDirectoryBaseSourceGenerationContext : JsonSerializerContext
|
|
{
|
|
} |