Об изображениях
Если вы сохраните отчет в формате HTML, вы заметите, что логотип отображается правильно.
Файлы изображений, такие как PNG, представляют собой растровые изображения: они хранятся в виде отдельных пикселей.
В то время как файлы PDF в основном векторизованы: элементы внутри хранятся в виде описаний того, как их рисовать. Это позволяет PDF-файлам масштабироваться и быть разборчивыми в любом размере.
Использование растрового изображения в векторном формате, скорее всего, приведет к эффекту пикселизации.
Возможные решения
У вас есть несколько вариантов, чтобы изображения соответствовали качеству текста, в порядке удобства:
- Создайте версию логотипа с разрешением 1200 dpi и увеличением на 400 %.
- Создайте SVG-версию логотипа.
- Преобразуйте изображение в векторный формат.
- Масштабируйте изображение на 300% и измените разрешение на 288 dpi.
Версия с разрешением 1200 точек на дюйм
Изображение будет выглядеть четким примерно до 400% увеличения.
SVG-версия
Изображение будет выглядеть четким при любом разрешении. Замените обычный <image...>
XML следующим кодом (не забудьте соответствующим образом настроить ширину и высоту):
<image hAlign="Center" vAlign="Middle">
<reportElement x="0" y="0" width="179" height="66"/>
<imageExpression class="net.sf.jasperreports.engine.JRRenderable"><![CDATA[net.sf.jasperreports.renderers.BatikRenderer.getInstance(new java.io.File("/path/to/logo.svg"))]]></imageExpression>
</image>
Конвертировать GIF в SVG
Чтобы преобразовать GIF в SVG, сначала попробуйте быстрый веб-инструмент, например: http://vectormagic.com.
После преобразования в SVG вам нужно будет использовать код, указанный выше, для отображения логотипа.
Разрешение и масштаб
Видеть:
person
Dave Jarvis
schedule
13.01.2011