Четыре формата вывода — и какой нужен на самом деле
SVG стоит выбирать всегда, когда можно. pageToSvg переводит XAML страницы напрямую: Path становится <path>, прогон Glyphs — <text>, Canvas — <g>. Результат остаётся векторным: масштабируется без потерь, редактируется в любом графическом редакторе, текст выделяется. По файлу на страницу или все в ZIP.
PNG — растр без потерь, и он может быть прозрачным. Страницы XPS несут непрозрачный белый прямоугольник фона; запрос прозрачности удаляет ровно этот прямоугольник перед растеризацией — и больше ничего.
JPEG меньше и с потерями, с ползунком качества. Альфа-канала у него нет, поэтому фон закрашивается всегда.
PDF — то, ради чего большинство сюда и приходит, и он заслуживает прямого ответа.
Этот PDF растровый
Каждая страница отрисовывается в изображение с выбранным разрешением и помещается на страницу PDF. Размер страницы точен: XPS меряет в 1/96 дюйма, PDF — в пунктах по 1/72 дюйма, поэтому размер умножается на 72/96. Страница XPS 816 × 1056 единиц выходит страницей PDF 612 × 792 пт — это US Letter с точностью до пункта.
Чего вы не получите — векторного текста. Слова в таком PDF — это пиксели. Их нельзя выделить, найти поиском или увеличить дальше выбранного разрешения. Если это важно, берите вывод в SVG — он сохраняет всё — или ставьте 300 dpi и миритесь с большим файлом.
Превратить текст XPS в настоящий текст PDF означало бы заново встроить каждый шрифт и вывести положение каждого глифа из метрик, которых у этого инструмента нет. Заявить, что это сделано, и втихую растеризовать — хуже, чем сказать правду.
Разрешение
96 dpi — ровно 1:1 с собственными единицами документа. 150 удобно на экране, 300 — обычное разрешение печати, 600 — для архива. Браузеры ограничивают размер холста, и у некоторых предел ниже, чем можно подумать; если запрос его превышает, страница рисуется в наибольшем поместившемся размере, и инструмент называет разрешение, которое было использовано, а не подсовывает молча что-то поменьше.
Всё остаётся локально
Документ открывается, отрисовывается и кодируется в браузере. Ничего не загружается на сервер, и растеризатор никогда ничего не запрашивает: он работает именно потому, что изображения и шрифты заранее встроены в SVG.
Tiny Online Tools







