Ensure expected font size across text writing angles.
()
| 334 | |
| 335 | |
| 336 | def test_2506(): |
| 337 | """Ensure expected font size across text writing angles.""" |
| 338 | doc = pymupdf.open() |
| 339 | page = doc.new_page() |
| 340 | point = pymupdf.Point(100, 300) # insertion point |
| 341 | fontsize = 11 # fontsize |
| 342 | text = "Hello" # text |
| 343 | angles = (0, 30, 60, 90, 120) # some angles |
| 344 | |
| 345 | # write text with different angles |
| 346 | for angle in angles: |
| 347 | page.insert_text( |
| 348 | point, text, fontsize=fontsize, morph=(point, pymupdf.Matrix(angle)) |
| 349 | ) |
| 350 | |
| 351 | # ensure correct fontsize for get_texttrace() - forgiving rounding problems |
| 352 | for span in page.get_texttrace(): |
| 353 | print(span["dir"]) |
| 354 | assert round(span["size"]) == fontsize |
| 355 | |
| 356 | # ensure correct fontsize for get_text() - forgiving rounding problems |
| 357 | for block in page.get_text("dict")["blocks"]: |
| 358 | for line in block["lines"]: |
| 359 | print(line["dir"]) |
| 360 | for span in line["spans"]: |
| 361 | print(span["size"]) |
| 362 | assert round(span["size"]) == fontsize |
| 363 | |
| 364 | |
| 365 | def test_2108(): |
nothing calls this directly
no test coverage detected
searching dependent graphs…