Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions Tests/LibGfx/TestImageDecoder.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -422,7 +422,9 @@ TEST_CASE(test_jbig2_decode)
TEST_INPUT("jbig2/bitmap-symbol-symhuffrefineone.jbig2"sv),
TEST_INPUT("jbig2/bitmap-symbol-symhuffrefineseveral.jbig2"sv),
TEST_INPUT("jbig2/bitmap-symbol-symbolrefine-textrefine.jbig2"sv),
TEST_INPUT("jbig2/bitmap-symbol-symbolrefine-textrefine-export.jbig2"sv),
TEST_INPUT("jbig2/bitmap-symbol-symhuffrefine-textrefine.jbig2"sv),
TEST_INPUT("jbig2/bitmap-symbol-symhuffrefine-textrefine-export.jbig2"sv),
TEST_INPUT("jbig2/bitmap-symbol-textbottomleft.jbig2"sv),
TEST_INPUT("jbig2/bitmap-symbol-textbottomlefttranspose.jbig2"sv),
TEST_INPUT("jbig2/bitmap-symbol-textbottomright.jbig2"sv),
Expand Down
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,374 @@
{
"global_header": {
"organization": "sequential",
"number_of_pages": 1
},
"segments": [
{
"segment_number": 0,
"type": "page_information",
"page_association": 1,
"data": {
"page_width": 399,
"page_height": 400,
"flags": {
"is_eventually_lossless": true
}
}
},

{
"segment_number": 1,
"type": "symbol_dictionary",
"page_association": 1,
"retained": true,
"data": {
"flags": {
"uses_huffman_encoding": false,
"uses_refinement_or_aggregate_coding": false,
"huffman_table_selection_for_height_differences": 0,
"huffman_table_selection_for_width_differences": 0,
"huffman_table_selection_for_bitmap_sizes": 0,
"huffman_table_selection_for_number_of_symbol_instances": 0,
"is_bitmap_coding_context_used": false,
"is_bitmap_coding_context_retained": false,
"template": 0,
"refinement_template": 0
},

"height_classes": [
{
"symbols": [
{
"image_data": {
"from_file": "bitmap.bmp",
"crop": {
"x": 60,
"y": 265,
"width": 30,
"height": 30
}
}
},
{
"image_data": {
"from_file": "bitmap.bmp",
"crop": {
"x": 50,
"y": 108,
"width": 30,
"height": 30
}
}
}
]
},
{
"symbols": [
{
"image_data": {
"from_file": "bitmap.bmp",
"crop": {
"x": 50,
"y": 108,
"width": 40,
"height": 40
}
}
},
{
"image_data": {
"from_file": "bitmap.bmp",
"crop": {
"x": 135,
"y": 160,
"width": 60,
"height": 40
}
}
}
]
},
{
"symbols": [
{
"image_data": {
"from_file": "bitmap.bmp",
"crop": {
"x": 195,
"y": 100,
"width": 40,
"height": 60
}
}
},
{
"image_data": {
"from_file": "bitmap.bmp",
"crop": {
"x": 0,
"y": 0,
"width": 59,
"height": 60
}
}
}
]
},
{
"symbols": [
{
"image_data": {
"from_file": "bitmap.bmp",
"crop": {
"x": 232,
"y": 70,
"width": 120,
"height": 250
}
}
}
]
}
]
}
},

{
"segment_number": 2,
"type": "symbol_dictionary",
"page_association": 1,
"retained": true,
"referred_to_segments": [
{
"segment_number": 1,
"retained": false
}
],
"data": {
"flags": {
"uses_huffman_encoding": false,
"uses_refinement_or_aggregate_coding": true,
"huffman_table_selection_for_height_differences": 0,
"huffman_table_selection_for_width_differences": 0,
"huffman_table_selection_for_bitmap_sizes": 0,
"huffman_table_selection_for_number_of_symbol_instances": 0,
"is_bitmap_coding_context_used": false,
"is_bitmap_coding_context_retained": false,
"template": 0,
"refinement_template": 0
},

"export_flags_for_referred_to_symbols": [ true, true, false, false, false, false, true ],

"height_classes": [
{
"symbols": [
{
"exported": false,
"refines_symbol_to": {
"symbol_id": 5,
"delta_x_offset": 0,
"delta_y_offset": 0,
"image_data": {
"from_file": "bitmap.bmp",
"crop": {
"x": 146,
"y": 100,
"width": 59,
"height": 60
}
}
}
},
{
"exported": false,
"width": 99,
"height": 60,
"refines_using_strips": {
"initial_strip_t": -1,
"strips": [
{
"strip_t": 0,
"instances": [
{
"instance_s": 0,
"instance_t": 0,
"symbol_id": 7
},
{
"instance_s": 60,
"instance_t": 0,
"symbol_id": 4
}
]
}
]
}
},
{
"exported": false,
"refines_symbol_to": {
"symbol_id": 8,
"delta_x_offset": 0,
"delta_y_offset": 0,
"image_data": {
"from_file": "bitmap.bmp",
"crop": {
"x": 136,
"y": 100,
"width": 99,
"height": 60
}
}
}
}
]
},
{
"symbols": [
{
"width": 100,
"height": 100,
"refines_using_strips": {
"initial_strip_t": -1,
"strips": [
{
"strip_t": 0,
"instances": [
{
"instance_s": 1,
"instance_t": 0,
"symbol_id": 9
}
]
},
{
"strip_t": 60,
"instances": [
{
"instance_s": 0,
"instance_t": 60,
"symbol_id": 3
},
{
"instance_s": 60,
"instance_t": 60,
"symbol_id": 2
}
]
}
]
}
}
]
}
]
}
},

{
"segment_number": 3,
"type": "text_region",
"page_association": 1,
"referred_to_segments": [
{
"segment_number": 2,
"retained": false
}
],
"data": {
"region_segment_information": {
"width": 399,
"height": 400
},
"flags": {
"uses_huffman_encoding": false,
"uses_refinement_coding": true,
"strip_size": 2,
"reference_corner": "top_left",
"is_transposed": false,
"combination_operator": "xor",
"default_pixel_value": "white",
"delta_s_offset": 3,
"refinement_template": 0
},
"huffman_flags": {
"huffman_table_selection_for_first_s": 0,
"huffman_table_selection_for_subsequent_s": 0,
"huffman_table_selection_for_t": 0,
"huffman_table_selection_for_refinement_delta_width": 0,
"huffman_table_selection_for_refinement_delta_height": 0,
"huffman_table_selection_for_refinement_delta_x_offset": 0,
"huffman_table_selection_for_refinement_delta_y_offset": 0,
"huffman_table_selection_for_refinement_size_table": 0
},

"initial_strip_t": -4,
"strips": [
{
"strip_t": 70,
"instances": [
{
"instance_s": 232,
"instance_t": 70,
"symbol_id": 2
}
]
},
{
"strip_t": 100,
"instances": [
{
"instance_s": 135,
"instance_t": 100,
"symbol_id": 3,
"instance_refines_symbol_to": {
"delta_width": 0,
"delta_height": 0,
"delta_x_offset": 0,
"delta_y_offset": 0,
"image_data": {
"from_file": "bitmap.bmp",
"crop": {
"x": 135,
"y": 100,
"width": 100,
"height": 100
}
}
}
}
]
},
{
"strip_t": 108,
"instances": [
{
"instance_s": 50,
"instance_t": 108,
"symbol_id": 1
}
]
},
{
"strip_t": 264,
"instances": [
{
"instance_s": 60,
"instance_t": 265,
"symbol_id": 0
}
]
}
]
}
},

{
"segment_number": 4,
"type": "end_of_page",
"page_association": 1
}
]
}
Loading
Loading