| | import os |
| | import sys |
| | import cv2 |
| | import pytest |
| | import numpy as np |
| |
|
| | pytest_plugins = ('pytest_asyncio') |
| |
|
| | sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) |
| |
|
| | from manga_translator.rendering import dispatch as dispatch_rendering, dispatch_eng_render |
| | from manga_translator.utils import ( |
| | TextBlock, |
| | visualize_textblocks, |
| | ) |
| |
|
| |
|
| | RENDER_IMAGE_FOLDER = 'test/testdata/render' |
| | os.makedirs(RENDER_IMAGE_FOLDER, exist_ok=True) |
| |
|
| | def save_result(path, img, regions): |
| | path = os.path.join(RENDER_IMAGE_FOLDER, path) |
| | cv2.imwrite(path, visualize_textblocks(img, regions)) |
| |
|
| |
|
| | @pytest.mark.asyncio |
| | async def test_default_renderer(): |
| | width, height = 1000, 1000 |
| | img = np.zeros((height, width, 3)) |
| | regions = [ |
| | TextBlock( |
| | [[[10, 10], [200, 10], [10, 400], [200, 400]]], |
| | translation='aaaaaa bbbbbbbbbbbb cccc ddddddddddd eeeeeeeeeeeeee fff' |
| | ), |
| | TextBlock( |
| | [[[410, 10], [900, 10], [410, 800], [900, 800]]], |
| | translation= |
| | |
| | |
| | |
| | 'normal english sentences can be hyphenated! ' \ |
| | 'Pneumonoultramicroscopicsilicovolcanoconiosis' |
| | ), |
| | ] |
| | for region in regions: |
| | region.target_lang = 'ENG' |
| | region.set_font_colors([255, 255, 255], [200, 200, 200]) |
| | region.font_size = 100 |
| |
|
| | img_rendered = await dispatch_rendering(img, regions, hyphenate=False) |
| | save_result('default1.png', img_rendered, regions) |
| |
|