diff --git a/borb/io/write/ascii_art/ascii_logo.txt b/borb/io/write/ascii_art/ascii_logo.txt index e93f71ab0..45d661828 100644 --- a/borb/io/write/ascii_art/ascii_logo.txt +++ b/borb/io/write/ascii_art/ascii_logo.txt @@ -1,2 +1,2 @@ -borb version 2.0.14 +borb version 2.0.15 Joris Schellekens diff --git a/borb/pdf/canvas/event/chunk_of_text_render_event.py b/borb/pdf/canvas/event/chunk_of_text_render_event.py index 78d3d6f4b..895472ba8 100644 --- a/borb/pdf/canvas/event/chunk_of_text_render_event.py +++ b/borb/pdf/canvas/event/chunk_of_text_render_event.py @@ -24,7 +24,7 @@ class ChunkOfTextRenderEvent(Event, ChunkOfText): def __init__(self, graphics_state: CanvasGraphicsState, raw_bytes: String): assert graphics_state.font is not None assert isinstance(graphics_state.font, Font) - self._glyph_line: GlyphLine = GlyphLine( + self._glyph_line: GlyphLine = GlyphLine.from_bytes( raw_bytes.get_value_bytes(), graphics_state.font, graphics_state.font_size, diff --git a/borb/pdf/canvas/font/glyph_line.py b/borb/pdf/canvas/font/glyph_line.py index 278fdb874..4009a5c6d 100644 --- a/borb/pdf/canvas/font/glyph_line.py +++ b/borb/pdf/canvas/font/glyph_line.py @@ -51,28 +51,37 @@ class GlyphLine: This class contains utility methods to work with collections of Glyph objects. """ - def __init__( - self, - text_bytes: bytes, + @staticmethod + def from_bytes( + text: bytes, font: Font, font_size: Decimal, character_spacing: Decimal = Decimal(0), word_spacing: Decimal = Decimal(0), horizontal_scaling: Decimal = Decimal(100), - ): - assert isinstance(font, Font) - self._glyphs: typing.List[Glyph] = [] + ) -> "GlyphLine": + """ + This method constructs a new GlyphLine from text (represented as character ids) + :param text: a byte-array containing the character ids + :param font: the font + :param font_size: the font-size + :param character_spacing: the (additional) space between characters + :param word_spacing: the (additional) space between words + :param horizontal_scaling: the horizontal scaling factor (100 represents no zoom) + :return: a GlyphLine + """ + glyphs: typing.List[Glyph] = [] i: int = 0 - while i < len(text_bytes): + while i < len(text): # sometimes, 2 bytes make up 1 unicode char unicode_chars: typing.Optional[str] = None - if i + 1 < len(text_bytes): - multi_byte_char_code: int = text_bytes[i] * 256 + text_bytes[i + 1] + if i + 1 < len(text): + multi_byte_char_code: int = text[i] * 256 + text[i + 1] unicode_chars = font.character_identifier_to_unicode( multi_byte_char_code ) if unicode_chars is not None: - self._glyphs.append( + glyphs.append( Glyph( multi_byte_char_code, unicode_chars, @@ -82,23 +91,71 @@ def __init__( i += 2 continue # usually it's 1 byte though - if i < len(text_bytes): - unicode_chars = font.character_identifier_to_unicode(text_bytes[i]) + if i < len(text): + unicode_chars = font.character_identifier_to_unicode(text[i]) if unicode_chars is not None: - self._glyphs.append( + glyphs.append( Glyph( - text_bytes[i], + text[i], unicode_chars, - font.get_width(text_bytes[i]) or Decimal(0), + font.get_width(text[i]) or Decimal(0), ) ) i += 1 continue # no mapping found - if i < len(text_bytes): - self._glyphs.append(Glyph(text_bytes[i], "�", Decimal(250))) + if i < len(text): + glyphs.append(Glyph(text[i], "�", Decimal(250))) i += 1 + return GlyphLine( + glyphs, font, font_size, character_spacing, word_spacing, horizontal_scaling + ) + @staticmethod + def from_str( + text: str, + font: Font, + font_size: Decimal, + character_spacing: Decimal = Decimal(0), + word_spacing: Decimal = Decimal(0), + horizontal_scaling: Decimal = Decimal(100), + ) -> "GlyphLine": + """ + This method constructs a new GlyphLine from text + :param text: a string which will be decoded into character-ids + :param font: the font + :param font_size: the font-size + :param character_spacing: the (additional) space between characters + :param word_spacing: the (additional) space between words + :param horizontal_scaling: the horizontal scaling factor (100 represents no zoom) + :return: a GlyphLine + """ + character_ids: typing.List[int] = [ + font.unicode_to_character_identifier(c) or 0 for c in text + ] + glyphs: typing.List[Glyph] = [ + Glyph( + cid, + text[i], + font.get_width(cid) or Decimal(0), + ) + for i, cid in enumerate(character_ids) + ] + return GlyphLine( + glyphs, font, font_size, character_spacing, word_spacing, horizontal_scaling + ) + + def __init__( + self, + glyphs: typing.List[Glyph], + font: Font, + font_size: Decimal, + character_spacing: Decimal = Decimal(0), + word_spacing: Decimal = Decimal(0), + horizontal_scaling: Decimal = Decimal(100), + ): + assert isinstance(font, Font) + self._glyphs: typing.List[Glyph] = glyphs self._font = font self._font_size = font_size self._character_spacing = character_spacing diff --git a/borb/pdf/canvas/layout/text/chunk_of_text.py b/borb/pdf/canvas/layout/text/chunk_of_text.py index ac90f5a15..459b3e41c 100644 --- a/borb/pdf/canvas/layout/text/chunk_of_text.py +++ b/borb/pdf/canvas/layout/text/chunk_of_text.py @@ -225,15 +225,12 @@ def _do_layout_without_padding(self, page: Page, bounding_box: Rectangle): self._write_text_bytes(), # Tj ) self._append_to_content_stream(page, content) - encoded_bytes: bytes = [ - self._font.unicode_to_character_identifier(c) or 0 for c in self._text - ] # fmt: off layout_rect = Rectangle( bounding_box.x, bounding_box.y + bounding_box.height - line_height, - GlyphLine(encoded_bytes, self._font, self._font_size).get_width_in_text_space(), + GlyphLine.from_str(self._text, self._font, self._font_size).get_width_in_text_space(), line_height, ) # fmt: on diff --git a/borb/pdf/canvas/layout/text/paragraph.py b/borb/pdf/canvas/layout/text/paragraph.py index ed633a4a0..57c69066e 100644 --- a/borb/pdf/canvas/layout/text/paragraph.py +++ b/borb/pdf/canvas/layout/text/paragraph.py @@ -149,8 +149,7 @@ def _split_text(self, bounding_box: Rectangle) -> typing.List[str]: # checking with 0 is not a great idea due to rounding errors # so, as a pre-emptive measure, we round the number to 2 digits # fmt: off - encoded_bytes: bytes = [self._font.unicode_to_character_identifier(c) or 0 for c in potential_text] - potential_width = GlyphLine(encoded_bytes, self._font, self._font_size).get_width_in_text_space() + potential_width = GlyphLine.from_str(potential_text, self._font, self._font_size).get_width_in_text_space() remaining_space_in_box: Decimal = round(bounding_box.width - potential_width, 2) # fmt: on @@ -192,8 +191,7 @@ def _split_text(self, bounding_box: Rectangle) -> typing.List[str]: for i in range(1, len(hyphenated_word_parts)): # fmt: off potential_text_after_hyphenation = potential_text + "".join([x for x in hyphenated_word_parts[0:i]]) + "-" - encoded_bytes = bytes([self._font.unicode_to_character_identifier(c) or 0 for c in potential_text_after_hyphenation]) - potential_width = GlyphLine(encoded_bytes, self._font, self._font_size).get_width_in_text_space() + potential_width = GlyphLine.from_str(potential_text_after_hyphenation, self._font, self._font_size).get_width_in_text_space() remaining_space_in_box = round(bounding_box.width - potential_width, 2) # fmt: on if remaining_space_in_box > Decimal(0): @@ -329,14 +327,8 @@ def _do_layout_without_padding_text_alignment_justified( max_y = max(last_line_rectangle.y + last_line_rectangle.height, max_y) continue - encoded_bytes: bytes = bytes( - [ - self._font.unicode_to_character_identifier(c) or 0 - for c in line_of_text - ] - ) - estimated_width: Decimal = GlyphLine( - encoded_bytes, self._font, self._font_size + estimated_width: Decimal = GlyphLine.from_str( + line_of_text, self._font, self._font_size ).get_width_in_text_space() remaining_space: Decimal = bounding_box.width - estimated_width @@ -377,11 +369,8 @@ def _do_layout_without_padding_text_alignment_justified( max_y = max(r.y + r.height, max_y) # line up our next x - encoded_bytes = bytes( - [self._font.unicode_to_character_identifier(c) or 0 for c in s] - ) - word_size = GlyphLine( - encoded_bytes, self._font, self._font_size + word_size = GlyphLine.from_str( + s, self._font, self._font_size ).get_width_in_text_space() x += word_size x += space_per_space diff --git a/release_notes.md b/release_notes.md index c76d48f85..9316ea129 100644 --- a/release_notes.md +++ b/release_notes.md @@ -1,3 +1,3 @@ -# :mega: borb release 2.0.14 +# :mega: borb release 2.0.15 This is a bugfix release. diff --git a/requirements.txt b/requirements.txt index 5304fe156..6d5d97c1e 100644 --- a/requirements.txt +++ b/requirements.txt @@ -5,4 +5,4 @@ git+git://github.com/ojii/pymaging.git python-barcode>=0.13.1 qrcode[pil]>=6.1 requests>=2.24.0 -setuptools~=51.1.1 \ No newline at end of file +setuptools>=51.1.1 \ No newline at end of file diff --git a/setup.py b/setup.py index d0b1010aa..3e9b8967f 100644 --- a/setup.py +++ b/setup.py @@ -29,7 +29,7 @@ setuptools.setup( name="borb", - version="2.0.14", + version="2.0.15", author="Joris Schellekens", author_email="joris.schellekens.1989@gmail.com", description="borb is a library for reading, creating and manipulating PDF files in python.", diff --git a/tests/corpus/test_copy_document_compare_size.py b/tests/corpus/test_copy_document_compare_size.py index 456524d3c..4fe5981ba 100644 --- a/tests/corpus/test_copy_document_compare_size.py +++ b/tests/corpus/test_copy_document_compare_size.py @@ -42,7 +42,7 @@ def __init__(self, methodName="runTest"): self.number_of_fails: int = 0 self.memory_stats_per_document: typing.Dict[str, typing.Tuple[int, int]] = {} - #@unittest.skip + @unittest.skip def test_against_entire_corpus(self): pdf_file_names = os.listdir(self.corpus_dir) pdfs = [ diff --git a/tests/corpus/test_copy_document_resize_images_compare_size.py b/tests/corpus/test_copy_document_resize_images_compare_size.py index 39124c9b7..2169acd51 100644 --- a/tests/corpus/test_copy_document_resize_images_compare_size.py +++ b/tests/corpus/test_copy_document_resize_images_compare_size.py @@ -43,7 +43,7 @@ def __init__(self, methodName="runTest"): self.number_of_fails: int = 0 self.memory_stats_per_document: typing.Dict[str, typing.Tuple[int, int]] = {} - #@unittest.skip + @unittest.skip def test_against_entire_corpus(self): pdf_file_names = os.listdir(self.corpus_dir) pdfs = [ diff --git a/tests/corpus/test_extract_text_expect_ground_truth.py b/tests/corpus/test_extract_text_expect_ground_truth.py index 1c34821f4..bf10848bb 100644 --- a/tests/corpus/test_extract_text_expect_ground_truth.py +++ b/tests/corpus/test_extract_text_expect_ground_truth.py @@ -1,5 +1,6 @@ import os import time +import traceback import typing import unittest from datetime import datetime @@ -46,7 +47,7 @@ def __init__(self, methodName="runTest"): self.time_per_document: typing.Dict[str, float] = {} self.fails_per_document: typing.Dict[str, int] = [] - #@unittest.skip + @unittest.skip def test_against_entire_corpus(self): pdf_file_names = os.listdir(self.corpus_dir) pdfs = [ diff --git a/tests/corpus/test_open_document.py b/tests/corpus/test_open_document.py index 4e5f12bc1..dbf05e077 100644 --- a/tests/corpus/test_open_document.py +++ b/tests/corpus/test_open_document.py @@ -45,7 +45,7 @@ def __init__(self, methodName="runTest"): self.time_per_document: typing.Dict[str, float] = {} self.memory_stats_per_document: typing.Dict[str, typing.Tuple[int, int]] = {} - #@unittest.skip + @unittest.skip def test_against_entire_corpus(self): pdf_file_names = os.listdir(self.corpus_dir) pdfs = [ diff --git a/tests/output/test_add_all_rubber_stamp_annotations/output.pdf b/tests/output/test_add_all_rubber_stamp_annotations/output.pdf index 86ffad4dd..babe05355 100644 Binary files a/tests/output/test_add_all_rubber_stamp_annotations/output.pdf and b/tests/output/test_add_all_rubber_stamp_annotations/output.pdf differ diff --git a/tests/output/test_add_circle_annotation/output.pdf b/tests/output/test_add_circle_annotation/output.pdf index 5f55c2756..1fc3b87fe 100644 Binary files a/tests/output/test_add_circle_annotation/output.pdf and b/tests/output/test_add_circle_annotation/output.pdf differ diff --git a/tests/output/test_add_free_text_annotation/output_001.pdf b/tests/output/test_add_free_text_annotation/output_001.pdf index c7af05cea..668b8982a 100644 Binary files a/tests/output/test_add_free_text_annotation/output_001.pdf and b/tests/output/test_add_free_text_annotation/output_001.pdf differ diff --git a/tests/output/test_add_free_text_annotation/output_002.pdf b/tests/output/test_add_free_text_annotation/output_002.pdf index b787090de..b225fe293 100644 Binary files a/tests/output/test_add_free_text_annotation/output_002.pdf and b/tests/output/test_add_free_text_annotation/output_002.pdf differ diff --git a/tests/output/test_add_highlight_annotation/output_001.pdf b/tests/output/test_add_highlight_annotation/output_001.pdf index 16bef02f0..6176d46d6 100644 Binary files a/tests/output/test_add_highlight_annotation/output_001.pdf and b/tests/output/test_add_highlight_annotation/output_001.pdf differ diff --git a/tests/output/test_add_highlight_annotation/output_002.pdf b/tests/output/test_add_highlight_annotation/output_002.pdf index f70debfca..3baaa0ffb 100644 Binary files a/tests/output/test_add_highlight_annotation/output_002.pdf and b/tests/output/test_add_highlight_annotation/output_002.pdf differ diff --git a/tests/output/test_add_line_annotation/output_001.pdf b/tests/output/test_add_line_annotation/output_001.pdf index df213b5ae..667d8e569 100644 Binary files a/tests/output/test_add_line_annotation/output_001.pdf and b/tests/output/test_add_line_annotation/output_001.pdf differ diff --git a/tests/output/test_add_line_annotation/output_002.pdf b/tests/output/test_add_line_annotation/output_002.pdf index 208f9d3c1..30ce49d4e 100644 Binary files a/tests/output/test_add_line_annotation/output_002.pdf and b/tests/output/test_add_line_annotation/output_002.pdf differ diff --git a/tests/output/test_add_outline/output_001.pdf b/tests/output/test_add_outline/output_001.pdf index 0edf0248c..19db0325d 100644 Binary files a/tests/output/test_add_outline/output_001.pdf and b/tests/output/test_add_outline/output_001.pdf differ diff --git a/tests/output/test_add_outline/output_002.pdf b/tests/output/test_add_outline/output_002.pdf index 5990f595e..c7070056e 100644 Binary files a/tests/output/test_add_outline/output_002.pdf and b/tests/output/test_add_outline/output_002.pdf differ diff --git a/tests/output/test_add_polygon_annotation_using_line_art_factory/output.pdf b/tests/output/test_add_polygon_annotation_using_line_art_factory/output.pdf index 42a298897..4d32a6833 100644 Binary files a/tests/output/test_add_polygon_annotation_using_line_art_factory/output.pdf and b/tests/output/test_add_polygon_annotation_using_line_art_factory/output.pdf differ diff --git a/tests/output/test_add_polyline_annotation_using_line_art_factory/output.pdf b/tests/output/test_add_polyline_annotation_using_line_art_factory/output.pdf index 1c3166c34..f4cb4a12a 100644 Binary files a/tests/output/test_add_polyline_annotation_using_line_art_factory/output.pdf and b/tests/output/test_add_polyline_annotation_using_line_art_factory/output.pdf differ diff --git a/tests/output/test_add_redact_annotation/output_001.pdf b/tests/output/test_add_redact_annotation/output_001.pdf index fa1389545..2d079085d 100644 Binary files a/tests/output/test_add_redact_annotation/output_001.pdf and b/tests/output/test_add_redact_annotation/output_001.pdf differ diff --git a/tests/output/test_add_redact_annotation/output_002.pdf b/tests/output/test_add_redact_annotation/output_002.pdf index d1ad28670..fb11930ab 100644 Binary files a/tests/output/test_add_redact_annotation/output_002.pdf and b/tests/output/test_add_redact_annotation/output_002.pdf differ diff --git a/tests/output/test_add_redact_annotation/output_003.pdf b/tests/output/test_add_redact_annotation/output_003.pdf index a08fc86f8..6c88b7884 100644 Binary files a/tests/output/test_add_redact_annotation/output_003.pdf and b/tests/output/test_add_redact_annotation/output_003.pdf differ diff --git a/tests/output/test_add_redact_annotation/output_004.pdf b/tests/output/test_add_redact_annotation/output_004.pdf index 166509587..d11516c97 100644 Binary files a/tests/output/test_add_redact_annotation/output_004.pdf and b/tests/output/test_add_redact_annotation/output_004.pdf differ diff --git a/tests/output/test_add_redact_annotation/output_005.pdf b/tests/output/test_add_redact_annotation/output_005.pdf index ece1b6c0d..84dabb9ff 100644 Binary files a/tests/output/test_add_redact_annotation/output_005.pdf and b/tests/output/test_add_redact_annotation/output_005.pdf differ diff --git a/tests/output/test_add_remote_go_to_annotation/output_001.pdf b/tests/output/test_add_remote_go_to_annotation/output_001.pdf index 32c16cc29..d8ff24071 100644 Binary files a/tests/output/test_add_remote_go_to_annotation/output_001.pdf and b/tests/output/test_add_remote_go_to_annotation/output_001.pdf differ diff --git a/tests/output/test_add_remote_go_to_annotation/output_002.pdf b/tests/output/test_add_remote_go_to_annotation/output_002.pdf index 6e7759519..5d421d50f 100644 Binary files a/tests/output/test_add_remote_go_to_annotation/output_002.pdf and b/tests/output/test_add_remote_go_to_annotation/output_002.pdf differ diff --git a/tests/output/test_add_square_annotation/output.pdf b/tests/output/test_add_square_annotation/output.pdf index cf95328df..9951cf264 100644 Binary files a/tests/output/test_add_square_annotation/output.pdf and b/tests/output/test_add_square_annotation/output.pdf differ diff --git a/tests/output/test_add_square_annotation_in_free_space/output_001.pdf b/tests/output/test_add_square_annotation_in_free_space/output_001.pdf index 6288c8f48..634fb62b7 100644 Binary files a/tests/output/test_add_square_annotation_in_free_space/output_001.pdf and b/tests/output/test_add_square_annotation_in_free_space/output_001.pdf differ diff --git a/tests/output/test_add_square_annotation_in_free_space/output_002.pdf b/tests/output/test_add_square_annotation_in_free_space/output_002.pdf index 5052f0af5..949349169 100644 Binary files a/tests/output/test_add_square_annotation_in_free_space/output_002.pdf and b/tests/output/test_add_square_annotation_in_free_space/output_002.pdf differ diff --git a/tests/output/test_add_squiggle_annotation/output_001.pdf b/tests/output/test_add_squiggle_annotation/output_001.pdf index 99fd68958..409df0da0 100644 Binary files a/tests/output/test_add_squiggle_annotation/output_001.pdf and b/tests/output/test_add_squiggle_annotation/output_001.pdf differ diff --git a/tests/output/test_add_squiggle_annotation/output_002.pdf b/tests/output/test_add_squiggle_annotation/output_002.pdf index 3ea1097a8..48aaa8231 100644 Binary files a/tests/output/test_add_squiggle_annotation/output_002.pdf and b/tests/output/test_add_squiggle_annotation/output_002.pdf differ diff --git a/tests/output/test_add_strikeout_annotation/output_001.pdf b/tests/output/test_add_strikeout_annotation/output_001.pdf index 88079daf1..f43553ef9 100644 Binary files a/tests/output/test_add_strikeout_annotation/output_001.pdf and b/tests/output/test_add_strikeout_annotation/output_001.pdf differ diff --git a/tests/output/test_add_strikeout_annotation/output_002.pdf b/tests/output/test_add_strikeout_annotation/output_002.pdf index 33cd1ba5c..91c6feb01 100644 Binary files a/tests/output/test_add_strikeout_annotation/output_002.pdf and b/tests/output/test_add_strikeout_annotation/output_002.pdf differ diff --git a/tests/output/test_add_super_mario_annotation/output.pdf b/tests/output/test_add_super_mario_annotation/output.pdf index 82a033209..0eb5fd916 100644 Binary files a/tests/output/test_add_super_mario_annotation/output.pdf and b/tests/output/test_add_super_mario_annotation/output.pdf differ diff --git a/tests/output/test_add_text_annotation/output_001.pdf b/tests/output/test_add_text_annotation/output_001.pdf index 43693af72..67e99286a 100644 Binary files a/tests/output/test_add_text_annotation/output_001.pdf and b/tests/output/test_add_text_annotation/output_001.pdf differ diff --git a/tests/output/test_add_text_annotation/output_002.pdf b/tests/output/test_add_text_annotation/output_002.pdf index 242eccd8f..fdd4027b4 100644 Binary files a/tests/output/test_add_text_annotation/output_002.pdf and b/tests/output/test_add_text_annotation/output_002.pdf differ diff --git a/tests/output/test_add_underline_annotation/output_001.pdf b/tests/output/test_add_underline_annotation/output_001.pdf index 170d81246..34c104e8c 100644 Binary files a/tests/output/test_add_underline_annotation/output_001.pdf and b/tests/output/test_add_underline_annotation/output_001.pdf differ diff --git a/tests/output/test_add_underline_annotation/output_002.pdf b/tests/output/test_add_underline_annotation/output_002.pdf index 84c7d468b..ed6f240e6 100644 Binary files a/tests/output/test_add_underline_annotation/output_002.pdf and b/tests/output/test_add_underline_annotation/output_002.pdf differ diff --git a/tests/output/test_analogous_color_scheme/output.pdf b/tests/output/test_analogous_color_scheme/output.pdf index a2644cbe3..77bf11fa1 100644 Binary files a/tests/output/test_analogous_color_scheme/output.pdf and b/tests/output/test_analogous_color_scheme/output.pdf differ diff --git a/tests/output/test_append_embedded_file/output_001.pdf b/tests/output/test_append_embedded_file/output_001.pdf index a77b76a18..a43f7115f 100644 Binary files a/tests/output/test_append_embedded_file/output_001.pdf and b/tests/output/test_append_embedded_file/output_001.pdf differ diff --git a/tests/output/test_append_embedded_file/output_002.pdf b/tests/output/test_append_embedded_file/output_002.pdf index c3d30a322..bcff8fe9f 100644 Binary files a/tests/output/test_append_embedded_file/output_002.pdf and b/tests/output/test_append_embedded_file/output_002.pdf differ diff --git a/tests/output/test_apply_redaction_annotations/output_001.pdf b/tests/output/test_apply_redaction_annotations/output_001.pdf index 6adde4776..f2999c98d 100644 Binary files a/tests/output/test_apply_redaction_annotations/output_001.pdf and b/tests/output/test_apply_redaction_annotations/output_001.pdf differ diff --git a/tests/output/test_apply_redaction_annotations/output_002.pdf b/tests/output/test_apply_redaction_annotations/output_002.pdf index 1137b5992..c390f5e2a 100644 Binary files a/tests/output/test_apply_redaction_annotations/output_002.pdf and b/tests/output/test_apply_redaction_annotations/output_002.pdf differ diff --git a/tests/output/test_apply_redaction_annotations/output_003.pdf b/tests/output/test_apply_redaction_annotations/output_003.pdf index a0625230b..07834a1b0 100644 Binary files a/tests/output/test_apply_redaction_annotations/output_003.pdf and b/tests/output/test_apply_redaction_annotations/output_003.pdf differ diff --git a/tests/output/test_apply_redaction_annotations/output_004.pdf b/tests/output/test_apply_redaction_annotations/output_004.pdf index a6bf319a1..a0491a4c4 100644 Binary files a/tests/output/test_apply_redaction_annotations/output_004.pdf and b/tests/output/test_apply_redaction_annotations/output_004.pdf differ diff --git a/tests/output/test_apply_redaction_annotations/output_005.pdf b/tests/output/test_apply_redaction_annotations/output_005.pdf index d768986e0..dee9dc13f 100644 Binary files a/tests/output/test_apply_redaction_annotations/output_005.pdf and b/tests/output/test_apply_redaction_annotations/output_005.pdf differ diff --git a/tests/output/test_apply_redaction_annotations/output_006.pdf b/tests/output/test_apply_redaction_annotations/output_006.pdf index 72cd05f01..7538b5f12 100644 Binary files a/tests/output/test_apply_redaction_annotations/output_006.pdf and b/tests/output/test_apply_redaction_annotations/output_006.pdf differ diff --git a/tests/output/test_browser_layout_inline_next_line/output.pdf b/tests/output/test_browser_layout_inline_next_line/output.pdf index 492ee1aba..423cd3ea9 100644 Binary files a/tests/output/test_browser_layout_inline_next_line/output.pdf and b/tests/output/test_browser_layout_inline_next_line/output.pdf differ diff --git a/tests/output/test_change_info_dictionary_author/output_001.pdf b/tests/output/test_change_info_dictionary_author/output_001.pdf index cf5100e23..cb01f7c6d 100644 Binary files a/tests/output/test_change_info_dictionary_author/output_001.pdf and b/tests/output/test_change_info_dictionary_author/output_001.pdf differ diff --git a/tests/output/test_change_info_dictionary_author/output_002.pdf b/tests/output/test_change_info_dictionary_author/output_002.pdf index 0e0e2cb5e..8aa3d4451 100644 Binary files a/tests/output/test_change_info_dictionary_author/output_002.pdf and b/tests/output/test_change_info_dictionary_author/output_002.pdf differ diff --git a/tests/output/test_concat_documents/output_000.pdf b/tests/output/test_concat_documents/output_000.pdf index 3fb7a0023..4858926c1 100644 Binary files a/tests/output/test_concat_documents/output_000.pdf and b/tests/output/test_concat_documents/output_000.pdf differ diff --git a/tests/output/test_concat_documents/output_001.pdf b/tests/output/test_concat_documents/output_001.pdf index 5c2045abe..3b83ab8f7 100644 Binary files a/tests/output/test_concat_documents/output_001.pdf and b/tests/output/test_concat_documents/output_001.pdf differ diff --git a/tests/output/test_concat_documents/output_002.pdf b/tests/output/test_concat_documents/output_002.pdf index 6e910d01e..91dea7055 100644 Binary files a/tests/output/test_concat_documents/output_002.pdf and b/tests/output/test_concat_documents/output_002.pdf differ diff --git a/tests/output/test_copy_document_compare_size/0187_page_0_copy.pdf b/tests/output/test_copy_document_compare_size/0187_page_0_copy.pdf index 5ec2754e4..021de36ab 100644 Binary files a/tests/output/test_copy_document_compare_size/0187_page_0_copy.pdf and b/tests/output/test_copy_document_compare_size/0187_page_0_copy.pdf differ diff --git a/tests/output/test_copy_document_compare_size/0430_page_0_copy.pdf b/tests/output/test_copy_document_compare_size/0430_page_0_copy.pdf index b6a481e84..2092e2a1d 100644 Binary files a/tests/output/test_copy_document_compare_size/0430_page_0_copy.pdf and b/tests/output/test_copy_document_compare_size/0430_page_0_copy.pdf differ diff --git a/tests/output/test_copy_document_compare_size/0462_page_0_copy.pdf b/tests/output/test_copy_document_compare_size/0462_page_0_copy.pdf index 42c5d874b..75f443d5f 100644 Binary files a/tests/output/test_copy_document_compare_size/0462_page_0_copy.pdf and b/tests/output/test_copy_document_compare_size/0462_page_0_copy.pdf differ diff --git a/tests/output/test_copy_document_compare_size/0495_page_0_copy.pdf b/tests/output/test_copy_document_compare_size/0495_page_0_copy.pdf index d741e4b59..88182e8d2 100644 Binary files a/tests/output/test_copy_document_compare_size/0495_page_0_copy.pdf and b/tests/output/test_copy_document_compare_size/0495_page_0_copy.pdf differ diff --git a/tests/output/test_copy_document_compare_size/0594_page_0_copy.pdf b/tests/output/test_copy_document_compare_size/0594_page_0_copy.pdf index 37981df87..672cd4971 100644 Binary files a/tests/output/test_copy_document_compare_size/0594_page_0_copy.pdf and b/tests/output/test_copy_document_compare_size/0594_page_0_copy.pdf differ diff --git a/tests/output/test_copy_document_compare_size/output.pdf b/tests/output/test_copy_document_compare_size/output.pdf index 06183b796..1bed09221 100644 Binary files a/tests/output/test_copy_document_compare_size/output.pdf and b/tests/output/test_copy_document_compare_size/output.pdf differ diff --git a/tests/output/test_copy_document_resize_images_compare_size/output.pdf b/tests/output/test_copy_document_resize_images_compare_size/output.pdf index e1bd1a8dc..593279301 100644 Binary files a/tests/output/test_copy_document_resize_images_compare_size/output.pdf and b/tests/output/test_copy_document_resize_images_compare_size/output.pdf differ diff --git a/tests/output/test_count_annotations/output_001.pdf b/tests/output/test_count_annotations/output_001.pdf index 8ad50225f..5f2a1e8ee 100644 Binary files a/tests/output/test_count_annotations/output_001.pdf and b/tests/output/test_count_annotations/output_001.pdf differ diff --git a/tests/output/test_count_annotations/output_002.pdf b/tests/output/test_count_annotations/output_002.pdf index 2833116b2..9ce163b7f 100644 Binary files a/tests/output/test_count_annotations/output_002.pdf and b/tests/output/test_count_annotations/output_002.pdf differ diff --git a/tests/output/test_create_document_with_output_intent/output_001.pdf b/tests/output/test_create_document_with_output_intent/output_001.pdf index 73b068f9d..44a69cec2 100644 Binary files a/tests/output/test_create_document_with_output_intent/output_001.pdf and b/tests/output/test_create_document_with_output_intent/output_001.pdf differ diff --git a/tests/output/test_detect_table/input_000.pdf b/tests/output/test_detect_table/input_000.pdf index 11ab4636b..af5c99ae8 100644 Binary files a/tests/output/test_detect_table/input_000.pdf and b/tests/output/test_detect_table/input_000.pdf differ diff --git a/tests/output/test_detect_table/input_001.pdf b/tests/output/test_detect_table/input_001.pdf index f7dcb7635..b242ac4e8 100644 Binary files a/tests/output/test_detect_table/input_001.pdf and b/tests/output/test_detect_table/input_001.pdf differ diff --git a/tests/output/test_detect_table/input_002.pdf b/tests/output/test_detect_table/input_002.pdf index c805d0561..96e2ffba9 100644 Binary files a/tests/output/test_detect_table/input_002.pdf and b/tests/output/test_detect_table/input_002.pdf differ diff --git a/tests/output/test_detect_table/input_003.pdf b/tests/output/test_detect_table/input_003.pdf index 6eec8a58e..00979b9d8 100644 Binary files a/tests/output/test_detect_table/input_003.pdf and b/tests/output/test_detect_table/input_003.pdf differ diff --git a/tests/output/test_detect_table/input_004.pdf b/tests/output/test_detect_table/input_004.pdf index 545bf1548..ea33cb795 100644 Binary files a/tests/output/test_detect_table/input_004.pdf and b/tests/output/test_detect_table/input_004.pdf differ diff --git a/tests/output/test_detect_table/input_005.pdf b/tests/output/test_detect_table/input_005.pdf index 5d66eabc1..5760eb860 100644 Binary files a/tests/output/test_detect_table/input_005.pdf and b/tests/output/test_detect_table/input_005.pdf differ diff --git a/tests/output/test_detect_table/input_006.pdf b/tests/output/test_detect_table/input_006.pdf index 7f2e0fd7e..6cd324309 100644 Binary files a/tests/output/test_detect_table/input_006.pdf and b/tests/output/test_detect_table/input_006.pdf differ diff --git a/tests/output/test_detect_table/output_000.pdf b/tests/output/test_detect_table/output_000.pdf index ee90bef75..a36993207 100644 Binary files a/tests/output/test_detect_table/output_000.pdf and b/tests/output/test_detect_table/output_000.pdf differ diff --git a/tests/output/test_detect_table/output_001.pdf b/tests/output/test_detect_table/output_001.pdf index baa72df1d..5ad423100 100644 Binary files a/tests/output/test_detect_table/output_001.pdf and b/tests/output/test_detect_table/output_001.pdf differ diff --git a/tests/output/test_detect_table/output_002.pdf b/tests/output/test_detect_table/output_002.pdf index aac50c306..9dda98dfd 100644 Binary files a/tests/output/test_detect_table/output_002.pdf and b/tests/output/test_detect_table/output_002.pdf differ diff --git a/tests/output/test_detect_table/output_003.pdf b/tests/output/test_detect_table/output_003.pdf index 95539fa54..90478208b 100644 Binary files a/tests/output/test_detect_table/output_003.pdf and b/tests/output/test_detect_table/output_003.pdf differ diff --git a/tests/output/test_detect_table/output_004.pdf b/tests/output/test_detect_table/output_004.pdf index 4998253c6..e4e4a8ce1 100644 Binary files a/tests/output/test_detect_table/output_004.pdf and b/tests/output/test_detect_table/output_004.pdf differ diff --git a/tests/output/test_detect_table/output_005.pdf b/tests/output/test_detect_table/output_005.pdf index 68b4c0120..38eadee8b 100644 Binary files a/tests/output/test_detect_table/output_005.pdf and b/tests/output/test_detect_table/output_005.pdf differ diff --git a/tests/output/test_detect_table/output_006.pdf b/tests/output/test_detect_table/output_006.pdf index 84417b327..0afb5c8fc 100644 Binary files a/tests/output/test_detect_table/output_006.pdf and b/tests/output/test_detect_table/output_006.pdf differ diff --git a/tests/output/test_digit_placement_ubuntu_font/output_001.pdf b/tests/output/test_digit_placement_ubuntu_font/output_001.pdf index 8a99928bf..3ea3c05bb 100644 Binary files a/tests/output/test_digit_placement_ubuntu_font/output_001.pdf and b/tests/output/test_digit_placement_ubuntu_font/output_001.pdf differ diff --git a/tests/output/test_digit_placement_ubuntu_font/output_001.png b/tests/output/test_digit_placement_ubuntu_font/output_001.png index 6d4d859dd..2a41e689f 100644 Binary files a/tests/output/test_digit_placement_ubuntu_font/output_001.png and b/tests/output/test_digit_placement_ubuntu_font/output_001.png differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_000.pdf b/tests/output/test_export_html_to_pdf/example_html_input_000.pdf index 6611e20dc..5f804f596 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_000.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_000.pdf differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_001.pdf b/tests/output/test_export_html_to_pdf/example_html_input_001.pdf index 4de391fa6..d2f8c74d9 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_001.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_001.pdf differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_002.pdf b/tests/output/test_export_html_to_pdf/example_html_input_002.pdf index 64f582a7f..949de7e3e 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_002.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_002.pdf differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_003.pdf b/tests/output/test_export_html_to_pdf/example_html_input_003.pdf index 02c823767..d52db3a26 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_003.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_003.pdf differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_004.pdf b/tests/output/test_export_html_to_pdf/example_html_input_004.pdf index e59d73326..c37789f3c 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_004.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_004.pdf differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_005.pdf b/tests/output/test_export_html_to_pdf/example_html_input_005.pdf index 277517900..93ca2e12b 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_005.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_005.pdf differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_006.pdf b/tests/output/test_export_html_to_pdf/example_html_input_006.pdf index 9e24ee5c5..3b66a004d 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_006.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_006.pdf differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_007.pdf b/tests/output/test_export_html_to_pdf/example_html_input_007.pdf index 9f86ec699..a6bf9b540 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_007.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_007.pdf differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_008.pdf b/tests/output/test_export_html_to_pdf/example_html_input_008.pdf index 9ccfbf17d..7953e34eb 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_008.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_008.pdf differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_009.pdf b/tests/output/test_export_html_to_pdf/example_html_input_009.pdf index 1c1a5efe8..2a0df54e3 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_009.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_009.pdf differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_010.pdf b/tests/output/test_export_html_to_pdf/example_html_input_010.pdf index bce48d859..634b0c79d 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_010.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_010.pdf differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_011.pdf b/tests/output/test_export_html_to_pdf/example_html_input_011.pdf index 92cd802a6..eca628f58 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_011.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_011.pdf differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_012.pdf b/tests/output/test_export_html_to_pdf/example_html_input_012.pdf index 7301d9934..330d5a604 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_012.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_012.pdf differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_013.pdf b/tests/output/test_export_html_to_pdf/example_html_input_013.pdf index c4dae73d1..bd65bb9d9 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_013.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_013.pdf differ diff --git a/tests/output/test_export_html_to_pdf/example_html_input_014.pdf b/tests/output/test_export_html_to_pdf/example_html_input_014.pdf index 5ad8379f9..02439d226 100644 Binary files a/tests/output/test_export_html_to_pdf/example_html_input_014.pdf and b/tests/output/test_export_html_to_pdf/example_html_input_014.pdf differ diff --git a/tests/output/test_export_markdown_to_pdf/example-markdown-input-001.md.pdf b/tests/output/test_export_markdown_to_pdf/example-markdown-input-001.md.pdf index a8450127c..5a484fb9c 100644 Binary files a/tests/output/test_export_markdown_to_pdf/example-markdown-input-001.md.pdf and b/tests/output/test_export_markdown_to_pdf/example-markdown-input-001.md.pdf differ diff --git a/tests/output/test_export_markdown_to_pdf/example-markdown-input-002.md.pdf b/tests/output/test_export_markdown_to_pdf/example-markdown-input-002.md.pdf index 472e4a0d1..f026f32d0 100644 Binary files a/tests/output/test_export_markdown_to_pdf/example-markdown-input-002.md.pdf and b/tests/output/test_export_markdown_to_pdf/example-markdown-input-002.md.pdf differ diff --git a/tests/output/test_export_markdown_to_pdf/example-markdown-input-003.md.pdf b/tests/output/test_export_markdown_to_pdf/example-markdown-input-003.md.pdf index 42548d695..9b482b67e 100644 Binary files a/tests/output/test_export_markdown_to_pdf/example-markdown-input-003.md.pdf and b/tests/output/test_export_markdown_to_pdf/example-markdown-input-003.md.pdf differ diff --git a/tests/output/test_export_markdown_to_pdf/example-markdown-input-004.md.pdf b/tests/output/test_export_markdown_to_pdf/example-markdown-input-004.md.pdf index a79892d03..c9b18b68b 100644 Binary files a/tests/output/test_export_markdown_to_pdf/example-markdown-input-004.md.pdf and b/tests/output/test_export_markdown_to_pdf/example-markdown-input-004.md.pdf differ diff --git a/tests/output/test_export_markdown_to_pdf/example-markdown-input-005.md.pdf b/tests/output/test_export_markdown_to_pdf/example-markdown-input-005.md.pdf index b8a78fb45..0fc70b929 100644 Binary files a/tests/output/test_export_markdown_to_pdf/example-markdown-input-005.md.pdf and b/tests/output/test_export_markdown_to_pdf/example-markdown-input-005.md.pdf differ diff --git a/tests/output/test_export_markdown_to_pdf/example-markdown-input-006.md.pdf b/tests/output/test_export_markdown_to_pdf/example-markdown-input-006.md.pdf index 80000bedf..9a4cbd4f1 100644 Binary files a/tests/output/test_export_markdown_to_pdf/example-markdown-input-006.md.pdf and b/tests/output/test_export_markdown_to_pdf/example-markdown-input-006.md.pdf differ diff --git a/tests/output/test_export_markdown_to_pdf/example-markdown-input-007.md.pdf b/tests/output/test_export_markdown_to_pdf/example-markdown-input-007.md.pdf index f7dd98598..5f585adb0 100644 Binary files a/tests/output/test_export_markdown_to_pdf/example-markdown-input-007.md.pdf and b/tests/output/test_export_markdown_to_pdf/example-markdown-input-007.md.pdf differ diff --git a/tests/output/test_export_markdown_to_pdf/example-markdown-input-008.md.pdf b/tests/output/test_export_markdown_to_pdf/example-markdown-input-008.md.pdf index 75f2145b2..7f9174d83 100644 Binary files a/tests/output/test_export_markdown_to_pdf/example-markdown-input-008.md.pdf and b/tests/output/test_export_markdown_to_pdf/example-markdown-input-008.md.pdf differ diff --git a/tests/output/test_export_markdown_to_pdf/example-markdown-input-009.md.pdf b/tests/output/test_export_markdown_to_pdf/example-markdown-input-009.md.pdf index d9ffd5a54..ed458cf27 100644 Binary files a/tests/output/test_export_markdown_to_pdf/example-markdown-input-009.md.pdf and b/tests/output/test_export_markdown_to_pdf/example-markdown-input-009.md.pdf differ diff --git a/tests/output/test_export_markdown_to_pdf/example-markdown-input-010.md.pdf b/tests/output/test_export_markdown_to_pdf/example-markdown-input-010.md.pdf index 6475a5bb3..246a61112 100644 Binary files a/tests/output/test_export_markdown_to_pdf/example-markdown-input-010.md.pdf and b/tests/output/test_export_markdown_to_pdf/example-markdown-input-010.md.pdf differ diff --git a/tests/output/test_export_to_mp3/output.mp3 b/tests/output/test_export_to_mp3/output.mp3 index 16a7e16fe..21970da3d 100644 Binary files a/tests/output/test_export_to_mp3/output.mp3 and b/tests/output/test_export_to_mp3/output.mp3 differ diff --git a/tests/output/test_extract_colors/output_001.pdf b/tests/output/test_extract_colors/output_001.pdf index 77767d3c6..502e91ef0 100644 Binary files a/tests/output/test_extract_colors/output_001.pdf and b/tests/output/test_extract_colors/output_001.pdf differ diff --git a/tests/output/test_extract_colors/output_002.pdf b/tests/output/test_extract_colors/output_002.pdf index c9a096624..799ec8e32 100644 Binary files a/tests/output/test_extract_colors/output_002.pdf and b/tests/output/test_extract_colors/output_002.pdf differ diff --git a/tests/output/test_extract_colors/output_002.png b/tests/output/test_extract_colors/output_002.png index 443b70a0c..cf575e192 100644 Binary files a/tests/output/test_extract_colors/output_002.png and b/tests/output/test_extract_colors/output_002.png differ diff --git a/tests/output/test_extract_courier_text/output_001.pdf b/tests/output/test_extract_courier_text/output_001.pdf index 0e0c7be9e..205a6ae9c 100644 Binary files a/tests/output/test_extract_courier_text/output_001.pdf and b/tests/output/test_extract_courier_text/output_001.pdf differ diff --git a/tests/output/test_extract_font_names/output_001.pdf b/tests/output/test_extract_font_names/output_001.pdf index 44c5a950d..94241503c 100644 Binary files a/tests/output/test_extract_font_names/output_001.pdf and b/tests/output/test_extract_font_names/output_001.pdf differ diff --git a/tests/output/test_extract_font_names/output_002.pdf b/tests/output/test_extract_font_names/output_002.pdf index fb3c8a45f..914d9d243 100644 Binary files a/tests/output/test_extract_font_names/output_002.pdf and b/tests/output/test_extract_font_names/output_002.pdf differ diff --git a/tests/output/test_extract_keywords/output_001.pdf b/tests/output/test_extract_keywords/output_001.pdf index c8d2dc7ba..bb898fd27 100644 Binary files a/tests/output/test_extract_keywords/output_001.pdf and b/tests/output/test_extract_keywords/output_001.pdf differ diff --git a/tests/output/test_extract_keywords/output_002.pdf b/tests/output/test_extract_keywords/output_002.pdf index 3a58db84b..a3fdc68cf 100644 Binary files a/tests/output/test_extract_keywords/output_002.pdf and b/tests/output/test_extract_keywords/output_002.pdf differ diff --git a/tests/output/test_extract_keywords/output_003.pdf b/tests/output/test_extract_keywords/output_003.pdf index ddd9112d6..9a7156eb7 100644 Binary files a/tests/output/test_extract_keywords/output_003.pdf and b/tests/output/test_extract_keywords/output_003.pdf differ diff --git a/tests/output/test_extract_red_text/output_001.pdf b/tests/output/test_extract_red_text/output_001.pdf index ae5dcc803..8fabb40f1 100644 Binary files a/tests/output/test_extract_red_text/output_001.pdf and b/tests/output/test_extract_red_text/output_001.pdf differ diff --git a/tests/output/test_extract_regex/output_001.pdf b/tests/output/test_extract_regex/output_001.pdf index 838032c33..3e1c05a8b 100644 Binary files a/tests/output/test_extract_regex/output_001.pdf and b/tests/output/test_extract_regex/output_001.pdf differ diff --git a/tests/output/test_extract_regex/output_002.pdf b/tests/output/test_extract_regex/output_002.pdf index dbe691a4e..e4850dd50 100644 Binary files a/tests/output/test_extract_regex/output_002.pdf and b/tests/output/test_extract_regex/output_002.pdf differ diff --git a/tests/output/test_extract_text/output_001.pdf b/tests/output/test_extract_text/output_001.pdf index 3b99b1ff0..0e08220c9 100644 Binary files a/tests/output/test_extract_text/output_001.pdf and b/tests/output/test_extract_text/output_001.pdf differ diff --git a/tests/output/test_extract_text/output_002.pdf b/tests/output/test_extract_text/output_002.pdf index d9647e815..38b9f3da9 100644 Binary files a/tests/output/test_extract_text/output_002.pdf and b/tests/output/test_extract_text/output_002.pdf differ diff --git a/tests/output/test_extract_text_expect_ground_truth/output.pdf b/tests/output/test_extract_text_expect_ground_truth/output.pdf index ee9e63814..5ff6c3f19 100644 Binary files a/tests/output/test_extract_text_expect_ground_truth/output.pdf and b/tests/output/test_extract_text_expect_ground_truth/output.pdf differ diff --git a/tests/output/test_extract_text_from_self_made_invoice/output.pdf b/tests/output/test_extract_text_from_self_made_invoice/output.pdf index abdecec73..7a3a73480 100644 Binary files a/tests/output/test_extract_text_from_self_made_invoice/output.pdf and b/tests/output/test_extract_text_from_self_made_invoice/output.pdf differ diff --git a/tests/output/test_margin_and_padding/output_001.pdf b/tests/output/test_margin_and_padding/output_001.pdf index f5bc0ef38..ff78ba29a 100644 Binary files a/tests/output/test_margin_and_padding/output_001.pdf and b/tests/output/test_margin_and_padding/output_001.pdf differ diff --git a/tests/output/test_margin_and_padding/output_002.pdf b/tests/output/test_margin_and_padding/output_002.pdf index 98e3b5c3d..163918536 100644 Binary files a/tests/output/test_margin_and_padding/output_002.pdf and b/tests/output/test_margin_and_padding/output_002.pdf differ diff --git a/tests/output/test_modify_image/output_001.pdf b/tests/output/test_modify_image/output_001.pdf index a26eb12ea..cc49870be 100644 Binary files a/tests/output/test_modify_image/output_001.pdf and b/tests/output/test_modify_image/output_001.pdf differ diff --git a/tests/output/test_modify_image/output_002.pdf b/tests/output/test_modify_image/output_002.pdf index 7703a83cc..49ad15c05 100644 Binary files a/tests/output/test_modify_image/output_002.pdf and b/tests/output/test_modify_image/output_002.pdf differ diff --git a/tests/output/test_open_document/output.pdf b/tests/output/test_open_document/output.pdf index 5d8736cab..bcbaa4732 100644 Binary files a/tests/output/test_open_document/output.pdf and b/tests/output/test_open_document/output.pdf differ diff --git a/tests/output/test_open_encrypted_document/output.pdf b/tests/output/test_open_encrypted_document/output.pdf index a563efaef..e2aa535c4 100644 Binary files a/tests/output/test_open_encrypted_document/output.pdf and b/tests/output/test_open_encrypted_document/output.pdf differ diff --git a/tests/output/test_optimize_images/output_001.pdf b/tests/output/test_optimize_images/output_001.pdf index e64f499e9..7cf0d5c35 100644 Binary files a/tests/output/test_optimize_images/output_001.pdf and b/tests/output/test_optimize_images/output_001.pdf differ diff --git a/tests/output/test_page_has_empty_resource_dictionary/output_001.pdf b/tests/output/test_page_has_empty_resource_dictionary/output_001.pdf index 62e7780a9..88d387bf4 100644 Binary files a/tests/output/test_page_has_empty_resource_dictionary/output_001.pdf and b/tests/output/test_page_has_empty_resource_dictionary/output_001.pdf differ diff --git a/tests/output/test_redact_common_regular_expressions/output_001.pdf b/tests/output/test_redact_common_regular_expressions/output_001.pdf index 87a9ce8fa..2705ac744 100644 Binary files a/tests/output/test_redact_common_regular_expressions/output_001.pdf and b/tests/output/test_redact_common_regular_expressions/output_001.pdf differ diff --git a/tests/output/test_redact_common_regular_expressions/output_002.pdf b/tests/output/test_redact_common_regular_expressions/output_002.pdf index 23fbe4708..91d49471a 100644 Binary files a/tests/output/test_redact_common_regular_expressions/output_002.pdf and b/tests/output/test_redact_common_regular_expressions/output_002.pdf differ diff --git a/tests/output/test_redact_common_regular_expressions/output_003.pdf b/tests/output/test_redact_common_regular_expressions/output_003.pdf index 7e1c977d7..f5a5a3662 100644 Binary files a/tests/output/test_redact_common_regular_expressions/output_003.pdf and b/tests/output/test_redact_common_regular_expressions/output_003.pdf differ diff --git a/tests/output/test_remove_annotation/output_001.pdf b/tests/output/test_remove_annotation/output_001.pdf index 46e4f7d0a..824933258 100644 Binary files a/tests/output/test_remove_annotation/output_001.pdf and b/tests/output/test_remove_annotation/output_001.pdf differ diff --git a/tests/output/test_remove_annotation/output_002.pdf b/tests/output/test_remove_annotation/output_002.pdf index af5a8059c..3f59d1743 100644 Binary files a/tests/output/test_remove_annotation/output_002.pdf and b/tests/output/test_remove_annotation/output_002.pdf differ diff --git a/tests/output/test_remove_annotation/output_003.pdf b/tests/output/test_remove_annotation/output_003.pdf index f571d6e50..45692f3ad 100644 Binary files a/tests/output/test_remove_annotation/output_003.pdf and b/tests/output/test_remove_annotation/output_003.pdf differ diff --git a/tests/output/test_remove_page/output_001.pdf b/tests/output/test_remove_page/output_001.pdf index 8f2a04acb..63f650d71 100644 Binary files a/tests/output/test_remove_page/output_001.pdf and b/tests/output/test_remove_page/output_001.pdf differ diff --git a/tests/output/test_remove_page/output_002.pdf b/tests/output/test_remove_page/output_002.pdf index 7060d3899..f28a4c6ca 100644 Binary files a/tests/output/test_remove_page/output_002.pdf and b/tests/output/test_remove_page/output_002.pdf differ diff --git a/tests/output/test_remove_page/output_003.pdf b/tests/output/test_remove_page/output_003.pdf index 1b5f9ef73..9adfda6c5 100644 Binary files a/tests/output/test_remove_page/output_003.pdf and b/tests/output/test_remove_page/output_003.pdf differ diff --git a/tests/output/test_remove_page/output_004.pdf b/tests/output/test_remove_page/output_004.pdf index b80b0cf35..6d66a1175 100644 Binary files a/tests/output/test_remove_page/output_004.pdf and b/tests/output/test_remove_page/output_004.pdf differ diff --git a/tests/output/test_rotate_page/output_001.pdf b/tests/output/test_rotate_page/output_001.pdf index c4172829d..b2e2559a0 100644 Binary files a/tests/output/test_rotate_page/output_001.pdf and b/tests/output/test_rotate_page/output_001.pdf differ diff --git a/tests/output/test_rotate_page/output_002.pdf b/tests/output/test_rotate_page/output_002.pdf index 21e94c5ca..69b37f0a2 100644 Binary files a/tests/output/test_rotate_page/output_002.pdf and b/tests/output/test_rotate_page/output_002.pdf differ diff --git a/tests/output/test_rotate_page/output_003.pdf b/tests/output/test_rotate_page/output_003.pdf index 85e59ca26..82169e96a 100644 Binary files a/tests/output/test_rotate_page/output_003.pdf and b/tests/output/test_rotate_page/output_003.pdf differ diff --git a/tests/output/test_split_complementary_color_scheme/output.pdf b/tests/output/test_split_complementary_color_scheme/output.pdf index bb6c3d869..95b7b2f17 100644 Binary files a/tests/output/test_split_complementary_color_scheme/output.pdf and b/tests/output/test_split_complementary_color_scheme/output.pdf differ diff --git a/tests/output/test_tetradic_rectangle_color_scheme/output.pdf b/tests/output/test_tetradic_rectangle_color_scheme/output.pdf index 5bb0d30e2..123326ae9 100644 Binary files a/tests/output/test_tetradic_rectangle_color_scheme/output.pdf and b/tests/output/test_tetradic_rectangle_color_scheme/output.pdf differ diff --git a/tests/output/test_tetradic_square_color_scheme/output.pdf b/tests/output/test_tetradic_square_color_scheme/output.pdf index 877079e1f..ec8b7e514 100644 Binary files a/tests/output/test_tetradic_square_color_scheme/output.pdf and b/tests/output/test_tetradic_square_color_scheme/output.pdf differ diff --git a/tests/output/test_triadic_color_scheme/output.pdf b/tests/output/test_triadic_color_scheme/output.pdf index 09dea1678..971601ea3 100644 Binary files a/tests/output/test_triadic_color_scheme/output.pdf and b/tests/output/test_triadic_color_scheme/output.pdf differ diff --git a/tests/output/test_write_2_scatter_plots/output.pdf b/tests/output/test_write_2_scatter_plots/output.pdf index d9098e5ac..fab24b39a 100644 Binary files a/tests/output/test_write_2_scatter_plots/output.pdf and b/tests/output/test_write_2_scatter_plots/output.pdf differ diff --git a/tests/output/test_write_3d_density_chart/output.pdf b/tests/output/test_write_3d_density_chart/output.pdf index 5aeea8eb8..c08bd86a3 100644 Binary files a/tests/output/test_write_3d_density_chart/output.pdf and b/tests/output/test_write_3d_density_chart/output.pdf differ diff --git a/tests/output/test_write_3d_surface_plot/output.pdf b/tests/output/test_write_3d_surface_plot/output.pdf index d2a778376..c73f9c88c 100644 Binary files a/tests/output/test_write_3d_surface_plot/output.pdf and b/tests/output/test_write_3d_surface_plot/output.pdf differ diff --git a/tests/output/test_write_all_types_of_barcode/output.pdf b/tests/output/test_write_all_types_of_barcode/output.pdf index f42768629..8c67f3cb6 100644 Binary files a/tests/output/test_write_all_types_of_barcode/output.pdf and b/tests/output/test_write_all_types_of_barcode/output.pdf differ diff --git a/tests/output/test_write_battleship/output.pdf b/tests/output/test_write_battleship/output.pdf index 629e04702..cad38d59c 100644 Binary files a/tests/output/test_write_battleship/output.pdf and b/tests/output/test_write_battleship/output.pdf differ diff --git a/tests/output/test_write_blobs/output.pdf b/tests/output/test_write_blobs/output.pdf index bafba37d9..daf4a49fd 100644 Binary files a/tests/output/test_write_blobs/output.pdf and b/tests/output/test_write_blobs/output.pdf differ diff --git a/tests/output/test_write_check_box/output_001.pdf b/tests/output/test_write_check_box/output_001.pdf index 3cabb86e9..ff86adf50 100644 Binary files a/tests/output/test_write_check_box/output_001.pdf and b/tests/output/test_write_check_box/output_001.pdf differ diff --git a/tests/output/test_write_check_box/output_002.pdf b/tests/output/test_write_check_box/output_002.pdf index ad12017ac..0f4d8124a 100644 Binary files a/tests/output/test_write_check_box/output_002.pdf and b/tests/output/test_write_check_box/output_002.pdf differ diff --git a/tests/output/test_write_chunk_of_text/output.pdf b/tests/output/test_write_chunk_of_text/output.pdf index e8cf9d3cd..b580aa927 100644 Binary files a/tests/output/test_write_chunk_of_text/output.pdf and b/tests/output/test_write_chunk_of_text/output.pdf differ diff --git a/tests/output/test_write_chunk_of_text_escaped_chars/output.pdf b/tests/output/test_write_chunk_of_text_escaped_chars/output.pdf index 066d652a8..3d17ab845 100644 Binary files a/tests/output/test_write_chunk_of_text_escaped_chars/output.pdf and b/tests/output/test_write_chunk_of_text_escaped_chars/output.pdf differ diff --git a/tests/output/test_write_chunk_of_text_in_rainbow_colors/output.pdf b/tests/output/test_write_chunk_of_text_in_rainbow_colors/output.pdf index 4d0c2bfc9..9ea140865 100644 Binary files a/tests/output/test_write_chunk_of_text_in_rainbow_colors/output.pdf and b/tests/output/test_write_chunk_of_text_in_rainbow_colors/output.pdf differ diff --git a/tests/output/test_write_chunks_of_text/output_001.pdf b/tests/output/test_write_chunks_of_text/output_001.pdf index 3dd1585bd..456971911 100644 Binary files a/tests/output/test_write_chunks_of_text/output_001.pdf and b/tests/output/test_write_chunks_of_text/output_001.pdf differ diff --git a/tests/output/test_write_chunks_of_text/output_002.pdf b/tests/output/test_write_chunks_of_text/output_002.pdf index af2c0a0f8..6dbb1ced3 100644 Binary files a/tests/output/test_write_chunks_of_text/output_002.pdf and b/tests/output/test_write_chunks_of_text/output_002.pdf differ diff --git a/tests/output/test_write_chunks_of_text/output_003.pdf b/tests/output/test_write_chunks_of_text/output_003.pdf index 25007fdd7..43ece48de 100644 Binary files a/tests/output/test_write_chunks_of_text/output_003.pdf and b/tests/output/test_write_chunks_of_text/output_003.pdf differ diff --git a/tests/output/test_write_chunks_of_text/output_004.pdf b/tests/output/test_write_chunks_of_text/output_004.pdf index 2face1ca5..7f2e284b0 100644 Binary files a/tests/output/test_write_chunks_of_text/output_004.pdf and b/tests/output/test_write_chunks_of_text/output_004.pdf differ diff --git a/tests/output/test_write_chunks_of_text/output_005.pdf b/tests/output/test_write_chunks_of_text/output_005.pdf index da1822b0f..9c46496f9 100644 Binary files a/tests/output/test_write_chunks_of_text/output_005.pdf and b/tests/output/test_write_chunks_of_text/output_005.pdf differ diff --git a/tests/output/test_write_chunks_of_text_preserves_bounding_boxes/output.pdf b/tests/output/test_write_chunks_of_text_preserves_bounding_boxes/output.pdf index bd4a7416d..e4b8c0dba 100644 Binary files a/tests/output/test_write_chunks_of_text_preserves_bounding_boxes/output.pdf and b/tests/output/test_write_chunks_of_text_preserves_bounding_boxes/output.pdf differ diff --git a/tests/output/test_write_code_128_barcode/output.pdf b/tests/output/test_write_code_128_barcode/output.pdf index 0a5422459..5dc8862c0 100644 Binary files a/tests/output/test_write_code_128_barcode/output.pdf and b/tests/output/test_write_code_128_barcode/output.pdf differ diff --git a/tests/output/test_write_code_128_barcode_in_color/output.pdf b/tests/output/test_write_code_128_barcode_in_color/output.pdf index b90298639..b248d40ab 100644 Binary files a/tests/output/test_write_code_128_barcode_in_color/output.pdf and b/tests/output/test_write_code_128_barcode_in_color/output.pdf differ diff --git a/tests/output/test_write_codeblock/output.pdf b/tests/output/test_write_codeblock/output.pdf index 2834d951d..a192b7498 100644 Binary files a/tests/output/test_write_codeblock/output.pdf and b/tests/output/test_write_codeblock/output.pdf differ diff --git a/tests/output/test_write_dragon_curve/output.pdf b/tests/output/test_write_dragon_curve/output.pdf index 79fe91e73..192d6ddb7 100644 Binary files a/tests/output/test_write_dragon_curve/output.pdf and b/tests/output/test_write_dragon_curve/output.pdf differ diff --git a/tests/output/test_write_drop_down_list/output_001.pdf b/tests/output/test_write_drop_down_list/output_001.pdf index 6e28f494d..15f91f1c8 100644 Binary files a/tests/output/test_write_drop_down_list/output_001.pdf and b/tests/output/test_write_drop_down_list/output_001.pdf differ diff --git a/tests/output/test_write_drop_down_list/output_002.pdf b/tests/output/test_write_drop_down_list/output_002.pdf index 0e5635ef1..fda884bbb 100644 Binary files a/tests/output/test_write_drop_down_list/output_002.pdf and b/tests/output/test_write_drop_down_list/output_002.pdf differ diff --git a/tests/output/test_write_emoji/output.pdf b/tests/output/test_write_emoji/output.pdf index ea690fe6b..2c6739adf 100644 Binary files a/tests/output/test_write_emoji/output.pdf and b/tests/output/test_write_emoji/output.pdf differ diff --git a/tests/output/test_write_empty_document/output.pdf b/tests/output/test_write_empty_document/output.pdf index cd6413f47..789070643 100644 Binary files a/tests/output/test_write_empty_document/output.pdf and b/tests/output/test_write_empty_document/output.pdf differ diff --git a/tests/output/test_write_fixed_column_width_table/output_001.pdf b/tests/output/test_write_fixed_column_width_table/output_001.pdf index b227eabc2..2d93f3cd8 100644 Binary files a/tests/output/test_write_fixed_column_width_table/output_001.pdf and b/tests/output/test_write_fixed_column_width_table/output_001.pdf differ diff --git a/tests/output/test_write_fixed_column_width_table/output_002.pdf b/tests/output/test_write_fixed_column_width_table/output_002.pdf index 20f4cbf9f..100025923 100644 Binary files a/tests/output/test_write_fixed_column_width_table/output_002.pdf and b/tests/output/test_write_fixed_column_width_table/output_002.pdf differ diff --git a/tests/output/test_write_fixed_column_width_table/output_003.pdf b/tests/output/test_write_fixed_column_width_table/output_003.pdf index 0300db1c5..0868b3d35 100644 Binary files a/tests/output/test_write_fixed_column_width_table/output_003.pdf and b/tests/output/test_write_fixed_column_width_table/output_003.pdf differ diff --git a/tests/output/test_write_fixed_column_width_table/output_004.pdf b/tests/output/test_write_fixed_column_width_table/output_004.pdf index 9af28bb35..fcea1aec0 100644 Binary files a/tests/output/test_write_fixed_column_width_table/output_004.pdf and b/tests/output/test_write_fixed_column_width_table/output_004.pdf differ diff --git a/tests/output/test_write_fixed_column_width_table/output_005.pdf b/tests/output/test_write_fixed_column_width_table/output_005.pdf index 786c5f618..e9048fca0 100644 Binary files a/tests/output/test_write_fixed_column_width_table/output_005.pdf and b/tests/output/test_write_fixed_column_width_table/output_005.pdf differ diff --git a/tests/output/test_write_flexi_table/output_001.pdf b/tests/output/test_write_flexi_table/output_001.pdf index 02412f9dc..111c113f8 100644 Binary files a/tests/output/test_write_flexi_table/output_001.pdf and b/tests/output/test_write_flexi_table/output_001.pdf differ diff --git a/tests/output/test_write_flexi_table/output_002.pdf b/tests/output/test_write_flexi_table/output_002.pdf index 0525f4f04..d2dd59e77 100644 Binary files a/tests/output/test_write_flexi_table/output_002.pdf and b/tests/output/test_write_flexi_table/output_002.pdf differ diff --git a/tests/output/test_write_flexi_table/output_003.pdf b/tests/output/test_write_flexi_table/output_003.pdf index 45d52c5d8..443fbfdef 100644 Binary files a/tests/output/test_write_flexi_table/output_003.pdf and b/tests/output/test_write_flexi_table/output_003.pdf differ diff --git a/tests/output/test_write_flexi_table/output_004.pdf b/tests/output/test_write_flexi_table/output_004.pdf index ef33dccf5..fc65b5caa 100644 Binary files a/tests/output/test_write_flexi_table/output_004.pdf and b/tests/output/test_write_flexi_table/output_004.pdf differ diff --git a/tests/output/test_write_flexi_table/output_005.pdf b/tests/output/test_write_flexi_table/output_005.pdf index a0ef602ac..a4494db41 100644 Binary files a/tests/output/test_write_flexi_table/output_005.pdf and b/tests/output/test_write_flexi_table/output_005.pdf differ diff --git a/tests/output/test_write_flexi_table_with_preferred_width/output.pdf b/tests/output/test_write_flexi_table_with_preferred_width/output.pdf index 64e253a99..7ca5b8d37 100644 Binary files a/tests/output/test_write_flexi_table_with_preferred_width/output.pdf and b/tests/output/test_write_flexi_table_with_preferred_width/output.pdf differ diff --git a/tests/output/test_write_flowchart_line_art/output.pdf b/tests/output/test_write_flowchart_line_art/output.pdf index 9ec765534..15471189f 100644 Binary files a/tests/output/test_write_flowchart_line_art/output.pdf and b/tests/output/test_write_flowchart_line_art/output.pdf differ diff --git a/tests/output/test_write_flyer/output.pdf b/tests/output/test_write_flyer/output.pdf index e424a4c13..93cd381a7 100644 Binary files a/tests/output/test_write_flyer/output.pdf and b/tests/output/test_write_flyer/output.pdf differ diff --git a/tests/output/test_write_grayscale_image/output.pdf b/tests/output/test_write_grayscale_image/output.pdf index 826849931..09c27bafc 100644 Binary files a/tests/output/test_write_grayscale_image/output.pdf and b/tests/output/test_write_grayscale_image/output.pdf differ diff --git a/tests/output/test_write_hello_world_with_monaco_font/output_001.pdf b/tests/output/test_write_hello_world_with_monaco_font/output_001.pdf index 2d3cc6347..e0d8f5e09 100644 Binary files a/tests/output/test_write_hello_world_with_monaco_font/output_001.pdf and b/tests/output/test_write_hello_world_with_monaco_font/output_001.pdf differ diff --git a/tests/output/test_write_hello_world_with_simhei_font/output_001.pdf b/tests/output/test_write_hello_world_with_simhei_font/output_001.pdf index ee37cd510..0c7b0d804 100644 Binary files a/tests/output/test_write_hello_world_with_simhei_font/output_001.pdf and b/tests/output/test_write_hello_world_with_simhei_font/output_001.pdf differ diff --git a/tests/output/test_write_hyphenated_paragraph/output.pdf b/tests/output/test_write_hyphenated_paragraph/output.pdf index fef65ff97..7ab1a0ec5 100644 Binary files a/tests/output/test_write_hyphenated_paragraph/output.pdf and b/tests/output/test_write_hyphenated_paragraph/output.pdf differ diff --git a/tests/output/test_write_image_aligned_center/output.pdf b/tests/output/test_write_image_aligned_center/output.pdf index ffa578c2b..9b174987b 100644 Binary files a/tests/output/test_write_image_aligned_center/output.pdf and b/tests/output/test_write_image_aligned_center/output.pdf differ diff --git a/tests/output/test_write_image_by_url/output.pdf b/tests/output/test_write_image_by_url/output.pdf index 43fe26763..b6dc8375a 100644 Binary files a/tests/output/test_write_image_by_url/output.pdf and b/tests/output/test_write_image_by_url/output.pdf differ diff --git a/tests/output/test_write_incomplete_table/output.pdf b/tests/output/test_write_incomplete_table/output.pdf index 16fe70e87..480bbf1e6 100644 Binary files a/tests/output/test_write_incomplete_table/output.pdf and b/tests/output/test_write_incomplete_table/output.pdf differ diff --git a/tests/output/test_write_line_of_text_justified_center/output.pdf b/tests/output/test_write_line_of_text_justified_center/output.pdf index 2daa9d9d2..311ab59b6 100644 Binary files a/tests/output/test_write_line_of_text_justified_center/output.pdf and b/tests/output/test_write_line_of_text_justified_center/output.pdf differ diff --git a/tests/output/test_write_line_of_text_justified_full/output.pdf b/tests/output/test_write_line_of_text_justified_full/output.pdf index 8ac016cb0..417d45b7d 100644 Binary files a/tests/output/test_write_line_of_text_justified_full/output.pdf and b/tests/output/test_write_line_of_text_justified_full/output.pdf differ diff --git a/tests/output/test_write_line_of_text_justified_right/output.pdf b/tests/output/test_write_line_of_text_justified_right/output.pdf index d96251ab1..5e9ecfea1 100644 Binary files a/tests/output/test_write_line_of_text_justified_right/output.pdf and b/tests/output/test_write_line_of_text_justified_right/output.pdf differ diff --git a/tests/output/test_write_lissajours_line_art/output.pdf b/tests/output/test_write_lissajours_line_art/output.pdf index 0973b470f..a63064b56 100644 Binary files a/tests/output/test_write_lissajours_line_art/output.pdf and b/tests/output/test_write_lissajours_line_art/output.pdf differ diff --git a/tests/output/test_write_long_unordered_list/output.pdf b/tests/output/test_write_long_unordered_list/output.pdf index e36982ca3..072f8672e 100644 Binary files a/tests/output/test_write_long_unordered_list/output.pdf and b/tests/output/test_write_long_unordered_list/output.pdf differ diff --git a/tests/output/test_write_multiple_pages/output.pdf b/tests/output/test_write_multiple_pages/output.pdf index 361bd14a5..c32adde24 100644 Binary files a/tests/output/test_write_multiple_pages/output.pdf and b/tests/output/test_write_multiple_pages/output.pdf differ diff --git a/tests/output/test_write_nested_ordered_list/output.pdf b/tests/output/test_write_nested_ordered_list/output.pdf index a4f225405..cba433c4b 100644 Binary files a/tests/output/test_write_nested_ordered_list/output.pdf and b/tests/output/test_write_nested_ordered_list/output.pdf differ diff --git a/tests/output/test_write_nested_unordered_list/output.pdf b/tests/output/test_write_nested_unordered_list/output.pdf index 998ca7782..7356277e3 100644 Binary files a/tests/output/test_write_nested_unordered_list/output.pdf and b/tests/output/test_write_nested_unordered_list/output.pdf differ diff --git a/tests/output/test_write_nested_unordered_list/output.png b/tests/output/test_write_nested_unordered_list/output.png index 18996abde..5d0bc9652 100644 Binary files a/tests/output/test_write_nested_unordered_list/output.png and b/tests/output/test_write_nested_unordered_list/output.png differ diff --git a/tests/output/test_write_ordered_list/output_001.pdf b/tests/output/test_write_ordered_list/output_001.pdf index 171fa1375..9530dad2e 100644 Binary files a/tests/output/test_write_ordered_list/output_001.pdf and b/tests/output/test_write_ordered_list/output_001.pdf differ diff --git a/tests/output/test_write_ordered_list/output_002.pdf b/tests/output/test_write_ordered_list/output_002.pdf index c851b1bc4..35ababaa0 100644 Binary files a/tests/output/test_write_ordered_list/output_002.pdf and b/tests/output/test_write_ordered_list/output_002.pdf differ diff --git a/tests/output/test_write_paragraph/output.pdf b/tests/output/test_write_paragraph/output.pdf index 84d18155e..11d723dbb 100644 Binary files a/tests/output/test_write_paragraph/output.pdf and b/tests/output/test_write_paragraph/output.pdf differ diff --git a/tests/output/test_write_paragraph_alignment/output.pdf b/tests/output/test_write_paragraph_alignment/output.pdf index e4a9b5457..902d14028 100644 Binary files a/tests/output/test_write_paragraph_alignment/output.pdf and b/tests/output/test_write_paragraph_alignment/output.pdf differ diff --git a/tests/output/test_write_paragraph_border_left/output.pdf b/tests/output/test_write_paragraph_border_left/output.pdf index db922577c..1bcfba347 100644 Binary files a/tests/output/test_write_paragraph_border_left/output.pdf and b/tests/output/test_write_paragraph_border_left/output.pdf differ diff --git a/tests/output/test_write_paragraph_force_split/output.pdf b/tests/output/test_write_paragraph_force_split/output.pdf index fbdbb37f1..55409f65b 100644 Binary files a/tests/output/test_write_paragraph_force_split/output.pdf and b/tests/output/test_write_paragraph_force_split/output.pdf differ diff --git a/tests/output/test_write_paragraph_justified_center/output_001.pdf b/tests/output/test_write_paragraph_justified_center/output_001.pdf index 47a0d57bd..db0eb683f 100644 Binary files a/tests/output/test_write_paragraph_justified_center/output_001.pdf and b/tests/output/test_write_paragraph_justified_center/output_001.pdf differ diff --git a/tests/output/test_write_paragraph_justified_center/output_002.pdf b/tests/output/test_write_paragraph_justified_center/output_002.pdf index 7c1907e56..df24342a3 100644 Binary files a/tests/output/test_write_paragraph_justified_center/output_002.pdf and b/tests/output/test_write_paragraph_justified_center/output_002.pdf differ diff --git a/tests/output/test_write_paragraph_justified_center_with_padding/output.pdf b/tests/output/test_write_paragraph_justified_center_with_padding/output.pdf index e3403b0fb..009b270d6 100644 Binary files a/tests/output/test_write_paragraph_justified_center_with_padding/output.pdf and b/tests/output/test_write_paragraph_justified_center_with_padding/output.pdf differ diff --git a/tests/output/test_write_paragraph_justified_center_with_padding_and_border/output.pdf b/tests/output/test_write_paragraph_justified_center_with_padding_and_border/output.pdf index eaeea1cc5..a7849841a 100644 Binary files a/tests/output/test_write_paragraph_justified_center_with_padding_and_border/output.pdf and b/tests/output/test_write_paragraph_justified_center_with_padding_and_border/output.pdf differ diff --git a/tests/output/test_write_paragraph_justified_center_with_padding_and_border_and_background/output.pdf b/tests/output/test_write_paragraph_justified_center_with_padding_and_border_and_background/output.pdf index 742900910..5bbbe3eb8 100644 Binary files a/tests/output/test_write_paragraph_justified_center_with_padding_and_border_and_background/output.pdf and b/tests/output/test_write_paragraph_justified_center_with_padding_and_border_and_background/output.pdf differ diff --git a/tests/output/test_write_paragraph_justified_full/output.pdf b/tests/output/test_write_paragraph_justified_full/output.pdf index d1a7aeb55..514694835 100644 Binary files a/tests/output/test_write_paragraph_justified_full/output.pdf and b/tests/output/test_write_paragraph_justified_full/output.pdf differ diff --git a/tests/output/test_write_paragraph_justified_right/output.pdf b/tests/output/test_write_paragraph_justified_right/output.pdf index fa15f6209..ae7647e5f 100644 Binary files a/tests/output/test_write_paragraph_justified_right/output.pdf and b/tests/output/test_write_paragraph_justified_right/output.pdf differ diff --git a/tests/output/test_write_paragraph_preserve_space/output.pdf b/tests/output/test_write_paragraph_preserve_space/output.pdf index 44dbd5c3b..5c53de467 100644 Binary files a/tests/output/test_write_paragraph_preserve_space/output.pdf and b/tests/output/test_write_paragraph_preserve_space/output.pdf differ diff --git a/tests/output/test_write_paragraph_save_twice/output_001.pdf b/tests/output/test_write_paragraph_save_twice/output_001.pdf index a6a4ae3f9..4f6df7da8 100644 Binary files a/tests/output/test_write_paragraph_save_twice/output_001.pdf and b/tests/output/test_write_paragraph_save_twice/output_001.pdf differ diff --git a/tests/output/test_write_paragraph_save_twice/output_002.pdf b/tests/output/test_write_paragraph_save_twice/output_002.pdf index c41fc42a4..185ea177c 100644 Binary files a/tests/output/test_write_paragraph_save_twice/output_002.pdf and b/tests/output/test_write_paragraph_save_twice/output_002.pdf differ diff --git a/tests/output/test_write_paragraph_with_accented_letters/output.pdf b/tests/output/test_write_paragraph_with_accented_letters/output.pdf index 521a0ac49..82c3e24fe 100644 Binary files a/tests/output/test_write_paragraph_with_accented_letters/output.pdf and b/tests/output/test_write_paragraph_with_accented_letters/output.pdf differ diff --git a/tests/output/test_write_paragraphs_using_multi_column_layout/output.pdf b/tests/output/test_write_paragraphs_using_multi_column_layout/output.pdf index 60b2f238e..ec1f03807 100644 Binary files a/tests/output/test_write_paragraphs_using_multi_column_layout/output.pdf and b/tests/output/test_write_paragraphs_using_multi_column_layout/output.pdf differ diff --git a/tests/output/test_write_paragraphs_using_single_column_layout/output.pdf b/tests/output/test_write_paragraphs_using_single_column_layout/output.pdf index 1b6198e61..cbe013449 100644 Binary files a/tests/output/test_write_paragraphs_using_single_column_layout/output.pdf and b/tests/output/test_write_paragraphs_using_single_column_layout/output.pdf differ diff --git a/tests/output/test_write_paragraphs_with_headings/output.pdf b/tests/output/test_write_paragraphs_with_headings/output.pdf index f33d7608b..d4e34f031 100644 Binary files a/tests/output/test_write_paragraphs_with_headings/output.pdf and b/tests/output/test_write_paragraphs_with_headings/output.pdf differ diff --git a/tests/output/test_write_pdf_a_1b/output_001.pdf b/tests/output/test_write_pdf_a_1b/output_001.pdf index 0f81b8c6d..a67121a6a 100644 Binary files a/tests/output/test_write_pdf_a_1b/output_001.pdf and b/tests/output/test_write_pdf_a_1b/output_001.pdf differ diff --git a/tests/output/test_write_pdf_a_1b/output_002.pdf b/tests/output/test_write_pdf_a_1b/output_002.pdf index 21db9e78e..7c0c0f5e6 100644 Binary files a/tests/output/test_write_pdf_a_1b/output_002.pdf and b/tests/output/test_write_pdf_a_1b/output_002.pdf differ diff --git a/tests/output/test_write_pil_image/output.pdf b/tests/output/test_write_pil_image/output.pdf index 6d1029416..61a45bbfe 100644 Binary files a/tests/output/test_write_pil_image/output.pdf and b/tests/output/test_write_pil_image/output.pdf differ diff --git a/tests/output/test_write_png_image_by_url/output.pdf b/tests/output/test_write_png_image_by_url/output.pdf index 6d913ab0d..792ea7e54 100644 Binary files a/tests/output/test_write_png_image_by_url/output.pdf and b/tests/output/test_write_png_image_by_url/output.pdf differ diff --git a/tests/output/test_write_radar_plot/output.pdf b/tests/output/test_write_radar_plot/output.pdf index 6c59396bb..a718a5337 100644 Binary files a/tests/output/test_write_radar_plot/output.pdf and b/tests/output/test_write_radar_plot/output.pdf differ diff --git a/tests/output/test_write_table_with_col_span/output.pdf b/tests/output/test_write_table_with_col_span/output.pdf index 545c5c206..a78c77070 100644 Binary files a/tests/output/test_write_table_with_col_span/output.pdf and b/tests/output/test_write_table_with_col_span/output.pdf differ diff --git a/tests/output/test_write_table_with_image/output.pdf b/tests/output/test_write_table_with_image/output.pdf index f8e1ab0e1..552f885c3 100644 Binary files a/tests/output/test_write_table_with_image/output.pdf and b/tests/output/test_write_table_with_image/output.pdf differ diff --git a/tests/output/test_write_table_with_non_black_paragraphs/output.pdf b/tests/output/test_write_table_with_non_black_paragraphs/output.pdf index f9b963075..0e8b866a2 100644 Binary files a/tests/output/test_write_table_with_non_black_paragraphs/output.pdf and b/tests/output/test_write_table_with_non_black_paragraphs/output.pdf differ diff --git a/tests/output/test_write_table_with_rainbow_background/output.pdf b/tests/output/test_write_table_with_rainbow_background/output.pdf index 44cfa539f..e5eede82d 100644 Binary files a/tests/output/test_write_table_with_rainbow_background/output.pdf and b/tests/output/test_write_table_with_rainbow_background/output.pdf differ diff --git a/tests/output/test_write_table_with_row_span/output.pdf b/tests/output/test_write_table_with_row_span/output.pdf index 03bc75c4d..816123edd 100644 Binary files a/tests/output/test_write_table_with_row_span/output.pdf and b/tests/output/test_write_table_with_row_span/output.pdf differ diff --git a/tests/output/test_write_table_with_special_characters/output.pdf b/tests/output/test_write_table_with_special_characters/output.pdf index 7517ab5a4..ca9ef07c1 100644 Binary files a/tests/output/test_write_table_with_special_characters/output.pdf and b/tests/output/test_write_table_with_special_characters/output.pdf differ diff --git a/tests/output/test_write_tents_and_trees/output.pdf b/tests/output/test_write_tents_and_trees/output.pdf index 4cfbd23b5..be8dc0cea 100644 Binary files a/tests/output/test_write_tents_and_trees/output.pdf and b/tests/output/test_write_tents_and_trees/output.pdf differ diff --git a/tests/output/test_write_text_area/output_001.pdf b/tests/output/test_write_text_area/output_001.pdf index bd40c5b68..f1fe71ad9 100644 Binary files a/tests/output/test_write_text_area/output_001.pdf and b/tests/output/test_write_text_area/output_001.pdf differ diff --git a/tests/output/test_write_text_area/output_002.pdf b/tests/output/test_write_text_area/output_002.pdf index 17852efc5..51606c5b4 100644 Binary files a/tests/output/test_write_text_area/output_002.pdf and b/tests/output/test_write_text_area/output_002.pdf differ diff --git a/tests/output/test_write_text_field/output_001.pdf b/tests/output/test_write_text_field/output_001.pdf index 8944389e1..e6adc427b 100644 Binary files a/tests/output/test_write_text_field/output_001.pdf and b/tests/output/test_write_text_field/output_001.pdf differ diff --git a/tests/output/test_write_text_field/output_002.pdf b/tests/output/test_write_text_field/output_002.pdf index 01448dd79..641c3636a 100644 Binary files a/tests/output/test_write_text_field/output_002.pdf and b/tests/output/test_write_text_field/output_002.pdf differ diff --git a/tests/output/test_write_unordered_list/output.pdf b/tests/output/test_write_unordered_list/output.pdf index 5eb544824..bf4dbf71e 100644 Binary files a/tests/output/test_write_unordered_list/output.pdf and b/tests/output/test_write_unordered_list/output.pdf differ diff --git a/tests/output/test_write_using_low_level_instructions/output.pdf b/tests/output/test_write_using_low_level_instructions/output.pdf index f1d23c2d9..ec36b51d1 100644 Binary files a/tests/output/test_write_using_low_level_instructions/output.pdf and b/tests/output/test_write_using_low_level_instructions/output.pdf differ diff --git a/tests/output/test_write_with_truetype_font/output_001.pdf b/tests/output/test_write_with_truetype_font/output_001.pdf index e6941b508..69b21718a 100644 Binary files a/tests/output/test_write_with_truetype_font/output_001.pdf and b/tests/output/test_write_with_truetype_font/output_001.pdf differ diff --git a/tests/output/test_write_with_truetype_font/output_001_ground_truth.png b/tests/output/test_write_with_truetype_font/output_001_ground_truth.png index 94f434524..1ce822560 100644 Binary files a/tests/output/test_write_with_truetype_font/output_001_ground_truth.png and b/tests/output/test_write_with_truetype_font/output_001_ground_truth.png differ diff --git a/tests/output/test_write_with_truetype_font/output_002.pdf b/tests/output/test_write_with_truetype_font/output_002.pdf index d6d6ca86a..b60c9a259 100644 Binary files a/tests/output/test_write_with_truetype_font/output_002.pdf and b/tests/output/test_write_with_truetype_font/output_002.pdf differ diff --git a/tests/output/test_write_with_truetype_font/output_002.png b/tests/output/test_write_with_truetype_font/output_002.png index 49fbdc01f..1da92de9f 100644 Binary files a/tests/output/test_write_with_truetype_font/output_002.png and b/tests/output/test_write_with_truetype_font/output_002.png differ diff --git a/tests/output/test_write_with_truetype_font/output_003.pdf b/tests/output/test_write_with_truetype_font/output_003.pdf index a1a93e584..c33764252 100644 Binary files a/tests/output/test_write_with_truetype_font/output_003.pdf and b/tests/output/test_write_with_truetype_font/output_003.pdf differ diff --git a/tests/output/test_write_with_truetype_font/output_004.pdf b/tests/output/test_write_with_truetype_font/output_004.pdf new file mode 100644 index 000000000..ddf4c879d Binary files /dev/null and b/tests/output/test_write_with_truetype_font/output_004.pdf differ diff --git a/tests/output/test_write_with_truetype_font/output_004_ground_truth.png b/tests/output/test_write_with_truetype_font/output_004_ground_truth.png new file mode 100644 index 000000000..15da60516 Binary files /dev/null and b/tests/output/test_write_with_truetype_font/output_004_ground_truth.png differ diff --git a/tests/output/test_write_xl_image/output.pdf b/tests/output/test_write_xl_image/output.pdf index 5e7b0a4f4..75d6b3215 100644 Binary files a/tests/output/test_write_xl_image/output.pdf and b/tests/output/test_write_xl_image/output.pdf differ diff --git a/tests/pdf/canvas/font/test_write_with_truetype_font.py b/tests/pdf/canvas/font/test_write_with_truetype_font.py index b4784d720..f56325429 100644 --- a/tests/pdf/canvas/font/test_write_with_truetype_font.py +++ b/tests/pdf/canvas/font/test_write_with_truetype_font.py @@ -3,6 +3,7 @@ from pathlib import Path from borb.io.read.types import Decimal +from borb.pdf.canvas.color.color import HexColor from borb.pdf.canvas.font.simple_font.true_type_font import TrueTypeFont from borb.pdf.canvas.layout.page_layout.multi_column_layout import SingleColumnLayout from borb.pdf.canvas.layout.page_layout.page_layout import PageLayout @@ -10,6 +11,7 @@ FixedColumnWidthTable as Table, ) from borb.pdf.canvas.layout.text.paragraph import Paragraph +from borb.pdf.canvas.line_art.line_art_factory import LineArtFactory from borb.pdf.document import Document from borb.pdf.page.page import Page from borb.pdf.pdf import PDF @@ -33,6 +35,59 @@ def __init__(self, methodName="runTest"): if not self.output_dir.exists(): self.output_dir.mkdir() + def test_write_document_004(self): + + # create document + pdf = Document() + + # add page + page = Page() + pdf.append_page(page) + + # layout + layout: PageLayout = SingleColumnLayout(page) + + # add test information + layout.add( + Table(number_of_columns=2, number_of_rows=3) + .add(Paragraph("Date", font="Helvetica-Bold")) + .add(Paragraph(datetime.now().strftime("%d/%m/%Y, %H:%M:%S"))) + .add(Paragraph("Test", font="Helvetica-Bold")) + .add(Paragraph(Path(__file__).stem)) + .add(Paragraph("Description", font="Helvetica-Bold")) + .add( + Paragraph( + "This test loads a truetype _font from a .ttf file and attempts to use it to write the text A B. The bounding box of the text is then drawn." + ) + ) + .set_padding_on_all_cells(Decimal(2), Decimal(2), Decimal(2), Decimal(2)) + ) + + # path to _font + font_path: Path = Path(__file__).parent / "Pacifico-Regular.ttf" + assert font_path.exists() + + # add paragraph + p: Paragraph = Paragraph( + "A B", font=TrueTypeFont.true_type_font_from_file(font_path) + ) + layout.add(p) + + # add box + page.append_polygon_annotation( + LineArtFactory.rectangle(p.get_bounding_box()), + stroke_color=HexColor("ff0000"), + ) + + # determine output location + out_file = self.output_dir / "output_004.pdf" + + # attempt to store PDF + with open(out_file, "wb") as in_file_handle: + PDF.dumps(in_file_handle, pdf) + + compare_visually_to_ground_truth(out_file) + def test_write_document_001(self): # create document diff --git a/tests/pdf/page/annotations/test_add_all_rubber_stamp_annotations.py b/tests/pdf/page/annotations/test_add_all_rubber_stamp_annotations.py index cb4e4fff5..e1bc74a99 100644 --- a/tests/pdf/page/annotations/test_add_all_rubber_stamp_annotations.py +++ b/tests/pdf/page/annotations/test_add_all_rubber_stamp_annotations.py @@ -7,10 +7,10 @@ from borb.pdf.canvas.color.color import X11Color from borb.pdf.canvas.geometry.rectangle import Rectangle -from borb.pdf.canvas.layout.page_layout.multi_column_layout import \ - SingleColumnLayout -from borb.pdf.canvas.layout.table.fixed_column_width_table import \ - FixedColumnWidthTable as Table +from borb.pdf.canvas.layout.page_layout.multi_column_layout import SingleColumnLayout +from borb.pdf.canvas.layout.table.fixed_column_width_table import ( + FixedColumnWidthTable as Table, +) from borb.pdf.canvas.layout.text.paragraph import Paragraph from borb.pdf.document import Document from borb.pdf.page.page import Page, RubberStampAnnotationIconType diff --git a/tests/pdf/page/annotations/test_add_circle_annotation.py b/tests/pdf/page/annotations/test_add_circle_annotation.py index 4c81f4bcb..d782a4f22 100644 --- a/tests/pdf/page/annotations/test_add_circle_annotation.py +++ b/tests/pdf/page/annotations/test_add_circle_annotation.py @@ -7,10 +7,10 @@ from borb.pdf.canvas.color.color import HexColor from borb.pdf.canvas.geometry.rectangle import Rectangle -from borb.pdf.canvas.layout.page_layout.multi_column_layout import \ - SingleColumnLayout -from borb.pdf.canvas.layout.table.fixed_column_width_table import \ - FixedColumnWidthTable as Table +from borb.pdf.canvas.layout.page_layout.multi_column_layout import SingleColumnLayout +from borb.pdf.canvas.layout.table.fixed_column_width_table import ( + FixedColumnWidthTable as Table, +) from borb.pdf.canvas.layout.text.paragraph import Paragraph from borb.pdf.document import Document from borb.pdf.page.page import Page diff --git a/tests/pdf/page/annotations/test_add_free_text_annotation.py b/tests/pdf/page/annotations/test_add_free_text_annotation.py index cfd017126..142e49c2f 100644 --- a/tests/pdf/page/annotations/test_add_free_text_annotation.py +++ b/tests/pdf/page/annotations/test_add_free_text_annotation.py @@ -9,16 +9,17 @@ from borb.pdf.canvas.font.simple_font.font_type_1 import StandardType1Font from borb.pdf.canvas.geometry.rectangle import Rectangle from borb.pdf.canvas.layout.layout_element import Alignment -from borb.pdf.canvas.layout.page_layout.multi_column_layout import \ - SingleColumnLayout -from borb.pdf.canvas.layout.table.fixed_column_width_table import \ - FixedColumnWidthTable as Table +from borb.pdf.canvas.layout.page_layout.multi_column_layout import SingleColumnLayout +from borb.pdf.canvas.layout.table.fixed_column_width_table import ( + FixedColumnWidthTable as Table, +) from borb.pdf.canvas.layout.text.paragraph import Paragraph from borb.pdf.document import Document from borb.pdf.page.page import Page from borb.pdf.pdf import PDF -from borb.toolkit.text.regular_expression_text_extraction import \ - RegularExpressionTextExtraction +from borb.toolkit.text.regular_expression_text_extraction import ( + RegularExpressionTextExtraction, +) unittest.TestLoader.sortTestMethodsUsing = None diff --git a/tests/pdf/page/annotations/test_add_highlight_annotation.py b/tests/pdf/page/annotations/test_add_highlight_annotation.py index 26385cca8..5c23e1659 100644 --- a/tests/pdf/page/annotations/test_add_highlight_annotation.py +++ b/tests/pdf/page/annotations/test_add_highlight_annotation.py @@ -6,16 +6,17 @@ from tests.test_util import compare_visually_to_ground_truth from borb.pdf.canvas.layout.layout_element import Alignment -from borb.pdf.canvas.layout.page_layout.multi_column_layout import \ - SingleColumnLayout -from borb.pdf.canvas.layout.table.fixed_column_width_table import \ - FixedColumnWidthTable as Table +from borb.pdf.canvas.layout.page_layout.multi_column_layout import SingleColumnLayout +from borb.pdf.canvas.layout.table.fixed_column_width_table import ( + FixedColumnWidthTable as Table, +) from borb.pdf.canvas.layout.text.paragraph import Paragraph from borb.pdf.document import Document from borb.pdf.page.page import Page from borb.pdf.pdf import PDF -from borb.toolkit.text.regular_expression_text_extraction import \ - RegularExpressionTextExtraction +from borb.toolkit.text.regular_expression_text_extraction import ( + RegularExpressionTextExtraction, +) class TestAddHighlightAnnotation(unittest.TestCase): diff --git a/tests/pdf/page/annotations/test_add_line_annotation.py b/tests/pdf/page/annotations/test_add_line_annotation.py index 07b734a03..f01d600cd 100644 --- a/tests/pdf/page/annotations/test_add_line_annotation.py +++ b/tests/pdf/page/annotations/test_add_line_annotation.py @@ -5,16 +5,17 @@ from borb.pdf.canvas.color.color import HexColor from borb.pdf.canvas.layout.layout_element import Alignment -from borb.pdf.canvas.layout.page_layout.multi_column_layout import \ - SingleColumnLayout -from borb.pdf.canvas.layout.table.fixed_column_width_table import \ - FixedColumnWidthTable as Table +from borb.pdf.canvas.layout.page_layout.multi_column_layout import SingleColumnLayout +from borb.pdf.canvas.layout.table.fixed_column_width_table import ( + FixedColumnWidthTable as Table, +) from borb.pdf.canvas.layout.text.paragraph import Paragraph from borb.pdf.document import Document from borb.pdf.page.page import Page from borb.pdf.pdf import PDF -from borb.toolkit.text.regular_expression_text_extraction import \ - RegularExpressionTextExtraction +from borb.toolkit.text.regular_expression_text_extraction import ( + RegularExpressionTextExtraction, +) unittest.TestLoader.sortTestMethodsUsing = None diff --git a/tests/pdf/page/annotations/test_add_polygon_annotation_using_line_art_factory.py b/tests/pdf/page/annotations/test_add_polygon_annotation_using_line_art_factory.py index d1996cd04..605c53f19 100644 --- a/tests/pdf/page/annotations/test_add_polygon_annotation_using_line_art_factory.py +++ b/tests/pdf/page/annotations/test_add_polygon_annotation_using_line_art_factory.py @@ -7,11 +7,11 @@ from borb.pdf.canvas.color.color import HexColor from borb.pdf.canvas.geometry.rectangle import Rectangle -from borb.pdf.canvas.layout.page_layout.multi_column_layout import \ - SingleColumnLayout +from borb.pdf.canvas.layout.page_layout.multi_column_layout import SingleColumnLayout from borb.pdf.canvas.layout.page_layout.page_layout import PageLayout -from borb.pdf.canvas.layout.table.fixed_column_width_table import \ - FixedColumnWidthTable as Table +from borb.pdf.canvas.layout.table.fixed_column_width_table import ( + FixedColumnWidthTable as Table, +) from borb.pdf.canvas.layout.text.paragraph import Paragraph from borb.pdf.canvas.line_art.line_art_factory import LineArtFactory from borb.pdf.document import Document diff --git a/tests/pdf/page/annotations/test_add_polyline_annotation_using_line_art_factory.py b/tests/pdf/page/annotations/test_add_polyline_annotation_using_line_art_factory.py index 65c11b6d7..4f39c6998 100644 --- a/tests/pdf/page/annotations/test_add_polyline_annotation_using_line_art_factory.py +++ b/tests/pdf/page/annotations/test_add_polyline_annotation_using_line_art_factory.py @@ -5,10 +5,10 @@ from borb.pdf.canvas.color.color import HexColor from borb.pdf.canvas.geometry.rectangle import Rectangle -from borb.pdf.canvas.layout.page_layout.multi_column_layout import \ - SingleColumnLayout -from borb.pdf.canvas.layout.table.fixed_column_width_table import \ - FixedColumnWidthTable as Table +from borb.pdf.canvas.layout.page_layout.multi_column_layout import SingleColumnLayout +from borb.pdf.canvas.layout.table.fixed_column_width_table import ( + FixedColumnWidthTable as Table, +) from borb.pdf.canvas.layout.text.paragraph import Paragraph from borb.pdf.canvas.line_art.line_art_factory import LineArtFactory from borb.pdf.document import Document diff --git a/tests/pdf/page/annotations/test_add_redact_annotation.py b/tests/pdf/page/annotations/test_add_redact_annotation.py index 3367677aa..11490165b 100644 --- a/tests/pdf/page/annotations/test_add_redact_annotation.py +++ b/tests/pdf/page/annotations/test_add_redact_annotation.py @@ -9,17 +9,18 @@ from borb.pdf.canvas.color.color import HexColor from borb.pdf.canvas.font.simple_font.true_type_font import TrueTypeFont from borb.pdf.canvas.layout.layout_element import Alignment -from borb.pdf.canvas.layout.page_layout.multi_column_layout import \ - SingleColumnLayout +from borb.pdf.canvas.layout.page_layout.multi_column_layout import SingleColumnLayout from borb.pdf.canvas.layout.page_layout.page_layout import PageLayout -from borb.pdf.canvas.layout.table.fixed_column_width_table import \ - FixedColumnWidthTable as Table +from borb.pdf.canvas.layout.table.fixed_column_width_table import ( + FixedColumnWidthTable as Table, +) from borb.pdf.canvas.layout.text.paragraph import Paragraph from borb.pdf.document import Document from borb.pdf.page.page import Page from borb.pdf.pdf import PDF -from borb.toolkit.text.regular_expression_text_extraction import \ - RegularExpressionTextExtraction +from borb.toolkit.text.regular_expression_text_extraction import ( + RegularExpressionTextExtraction, +) unittest.TestLoader.sortTestMethodsUsing = None diff --git a/tests/pdf/page/annotations/test_add_remote_go_to_annotation.py b/tests/pdf/page/annotations/test_add_remote_go_to_annotation.py index 02f2ed940..7a1dca266 100644 --- a/tests/pdf/page/annotations/test_add_remote_go_to_annotation.py +++ b/tests/pdf/page/annotations/test_add_remote_go_to_annotation.py @@ -8,10 +8,8 @@ from borb.pdf.canvas.color.color import HexColor from borb.pdf.canvas.geometry.rectangle import Rectangle -from borb.pdf.canvas.layout.page_layout.multi_column_layout import \ - SingleColumnLayout -from borb.pdf.canvas.layout.table.fixed_column_width_table import \ - FixedColumnWidthTable +from borb.pdf.canvas.layout.page_layout.multi_column_layout import SingleColumnLayout +from borb.pdf.canvas.layout.table.fixed_column_width_table import FixedColumnWidthTable from borb.pdf.canvas.layout.text.chunk_of_text import ChunkOfText from borb.pdf.canvas.layout.text.chunks_of_text import HeterogeneousParagraph from borb.pdf.canvas.layout.text.paragraph import Paragraph diff --git a/tests/pdf/page/annotations/test_add_square_annotation.py b/tests/pdf/page/annotations/test_add_square_annotation.py index f982e28e7..0ab2643b8 100644 --- a/tests/pdf/page/annotations/test_add_square_annotation.py +++ b/tests/pdf/page/annotations/test_add_square_annotation.py @@ -7,10 +7,10 @@ from borb.pdf.canvas.color.color import HexColor from borb.pdf.canvas.geometry.rectangle import Rectangle -from borb.pdf.canvas.layout.page_layout.multi_column_layout import \ - SingleColumnLayout -from borb.pdf.canvas.layout.table.fixed_column_width_table import \ - FixedColumnWidthTable as Table +from borb.pdf.canvas.layout.page_layout.multi_column_layout import SingleColumnLayout +from borb.pdf.canvas.layout.table.fixed_column_width_table import ( + FixedColumnWidthTable as Table, +) from borb.pdf.canvas.layout.text.paragraph import Paragraph from borb.pdf.document import Document from borb.pdf.page.page import Page diff --git a/tests/pdf/page/annotations/test_add_squiggle_annotation.py b/tests/pdf/page/annotations/test_add_squiggle_annotation.py index 4be103b2d..fcb27dd0a 100644 --- a/tests/pdf/page/annotations/test_add_squiggle_annotation.py +++ b/tests/pdf/page/annotations/test_add_squiggle_annotation.py @@ -5,16 +5,17 @@ from borb.pdf.canvas.color.color import HexColor from borb.pdf.canvas.layout.layout_element import Alignment -from borb.pdf.canvas.layout.page_layout.multi_column_layout import \ - SingleColumnLayout -from borb.pdf.canvas.layout.table.fixed_column_width_table import \ - FixedColumnWidthTable as Table +from borb.pdf.canvas.layout.page_layout.multi_column_layout import SingleColumnLayout +from borb.pdf.canvas.layout.table.fixed_column_width_table import ( + FixedColumnWidthTable as Table, +) from borb.pdf.canvas.layout.text.paragraph import Paragraph from borb.pdf.document import Document from borb.pdf.page.page import Page from borb.pdf.pdf import PDF -from borb.toolkit.text.regular_expression_text_extraction import \ - RegularExpressionTextExtraction +from borb.toolkit.text.regular_expression_text_extraction import ( + RegularExpressionTextExtraction, +) unittest.TestLoader.sortTestMethodsUsing = None diff --git a/tests/pdf/page/annotations/test_add_strikeout_annotation.py b/tests/pdf/page/annotations/test_add_strikeout_annotation.py index b32043071..5385482a4 100644 --- a/tests/pdf/page/annotations/test_add_strikeout_annotation.py +++ b/tests/pdf/page/annotations/test_add_strikeout_annotation.py @@ -5,16 +5,17 @@ from borb.pdf.canvas.color.color import HexColor from borb.pdf.canvas.layout.layout_element import Alignment -from borb.pdf.canvas.layout.page_layout.multi_column_layout import \ - SingleColumnLayout -from borb.pdf.canvas.layout.table.fixed_column_width_table import \ - FixedColumnWidthTable as Table +from borb.pdf.canvas.layout.page_layout.multi_column_layout import SingleColumnLayout +from borb.pdf.canvas.layout.table.fixed_column_width_table import ( + FixedColumnWidthTable as Table, +) from borb.pdf.canvas.layout.text.paragraph import Paragraph from borb.pdf.document import Document from borb.pdf.page.page import Page from borb.pdf.pdf import PDF -from borb.toolkit.text.regular_expression_text_extraction import \ - RegularExpressionTextExtraction +from borb.toolkit.text.regular_expression_text_extraction import ( + RegularExpressionTextExtraction, +) unittest.TestLoader.sortTestMethodsUsing = None diff --git a/tests/pdf/page/redact/test_apply_redaction_annotations.py b/tests/pdf/page/redact/test_apply_redaction_annotations.py index 1a47d9596..af73ec499 100644 --- a/tests/pdf/page/redact/test_apply_redaction_annotations.py +++ b/tests/pdf/page/redact/test_apply_redaction_annotations.py @@ -10,17 +10,18 @@ from borb.io.read.types import Dictionary, List, Name, Stream from borb.pdf.canvas.color.color import X11Color from borb.pdf.canvas.layout.layout_element import Alignment -from borb.pdf.canvas.layout.page_layout.multi_column_layout import \ - SingleColumnLayout +from borb.pdf.canvas.layout.page_layout.multi_column_layout import SingleColumnLayout from borb.pdf.canvas.layout.page_layout.page_layout import PageLayout -from borb.pdf.canvas.layout.table.fixed_column_width_table import \ - FixedColumnWidthTable as Table +from borb.pdf.canvas.layout.table.fixed_column_width_table import ( + FixedColumnWidthTable as Table, +) from borb.pdf.canvas.layout.text.paragraph import Paragraph from borb.pdf.document import Document from borb.pdf.page.page import Page from borb.pdf.pdf import PDF -from borb.toolkit.text.regular_expression_text_extraction import \ - RegularExpressionTextExtraction +from borb.toolkit.text.regular_expression_text_extraction import ( + RegularExpressionTextExtraction, +) unittest.TestLoader.sortTestMethodsUsing = None