MCPcopy Index your code
hub / github.com/pymupdf/PyMuPDF / test_4457

Function test_4457

tests/test_font.py:235–336  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

233
234
235def test_4457():
236 if os.environ.get('PYODIDE_ROOT'):
237 print('test_4457(): not running on Pyodide - cannot run child processes.')
238 return
239
240 print()
241 files = (
242 ('https://github.com/user-attachments/files/20862923/test_4457_a.pdf', 'test_4457_a.pdf', None, 4),
243 ('https://github.com/user-attachments/files/20862922/test_4457_b.pdf', 'test_4457_b.pdf', None, 9),
244 )
245 for url, name, size, rms_old_after_max in files:
246 path = util.download(url, name, size)
247
248 with pymupdf.open(path) as document:
249 page = document[0]
250
251 pixmap = document[0].get_pixmap()
252 path_pixmap = f'{path}.png'
253 pixmap.save(path_pixmap)
254 print(f'Have created: {path_pixmap=}')
255
256 text = page.get_text()
257 path_before = f'{path}.before.pdf'
258 path_after = f'{path}.after.pdf'
259 document.ez_save(path_before, garbage=4)
260 print(f'Have created {path_before=}')
261
262 document.subset_fonts()
263 document.ez_save(path_after, garbage=4)
264 print(f'Have created {path_after=}')
265
266 with pymupdf.open(path_before) as document:
267 text_before = document[0].get_text()
268 pixmap_before = document[0].get_pixmap()
269 path_pixmap_before = f'{path_before}.png'
270 pixmap_before.save(path_pixmap_before)
271 print(f'Have created: {path_pixmap_before=}')
272
273 with pymupdf.open(path_after) as document:
274 text_after = document[0].get_text()
275 pixmap_after = document[0].get_pixmap()
276 path_pixmap_after = f'{path_after}.png'
277 pixmap_after.save(path_pixmap_after)
278 print(f'Have created: {path_pixmap_after=}')
279
280 import gentle_compare
281 rms_before = gentle_compare.pixmaps_rms(pixmap, pixmap_before)
282 rms_after = gentle_compare.pixmaps_rms(pixmap, pixmap_after)
283 print(f'{rms_before=}')
284 print(f'{rms_after=}')
285
286 # Create .png file showing differences between <path> and <path_after>.
287 path_pixmap_after_diff = f'{path_after}.diff.png'
288 pixmap_after_diff = gentle_compare.pixmaps_diff(pixmap, pixmap_after)
289 pixmap_after_diff.save(path_pixmap_after_diff)
290 print(f'Have created: {path_pixmap_after_diff}')
291
292 # Extract text from <path>, <path_before> and <path_after> and write to

Callers

nothing calls this directly

Calls 9

ez_saveMethod · 0.80
subset_fontsMethod · 0.80
mupdf_warningsMethod · 0.80
getMethod · 0.45
get_pixmapMethod · 0.45
saveMethod · 0.45
get_textMethod · 0.45
writeMethod · 0.45
runMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…