gernotbelger@9119: /** Copyright (C) 2017 by Bundesanstalt für Gewässerkunde gernotbelger@9119: * Software engineering by gernotbelger@9119: * Björnsen Beratende Ingenieure GmbH gernotbelger@9119: * Dr. Schumacher Ingenieurbüro für Wasser und Umwelt gernotbelger@9119: * gernotbelger@9119: * This file is Free Software under the GNU AGPL (>=v3) gernotbelger@9119: * and comes with ABSOLUTELY NO WARRANTY! Check out the gernotbelger@9119: * documentation coming with Dive4Elements River for details. gernotbelger@9119: */ gernotbelger@9119: package org.dive4elements.river.exports; gernotbelger@9119: gernotbelger@9119: import java.awt.Font; gernotbelger@9119: import java.io.IOException; gernotbelger@9119: gernotbelger@9119: import com.lowagie.text.DocumentException; gernotbelger@9119: import com.lowagie.text.ExceptionConverter; gernotbelger@9119: import com.lowagie.text.pdf.BaseFont; gernotbelger@9119: import com.lowagie.text.pdf.FontMapper; gernotbelger@9119: gernotbelger@9119: /** gernotbelger@9119: * @author Domenico Nardi Tironi gernotbelger@9119: * gernotbelger@9119: */ gernotbelger@9119: public class ChartExportFontMapper implements FontMapper { gernotbelger@9119: gernotbelger@9119: @Override gernotbelger@9119: public Font pdfToAwt(final BaseFont font, final int size) { gernotbelger@9119: throw new UnsupportedOperationException(); gernotbelger@9119: } gernotbelger@9119: gernotbelger@9119: @Override gernotbelger@9119: public BaseFont awtToPdf(final Font font) { gernotbelger@9119: try { gernotbelger@9119: gernotbelger@9119: if (font.isItalic()) { gernotbelger@9119: if (font.isBold()) gernotbelger@9119: return BaseFont.createFont("fonts/Roboto/Roboto-BoldItalic.ttf", BaseFont.IDENTITY_H, false); gernotbelger@9119: else gernotbelger@9119: return BaseFont.createFont("fonts/Roboto/Roboto-Italic.ttf", BaseFont.IDENTITY_H, false); gernotbelger@9119: } else { gernotbelger@9119: if (font.isBold()) gernotbelger@9119: return BaseFont.createFont("fonts/Roboto/Roboto-Bold.ttf", BaseFont.IDENTITY_H, false); gernotbelger@9119: else gernotbelger@9119: return BaseFont.createFont("fonts/Roboto/Roboto-Regular.ttf", BaseFont.IDENTITY_H, false); gernotbelger@9119: } gernotbelger@9119: } gernotbelger@9119: catch (DocumentException | IOException e) { gernotbelger@9119: e.printStackTrace(); gernotbelger@9119: throw new ExceptionConverter(e); gernotbelger@9119: } gernotbelger@9119: } gernotbelger@9119: }