From db3340eca3fad47e92b06e493abb439655d15cf9 Mon Sep 17 00:00:00 2001 From: Pat Thoyts Date: Sun, 14 Dec 2025 22:26:01 +0000 Subject: [PATCH] C# implementation of JPEG and EXIF reader --- dotnet/.editorconfig | 378 ++++++++++++++++++++++ dotnet/.gitignore | 5 + dotnet/JpegUtil.Test/Data/a.jpg | Bin 0 -> 182977 bytes dotnet/JpegUtil.Test/JpegReaderTests.cs | 28 ++ dotnet/JpegUtil.Test/JpegUtil.Test.csproj | 26 ++ dotnet/JpegUtil.sln | 48 +++ dotnet/JpegUtil/Exif.cs | 295 +++++++++++++++++ dotnet/JpegUtil/JpegReader.cs | 179 ++++++++++ dotnet/JpegUtil/JpegUtil.csproj | 10 + 9 files changed, 969 insertions(+) create mode 100644 dotnet/.editorconfig create mode 100644 dotnet/.gitignore create mode 100644 dotnet/JpegUtil.Test/Data/a.jpg create mode 100644 dotnet/JpegUtil.Test/JpegReaderTests.cs create mode 100644 dotnet/JpegUtil.Test/JpegUtil.Test.csproj create mode 100644 dotnet/JpegUtil.sln create mode 100644 dotnet/JpegUtil/Exif.cs create mode 100644 dotnet/JpegUtil/JpegReader.cs create mode 100644 dotnet/JpegUtil/JpegUtil.csproj diff --git a/dotnet/.editorconfig b/dotnet/.editorconfig new file mode 100644 index 0000000..668ff28 --- /dev/null +++ b/dotnet/.editorconfig @@ -0,0 +1,378 @@ +root = true + +# All files +[*] +indent_style = space + +# Xml files +[*.xml] +indent_size = 2 + +# C# files +[*.cs] + +#### Core EditorConfig Options #### + +# Indentation and spacing +indent_size = 4 +tab_width = 4 + +# New line preferences +insert_final_newline = false + +#### .NET Coding Conventions #### +[*.{cs,vb}] + +# Organize usings +dotnet_separate_import_directive_groups = true +dotnet_sort_system_directives_first = true +file_header_template = unset + +# this. and Me. preferences +dotnet_style_qualification_for_event = false:silent +dotnet_style_qualification_for_field = false:silent +dotnet_style_qualification_for_method = false:silent +dotnet_style_qualification_for_property = false:silent + +# Language keywords vs BCL types preferences +dotnet_style_predefined_type_for_locals_parameters_members = true:silent +dotnet_style_predefined_type_for_member_access = true:silent + +# Parentheses preferences +dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity:silent +dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:silent +dotnet_style_parentheses_in_other_operators = never_if_unnecessary:silent +dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity:silent + +# Modifier preferences +dotnet_style_require_accessibility_modifiers = for_non_interface_members:silent + +# Expression-level preferences +dotnet_style_coalesce_expression = true:suggestion +dotnet_style_collection_initializer = true:suggestion +dotnet_style_explicit_tuple_names = true:suggestion +dotnet_style_namespace_match_folder = true:suggestion +dotnet_style_null_propagation = true:suggestion +dotnet_style_object_initializer = true:suggestion +dotnet_style_operator_placement_when_wrapping = beginning_of_line +dotnet_style_prefer_auto_properties = true:suggestion +dotnet_style_prefer_collection_expression = when_types_loosely_match:suggestion +dotnet_style_prefer_compound_assignment = true:suggestion +dotnet_style_prefer_conditional_expression_over_assignment = true:suggestion +dotnet_style_prefer_conditional_expression_over_return = true:suggestion +dotnet_style_prefer_foreach_explicit_cast_in_source = when_strongly_typed:suggestion +dotnet_style_prefer_inferred_anonymous_type_member_names = true:suggestion +dotnet_style_prefer_inferred_tuple_names = true:suggestion +dotnet_style_prefer_is_null_check_over_reference_equality_method = true:suggestion +dotnet_style_prefer_simplified_boolean_expressions = true:suggestion +dotnet_style_prefer_simplified_interpolation = true:suggestion + +# Field preferences +dotnet_style_readonly_field = true:warning + +# Parameter preferences +dotnet_code_quality_unused_parameters = all:suggestion + +# Suppression preferences +dotnet_remove_unnecessary_suppression_exclusions = none + +#### C# Coding Conventions #### +[*.cs] + +# var preferences +csharp_style_var_elsewhere = false:silent +csharp_style_var_for_built_in_types = false:silent +csharp_style_var_when_type_is_apparent = false:silent + +# Expression-bodied members +csharp_style_expression_bodied_accessors = true:silent +csharp_style_expression_bodied_constructors = false:silent +csharp_style_expression_bodied_indexers = true:silent +csharp_style_expression_bodied_lambdas = true:suggestion +csharp_style_expression_bodied_local_functions = false:silent +csharp_style_expression_bodied_methods = false:silent +csharp_style_expression_bodied_operators = false:silent +csharp_style_expression_bodied_properties = true:silent + +# Pattern matching preferences +csharp_style_pattern_matching_over_as_with_null_check = true:suggestion +csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion +csharp_style_prefer_extended_property_pattern = true:suggestion +csharp_style_prefer_not_pattern = true:suggestion +csharp_style_prefer_pattern_matching = true:silent +csharp_style_prefer_switch_expression = true:suggestion + +# Null-checking preferences +csharp_style_conditional_delegate_call = true:suggestion + +# Modifier preferences +csharp_prefer_static_anonymous_function = true:suggestion +csharp_prefer_static_local_function = true:warning +csharp_preferred_modifier_order = public,private,protected,internal,file,const,static,extern,new,virtual,abstract,sealed,override,readonly,unsafe,required,volatile,async:suggestion +csharp_style_prefer_readonly_struct = true:suggestion +csharp_style_prefer_readonly_struct_member = true:suggestion + +# Code-block preferences +csharp_prefer_braces = true:silent +csharp_prefer_simple_using_statement = true:suggestion +csharp_style_namespace_declarations = file_scoped:suggestion +csharp_style_prefer_method_group_conversion = true:silent +csharp_style_prefer_primary_constructors = true:suggestion +csharp_style_prefer_top_level_statements = true:silent + +# Expression-level preferences +csharp_prefer_simple_default_expression = true:suggestion +csharp_style_deconstructed_variable_declaration = true:suggestion +csharp_style_implicit_object_creation_when_type_is_apparent = true:suggestion +csharp_style_inlined_variable_declaration = true:suggestion +csharp_style_prefer_index_operator = true:suggestion +csharp_style_prefer_local_over_anonymous_function = true:suggestion +csharp_style_prefer_null_check_over_type_check = true:suggestion +csharp_style_prefer_range_operator = true:suggestion +csharp_style_prefer_tuple_swap = true:suggestion +csharp_style_prefer_utf8_string_literals = true:suggestion +csharp_style_throw_expression = true:suggestion +csharp_style_unused_value_assignment_preference = discard_variable:suggestion +csharp_style_unused_value_expression_statement_preference = discard_variable:silent + +# 'using' directive preferences +csharp_using_directive_placement = outside_namespace:silent + +#### C# Formatting Rules #### + +# New line preferences +csharp_new_line_before_catch = true +csharp_new_line_before_else = true +csharp_new_line_before_finally = true +csharp_new_line_before_members_in_anonymous_types = true +csharp_new_line_before_members_in_object_initializers = true +csharp_new_line_before_open_brace = all +csharp_new_line_between_query_expression_clauses = true + +# Indentation preferences +csharp_indent_block_contents = true +csharp_indent_braces = false +csharp_indent_case_contents = true +csharp_indent_case_contents_when_block = false +csharp_indent_labels = one_less_than_current +csharp_indent_switch_labels = true + +# Space preferences +csharp_space_after_cast = false +csharp_space_after_colon_in_inheritance_clause = true +csharp_space_after_comma = true +csharp_space_after_dot = false +csharp_space_after_keywords_in_control_flow_statements = true +csharp_space_after_semicolon_in_for_statement = true +csharp_space_around_binary_operators = before_and_after +csharp_space_around_declaration_statements = false +csharp_space_before_colon_in_inheritance_clause = true +csharp_space_before_comma = false +csharp_space_before_dot = false +csharp_space_before_open_square_brackets = false +csharp_space_before_semicolon_in_for_statement = false +csharp_space_between_empty_square_brackets = false +csharp_space_between_method_call_empty_parameter_list_parentheses = false +csharp_space_between_method_call_name_and_opening_parenthesis = false +csharp_space_between_method_call_parameter_list_parentheses = false +csharp_space_between_method_declaration_empty_parameter_list_parentheses = false +csharp_space_between_method_declaration_name_and_open_parenthesis = false +csharp_space_between_method_declaration_parameter_list_parentheses = false +csharp_space_between_parentheses = false +csharp_space_between_square_brackets = false + +# Wrapping preferences +csharp_preserve_single_line_blocks = true +csharp_preserve_single_line_statements = true + +#### Naming styles #### +[*.{cs,vb}] + +# Naming rules + +dotnet_naming_rule.types_and_namespaces_should_be_pascalcase.severity = suggestion +dotnet_naming_rule.types_and_namespaces_should_be_pascalcase.symbols = types_and_namespaces +dotnet_naming_rule.types_and_namespaces_should_be_pascalcase.style = pascalcase + +dotnet_naming_rule.interfaces_should_be_ipascalcase.severity = suggestion +dotnet_naming_rule.interfaces_should_be_ipascalcase.symbols = interfaces +dotnet_naming_rule.interfaces_should_be_ipascalcase.style = ipascalcase + +dotnet_naming_rule.type_parameters_should_be_tpascalcase.severity = suggestion +dotnet_naming_rule.type_parameters_should_be_tpascalcase.symbols = type_parameters +dotnet_naming_rule.type_parameters_should_be_tpascalcase.style = tpascalcase + +dotnet_naming_rule.methods_should_be_pascalcase.severity = suggestion +dotnet_naming_rule.methods_should_be_pascalcase.symbols = methods +dotnet_naming_rule.methods_should_be_pascalcase.style = pascalcase + +dotnet_naming_rule.properties_should_be_pascalcase.severity = suggestion +dotnet_naming_rule.properties_should_be_pascalcase.symbols = properties +dotnet_naming_rule.properties_should_be_pascalcase.style = pascalcase + +dotnet_naming_rule.events_should_be_pascalcase.severity = suggestion +dotnet_naming_rule.events_should_be_pascalcase.symbols = events +dotnet_naming_rule.events_should_be_pascalcase.style = pascalcase + +dotnet_naming_rule.local_variables_should_be_camelcase.severity = suggestion +dotnet_naming_rule.local_variables_should_be_camelcase.symbols = local_variables +dotnet_naming_rule.local_variables_should_be_camelcase.style = camelcase + +dotnet_naming_rule.local_constants_should_be_camelcase.severity = suggestion +dotnet_naming_rule.local_constants_should_be_camelcase.symbols = local_constants +dotnet_naming_rule.local_constants_should_be_camelcase.style = camelcase + +dotnet_naming_rule.parameters_should_be_camelcase.severity = suggestion +dotnet_naming_rule.parameters_should_be_camelcase.symbols = parameters +dotnet_naming_rule.parameters_should_be_camelcase.style = camelcase + +dotnet_naming_rule.public_fields_should_be_pascalcase.severity = suggestion +dotnet_naming_rule.public_fields_should_be_pascalcase.symbols = public_fields +dotnet_naming_rule.public_fields_should_be_pascalcase.style = pascalcase + +dotnet_naming_rule.private_fields_should_be__camelcase.severity = suggestion +dotnet_naming_rule.private_fields_should_be__camelcase.symbols = private_fields +dotnet_naming_rule.private_fields_should_be__camelcase.style = _camelcase + +dotnet_naming_rule.private_static_fields_should_be_s_camelcase.severity = suggestion +dotnet_naming_rule.private_static_fields_should_be_s_camelcase.symbols = private_static_fields +dotnet_naming_rule.private_static_fields_should_be_s_camelcase.style = s_camelcase + +dotnet_naming_rule.public_constant_fields_should_be_pascalcase.severity = suggestion +dotnet_naming_rule.public_constant_fields_should_be_pascalcase.symbols = public_constant_fields +dotnet_naming_rule.public_constant_fields_should_be_pascalcase.style = pascalcase + +dotnet_naming_rule.private_constant_fields_should_be_pascalcase.severity = suggestion +dotnet_naming_rule.private_constant_fields_should_be_pascalcase.symbols = private_constant_fields +dotnet_naming_rule.private_constant_fields_should_be_pascalcase.style = pascalcase + +dotnet_naming_rule.public_static_readonly_fields_should_be_pascalcase.severity = suggestion +dotnet_naming_rule.public_static_readonly_fields_should_be_pascalcase.symbols = public_static_readonly_fields +dotnet_naming_rule.public_static_readonly_fields_should_be_pascalcase.style = pascalcase + +dotnet_naming_rule.private_static_readonly_fields_should_be_pascalcase.severity = suggestion +dotnet_naming_rule.private_static_readonly_fields_should_be_pascalcase.symbols = private_static_readonly_fields +dotnet_naming_rule.private_static_readonly_fields_should_be_pascalcase.style = pascalcase + +dotnet_naming_rule.enums_should_be_pascalcase.severity = suggestion +dotnet_naming_rule.enums_should_be_pascalcase.symbols = enums +dotnet_naming_rule.enums_should_be_pascalcase.style = pascalcase + +dotnet_naming_rule.local_functions_should_be_pascalcase.severity = suggestion +dotnet_naming_rule.local_functions_should_be_pascalcase.symbols = local_functions +dotnet_naming_rule.local_functions_should_be_pascalcase.style = pascalcase + +dotnet_naming_rule.non_field_members_should_be_pascalcase.severity = suggestion +dotnet_naming_rule.non_field_members_should_be_pascalcase.symbols = non_field_members +dotnet_naming_rule.non_field_members_should_be_pascalcase.style = pascalcase + +# Symbol specifications + +dotnet_naming_symbols.interfaces.applicable_kinds = interface +dotnet_naming_symbols.interfaces.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.interfaces.required_modifiers = + +dotnet_naming_symbols.enums.applicable_kinds = enum +dotnet_naming_symbols.enums.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.enums.required_modifiers = + +dotnet_naming_symbols.events.applicable_kinds = event +dotnet_naming_symbols.events.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.events.required_modifiers = + +dotnet_naming_symbols.methods.applicable_kinds = method +dotnet_naming_symbols.methods.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.methods.required_modifiers = + +dotnet_naming_symbols.properties.applicable_kinds = property +dotnet_naming_symbols.properties.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.properties.required_modifiers = + +dotnet_naming_symbols.public_fields.applicable_kinds = field +dotnet_naming_symbols.public_fields.applicable_accessibilities = public, internal +dotnet_naming_symbols.public_fields.required_modifiers = + +dotnet_naming_symbols.private_fields.applicable_kinds = field +dotnet_naming_symbols.private_fields.applicable_accessibilities = private, protected, protected_internal, private_protected +dotnet_naming_symbols.private_fields.required_modifiers = + +dotnet_naming_symbols.private_static_fields.applicable_kinds = field +dotnet_naming_symbols.private_static_fields.applicable_accessibilities = private, protected, protected_internal, private_protected +dotnet_naming_symbols.private_static_fields.required_modifiers = static + +dotnet_naming_symbols.types_and_namespaces.applicable_kinds = namespace, class, struct, interface, enum +dotnet_naming_symbols.types_and_namespaces.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.types_and_namespaces.required_modifiers = + +dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method +dotnet_naming_symbols.non_field_members.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected +dotnet_naming_symbols.non_field_members.required_modifiers = + +dotnet_naming_symbols.type_parameters.applicable_kinds = namespace +dotnet_naming_symbols.type_parameters.applicable_accessibilities = * +dotnet_naming_symbols.type_parameters.required_modifiers = + +dotnet_naming_symbols.private_constant_fields.applicable_kinds = field +dotnet_naming_symbols.private_constant_fields.applicable_accessibilities = private, protected, protected_internal, private_protected +dotnet_naming_symbols.private_constant_fields.required_modifiers = const + +dotnet_naming_symbols.local_variables.applicable_kinds = local +dotnet_naming_symbols.local_variables.applicable_accessibilities = local +dotnet_naming_symbols.local_variables.required_modifiers = + +dotnet_naming_symbols.local_constants.applicable_kinds = local +dotnet_naming_symbols.local_constants.applicable_accessibilities = local +dotnet_naming_symbols.local_constants.required_modifiers = const + +dotnet_naming_symbols.parameters.applicable_kinds = parameter +dotnet_naming_symbols.parameters.applicable_accessibilities = * +dotnet_naming_symbols.parameters.required_modifiers = + +dotnet_naming_symbols.public_constant_fields.applicable_kinds = field +dotnet_naming_symbols.public_constant_fields.applicable_accessibilities = public, internal +dotnet_naming_symbols.public_constant_fields.required_modifiers = const + +dotnet_naming_symbols.public_static_readonly_fields.applicable_kinds = field +dotnet_naming_symbols.public_static_readonly_fields.applicable_accessibilities = public, internal +dotnet_naming_symbols.public_static_readonly_fields.required_modifiers = readonly, static + +dotnet_naming_symbols.private_static_readonly_fields.applicable_kinds = field +dotnet_naming_symbols.private_static_readonly_fields.applicable_accessibilities = private, protected, protected_internal, private_protected +dotnet_naming_symbols.private_static_readonly_fields.required_modifiers = readonly, static + +dotnet_naming_symbols.local_functions.applicable_kinds = local_function +dotnet_naming_symbols.local_functions.applicable_accessibilities = * +dotnet_naming_symbols.local_functions.required_modifiers = + +# Naming styles + +dotnet_naming_style.pascalcase.required_prefix = +dotnet_naming_style.pascalcase.required_suffix = +dotnet_naming_style.pascalcase.word_separator = +dotnet_naming_style.pascalcase.capitalization = pascal_case + +dotnet_naming_style.ipascalcase.required_prefix = I +dotnet_naming_style.ipascalcase.required_suffix = +dotnet_naming_style.ipascalcase.word_separator = +dotnet_naming_style.ipascalcase.capitalization = pascal_case + +dotnet_naming_style.tpascalcase.required_prefix = T +dotnet_naming_style.tpascalcase.required_suffix = +dotnet_naming_style.tpascalcase.word_separator = +dotnet_naming_style.tpascalcase.capitalization = pascal_case + +dotnet_naming_style._camelcase.required_prefix = _ +dotnet_naming_style._camelcase.required_suffix = +dotnet_naming_style._camelcase.word_separator = +dotnet_naming_style._camelcase.capitalization = camel_case + +dotnet_naming_style.camelcase.required_prefix = +dotnet_naming_style.camelcase.required_suffix = +dotnet_naming_style.camelcase.word_separator = +dotnet_naming_style.camelcase.capitalization = camel_case + +dotnet_naming_style.s_camelcase.required_prefix = s_ +dotnet_naming_style.s_camelcase.required_suffix = +dotnet_naming_style.s_camelcase.word_separator = +dotnet_naming_style.s_camelcase.capitalization = camel_case + diff --git a/dotnet/.gitignore b/dotnet/.gitignore new file mode 100644 index 0000000..fab8f5d --- /dev/null +++ b/dotnet/.gitignore @@ -0,0 +1,5 @@ +bin/ +obj/ +.vs/ +.vscode + diff --git a/dotnet/JpegUtil.Test/Data/a.jpg b/dotnet/JpegUtil.Test/Data/a.jpg new file mode 100644 index 0000000000000000000000000000000000000000..97b7d0e9bd416d0845ce5f753c4c7c09fc6a59c0 GIT binary patch literal 182977 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 x. ShouldContain() + } +} diff --git a/dotnet/JpegUtil.Test/JpegUtil.Test.csproj b/dotnet/JpegUtil.Test/JpegUtil.Test.csproj new file mode 100644 index 0000000..20922d7 --- /dev/null +++ b/dotnet/JpegUtil.Test/JpegUtil.Test.csproj @@ -0,0 +1,26 @@ + + + + net9.0 + enable + enable + false + + + + + + + + + + + + + + + + + + + diff --git a/dotnet/JpegUtil.sln b/dotnet/JpegUtil.sln new file mode 100644 index 0000000..fceb358 --- /dev/null +++ b/dotnet/JpegUtil.sln @@ -0,0 +1,48 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 17 +VisualStudioVersion = 17.0.31903.59 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "JpegUtil", "JpegUtil\JpegUtil.csproj", "{6380C354-3DC0-4BEF-82D4-69DAE207A908}" +EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "JpegUtil.Test", "JpegUtil.Test\JpegUtil.Test.csproj", "{2CF6525D-DBFB-4B8D-877D-17CAE798D9CA}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {6380C354-3DC0-4BEF-82D4-69DAE207A908}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {6380C354-3DC0-4BEF-82D4-69DAE207A908}.Debug|Any CPU.Build.0 = Debug|Any CPU + {6380C354-3DC0-4BEF-82D4-69DAE207A908}.Debug|x64.ActiveCfg = Debug|Any CPU + {6380C354-3DC0-4BEF-82D4-69DAE207A908}.Debug|x64.Build.0 = Debug|Any CPU + {6380C354-3DC0-4BEF-82D4-69DAE207A908}.Debug|x86.ActiveCfg = Debug|Any CPU + {6380C354-3DC0-4BEF-82D4-69DAE207A908}.Debug|x86.Build.0 = Debug|Any CPU + {6380C354-3DC0-4BEF-82D4-69DAE207A908}.Release|Any CPU.ActiveCfg = Release|Any CPU + {6380C354-3DC0-4BEF-82D4-69DAE207A908}.Release|Any CPU.Build.0 = Release|Any CPU + {6380C354-3DC0-4BEF-82D4-69DAE207A908}.Release|x64.ActiveCfg = Release|Any CPU + {6380C354-3DC0-4BEF-82D4-69DAE207A908}.Release|x64.Build.0 = Release|Any CPU + {6380C354-3DC0-4BEF-82D4-69DAE207A908}.Release|x86.ActiveCfg = Release|Any CPU + {6380C354-3DC0-4BEF-82D4-69DAE207A908}.Release|x86.Build.0 = Release|Any CPU + {2CF6525D-DBFB-4B8D-877D-17CAE798D9CA}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2CF6525D-DBFB-4B8D-877D-17CAE798D9CA}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2CF6525D-DBFB-4B8D-877D-17CAE798D9CA}.Debug|x64.ActiveCfg = Debug|Any CPU + {2CF6525D-DBFB-4B8D-877D-17CAE798D9CA}.Debug|x64.Build.0 = Debug|Any CPU + {2CF6525D-DBFB-4B8D-877D-17CAE798D9CA}.Debug|x86.ActiveCfg = Debug|Any CPU + {2CF6525D-DBFB-4B8D-877D-17CAE798D9CA}.Debug|x86.Build.0 = Debug|Any CPU + {2CF6525D-DBFB-4B8D-877D-17CAE798D9CA}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2CF6525D-DBFB-4B8D-877D-17CAE798D9CA}.Release|Any CPU.Build.0 = Release|Any CPU + {2CF6525D-DBFB-4B8D-877D-17CAE798D9CA}.Release|x64.ActiveCfg = Release|Any CPU + {2CF6525D-DBFB-4B8D-877D-17CAE798D9CA}.Release|x64.Build.0 = Release|Any CPU + {2CF6525D-DBFB-4B8D-877D-17CAE798D9CA}.Release|x86.ActiveCfg = Release|Any CPU + {2CF6525D-DBFB-4B8D-877D-17CAE798D9CA}.Release|x86.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/dotnet/JpegUtil/Exif.cs b/dotnet/JpegUtil/Exif.cs new file mode 100644 index 0000000..46720f0 --- /dev/null +++ b/dotnet/JpegUtil/Exif.cs @@ -0,0 +1,295 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.Globalization; +using System.Linq; +using System.Text; + +using ExifTag = ushort; + +namespace JpegUtil; + +public enum ExifType +{ + Byte = 1, // uint8_t + Ascii = 2, // ASCII NUL terminated + Short = 3, // uint16_t + Long = 4, // uint32_t + Rational = 5, // 2 LONGs numerator : denominator + SByte = 6, // int8_t + Undefined = 7, // uint8_t + SShort = 8, // int16_t + SLong = 9, // int32_t + SRational = 10, // 2 SLONGs numerator : denominator + Float32 = 11, // IEEE 32 bit floating point + Float64 = 12 // IEEE 64 bit floating point +} + +public struct ExifItem +{ + public ExifTag Tag { get; private set; } + public ExifType Type { get; private set; } + public object Value { get; private set; } + + const ExifTag EXIF_IFD_TAG = 0x8769; // special tag that is a pointer to more tags + const ushort EXIF_IFD_SIZE = 12; // size in bytes of an IFD entry + const ushort EXIF_USHORT_SIZE = 2; + const ushort EXIF_BOM_BE = 0x4d4d; + const ushort EXIF_BOM_LE = 0x4949; + const ushort EXIF_HDR_MAGIC = 0x2a; + + private static bool IsBigEndian = false; + + private static ushort get_uint16(byte[] data, int startIndex) + { + return IsBigEndian + ? (ushort)((data[startIndex] << 8) | data[startIndex + 1]) + : BitConverter.ToUInt16(data, startIndex); + } + + private static uint get_uint32(byte[] data, int startIndex) + { + return IsBigEndian + ? (uint)( + (data[startIndex + 0] << 24) + | (data[startIndex + 1] << 16) + | (data[startIndex + 2] << 8) + | (data[startIndex + 3])) + : BitConverter.ToUInt32(data, startIndex); + } + private static int get_int32(byte[] data, int startIndex) + { + return IsBigEndian + ? (int)( + (data[startIndex + 0] << 24) + | (data[startIndex + 1] << 16) + | (data[startIndex + 2] << 8) + | (data[startIndex + 3])) + : BitConverter.ToInt32(data, startIndex); + } + + public static IEnumerable ExifParseItem(byte[] data, int off) + { + // uint item_count = 0; + ushort tag = get_uint16(data, off); + ExifType type = (ExifType)get_uint16(data, off + 2); + int count = (int)get_uint32(data, off + 4); + int dataOffset = (int)get_uint32(data, off + 8); + int hdrEnd = off + 8; + + object? value = null; + switch (type) + { + case ExifType.Byte: + case ExifType.Undefined: + if (count < 5) + dataOffset = hdrEnd; + value = new ArraySegment(data, dataOffset, count); + break; + case ExifType.Ascii: + { + if (count < 5) + dataOffset = hdrEnd; + value = Encoding.ASCII.GetString(data, dataOffset, count); + break; + } + case ExifType.Short: + { + var lst = new List(); + if (count < 3) // handle small values being stored in the offset area + dataOffset = hdrEnd; + for (int n = 0; n < count; ++n) + { + lst.Add(get_uint16(data, dataOffset + (n * 2))); + dataOffset += 2; + } + value = count == 1 ? lst[0] : lst; + break; + } + case ExifType.Long: + { + if (tag == EXIF_IFD_TAG) + { + ushort ifd_count = get_uint16(data, dataOffset); + dataOffset += 2; + for (int n = 0; n < ifd_count; ++n) + { + foreach (var item in ExifParseItem(data, dataOffset + (n * EXIF_IFD_SIZE))) + { + yield return item; + } + } + } + else + { + var lst = new List(); + if (count == 1) + dataOffset = hdrEnd; + for (int n = 0; n < count; ++n) + { + lst.Add(get_uint32(data, dataOffset + (n * 4))); + dataOffset += 4; + } + value = count == 1 ? lst[0] : lst; + } + break; + } + case ExifType.Rational: + { + var lst = new List>(); + for (int n = 0; n < count; ++n) + { + lst.Add(new Tuple( + get_uint32(data, dataOffset), + get_uint32(data, dataOffset + 4) + )); + dataOffset += 8; + } + value = count == 1 ? lst[0] : lst; + break; + } + case ExifType.SLong: + { + var lst = new List(); + if (count == 1) + dataOffset = hdrEnd; + for (int n = 0; n < count; ++n) + { + lst.Add(get_int32(data, dataOffset + (n * 4))); + dataOffset += 4; + } + value = count == 1 ? lst[0] : lst; + break; + } + case ExifType.SRational: + { + var lst = new List>(); + for (int n = 0; n < count; ++n) + { + lst.Add(new Tuple( + get_int32(data, dataOffset), + get_int32(data, dataOffset + 4) + )); + dataOffset += 8; + } + value = count == 1 ? lst[0] : lst; + break; + } + default: + throw new Exception($"unhandled EXIF type {Enum.GetName(typeof(ExifType), type)}"); + } + + if (value != null) + { + yield return new ExifItem() + { + Tag = tag, + Type = type, + Value = value + }; + } + } + + public static IEnumerable ExifParse(byte[] data) + { + List items = new(); + IsBigEndian = get_uint16(data, 0) == EXIF_BOM_BE; + ushort magic = get_uint16(data, 2); + if (magic != EXIF_HDR_MAGIC) + throw new Exception("invalid exif magic"); + uint offset = get_uint32(data, 4); + while (offset != 0) + { + // read the number of EXIF items stored (big endian) + ushort count = get_uint16(data, (int)offset); + + // process each EXIF tag from the buffer + int entry = (int)offset + 2; + for (ushort n = 0; n < count; ++n, entry += EXIF_IFD_SIZE) + { + foreach (var item in ExifParseItem(data, entry)) + { + Console.WriteLine(item.Print()); + yield return item; + } + } + // after the IFD table is an offset to the next IFD table (if any) + offset = get_uint16(data, (int)(offset + EXIF_USHORT_SIZE + (count * EXIF_IFD_SIZE))); + } + } +} + +public static class ObjectExtensions +{ + public static bool IsGenericList(this object o) + { + var oType = o.GetType(); + return (oType.IsGenericType && (oType.GetGenericTypeDefinition() == typeof(List<>))); + } +} + +public static class ExifExtensions +{ + public static string Print(this ExifItem item) + { + StringBuilder str = new( + TagNames.ContainsKey(item.Tag) ? TagNames[item.Tag] : $"{item.Tag:X4}" + ); + int count = 1; + if (item.Value.IsGenericList()) + count = ((IList)item.Value).Count; + if (item.Type == ExifType.Ascii) + str.AppendFormat(" {0}", item.Value as string); + else if ((item.Type == ExifType.Undefined || item.Type == ExifType.Byte) && count > 8) + { + str.Append($" [{count} bytes]"); + } + else if (item.Value is IList lst) + { + for (int n = 0; n < count; ++n) + { + str.AppendFormat(" {0}", lst[n]); + } + } + else + { + str.AppendFormat(" {0}", item.Value); + } + return str.ToString(); + } + + public static readonly Dictionary TagNames = new() + { + { 0x0100, "ImageWidth" }, + { 0x0101, "ImageHeight" }, + { 0x0102, "BitsPerSample" }, + { 0x0103, "Compression" }, + { 0x0106, "PhotometricInterpretation" }, + { 0x0107, "Thresholding" }, + { 0x010e, "ImageDescription" }, + { 0x010f, "Make" }, + { 0x0112, "Orientation" }, + { 0x011a, "XResolution" }, + { 0x011b, "YResolution" }, + { 0x011c, "PlanarConfiguration" }, + { 0x011e, "XPosition" }, + { 0x011f, "YPosition" }, + { 0x0128, "ResolutionUnit" }, + { 0x0131, "Software" }, + { 0x0132, "ModifyDate" }, + { 0xa001, "ColorSpace" }, + { 0xa002, "ExifImageWidth" }, + { 0xa003, "ExifImageHeight" }, + { 0xa20e, "FocalPlaneXResolution" }, + { 0xa20f, "FocalPlaneYResolution" }, + { 0xa210, "FocalPlaneResolutionUnit" }, + /* Renishaw WiRE Custom Tags */ + { 0xfea0, "WiREPosition" }, + { 0xfea1, "WiREFoV" }, + { 0xfea2, "WiREObjective" }, + { 0xfea3, "WiRELUTLimits" }, + { 0xfea4, "WiRERotationAngle" }, + { 0xfea5, "WiRERotationCenter" }, + { 0xfea6, "WiREZPosition" } + }; +} diff --git a/dotnet/JpegUtil/JpegReader.cs b/dotnet/JpegUtil/JpegReader.cs new file mode 100644 index 0000000..8e61dce --- /dev/null +++ b/dotnet/JpegUtil/JpegReader.cs @@ -0,0 +1,179 @@ +namespace JpegUtil; + +using System; +using System.Collections.Generic; +using System.IO; + +public enum JfifMark +{ + SOF0 = 0xffc0, // start of frame (baseline DCT) + DHT = 0xffc4, // define Huffman table + RST0 = 0xffd0,// restart (d0 .. d7) + SOI = 0xffd8, // start of image + EOI = 0xffd9, // end of image + SOS = 0xffda, // start of scan + DQT = 0xffdb, // define quantization table + APP0 = 0xffe0, // Application specific (e0..ef) + Comment = 0xfffe, // comment +} + +public static class JfifMarkExtensions +{ + public static bool IsRST(this JfifMark mark) + { + int rst0 = (int)JfifMark.RST0; + int val = (int)mark; + return val >= rst0 && val < (rst0 + 8); + } + public static bool IsAPP(this JfifMark mark) + { + int app0 = (int)JfifMark.APP0; + int val = (int)mark; + return val >= app0 && val < (app0 + 0xf); + } + public static int AppN(this JfifMark mark) + { + return ((int)mark) % 16; + } + public static int RstN(this JfifMark mark) + { + return ((int)mark) % 16; + } +} + +public delegate void Logger(string format, params object[] args); + +public class JpegReader : IDisposable +{ + private readonly BinaryReader _reader; + private Logger Log { get; set; } + + public JpegReader(Stream stream, Logger logger) + { + _reader = new BinaryReader(stream); + Log = logger; + } + + #region Disposable + private bool _disposed = false; + public void Dispose() + { + Dispose(true); + } + protected virtual void Dispose(bool disposing) + { + if (!_disposed) + { + if (disposing) + { + _reader.Dispose(); + } + _disposed = true; + } + } + #endregion Disposable + + // Read a big endian 16 bit value + private int ReadInt16BE() + { + var data = new byte[2]; + _reader.Read(data, 0, 2); + // .net 8+: return (int)BinaryPrimitives.ReadUInt16BigEndian(data); + return ((data[0] << 8) | data[1]); + } + // Read a big endian 16 bit value minus the 2 bytes for this value + private int ReadSize() => ReadInt16BE() - 2; + + private IEnumerable? ReadApp0(int len) + { + IEnumerable? result = null; + byte[] label = _reader.ReadBytes(5); + if (label[0] == 'J' && label[1] == 'F' && label[2] == 'I' && label[3] == 'F') + { + // read the JFIF header + byte[] data = _reader.ReadBytes(len - 5); + Log("JFIF header"); + } + else if (label[0] == 'E' && label[1] == 'x' && label[2] == 'i' && label[3] == 'f') + { + Log("Exif block"); + // read the padding byte + byte pad = _reader.ReadByte(); + // read all the exif data into a buffer + byte[] data = _reader.ReadBytes(len - 6); + // parse it : Exif(data) or span + result = ExifItem.ExifParse(data); + } + else + { + _reader.BaseStream.Seek(-5, SeekOrigin.Current); + } + return result; + } + + public IEnumerable Exif() + { + int len = 0; + JfifMark mark = 0; + while (_reader.BaseStream.CanRead) + { + mark = (JfifMark)ReadInt16BE(); + // Log("{0:X8} Mark {1:X4}", _reader.BaseStream.Position, (int)mark); + switch (mark) + { + case JfifMark.SOI: + len = 0; + Log("{0:X8} SOI", _reader.BaseStream.Position); + break; + case JfifMark.DQT: + len = ReadSize(); + Log("{0:X8} DQT {1:X4}", _reader.BaseStream.Position, len); + break; + case JfifMark.DHT: + len = ReadSize(); + Log("{0:X8} DHT {1:X4}", _reader.BaseStream.Position, len); + break; + case JfifMark.SOS: + len = ReadSize(); + Log("{0:X8} SOS {1:X4}", _reader.BaseStream.Position, len); + yield break; + case JfifMark.SOF0: + { + len = ReadSize(); + Log("{0:X8} SOF0 {1:X4}", _reader.BaseStream.Position, len); + // read the frame, set len 0 + break; + } + default: + { + if (mark.IsRST()) + { + len = ReadSize(); + Log("{0:X8} RST{1} {2:X4}", + _reader.BaseStream.Position, mark.RstN(), len); + } + else if (mark.IsAPP()) + { + len = ReadSize(); + Log("{0:X8} APP{1} {2:X4}", + _reader.BaseStream.Position, mark.AppN(), len); + var items = ReadApp0(len); + if (items != null) + { + foreach (ExifItem item in items) + yield return item; + } + len = 0; + } + else + { + Log($"{0:X8} OOPS {(int)mark:X4}", _reader.BaseStream.Position); + throw new Exception($"oops {(int)mark:X4}"); + } + break; + } + } + _reader.BaseStream.Seek(len, SeekOrigin.Current); + } + } +} \ No newline at end of file diff --git a/dotnet/JpegUtil/JpegUtil.csproj b/dotnet/JpegUtil/JpegUtil.csproj new file mode 100644 index 0000000..664e2b1 --- /dev/null +++ b/dotnet/JpegUtil/JpegUtil.csproj @@ -0,0 +1,10 @@ + + + + netstandard2.0 + 12.0 + false + enable + + + -- 2.51.2