[seam-commits] Seam SVN: r9872 - trunk/src/pdf/org/jboss/seam/pdf/ui.
seam-commits at lists.jboss.org
seam-commits at lists.jboss.org
Tue Jan 6 13:26:29 EST 2009
Author: norman.richards at jboss.com
Date: 2009-01-06 13:26:29 -0500 (Tue, 06 Jan 2009)
New Revision: 9872
Modified:
trunk/src/pdf/org/jboss/seam/pdf/ui/UIChart.java
Log:
JBSEAM-2791
Modified: trunk/src/pdf/org/jboss/seam/pdf/ui/UIChart.java
===================================================================
--- trunk/src/pdf/org/jboss/seam/pdf/ui/UIChart.java 2009-01-06 18:18:20 UTC (rev 9871)
+++ trunk/src/pdf/org/jboss/seam/pdf/ui/UIChart.java 2009-01-06 18:26:29 UTC (rev 9872)
@@ -27,6 +27,7 @@
import com.lowagie.text.pdf.PdfContentByte;
import com.lowagie.text.pdf.PdfTemplate;
import com.lowagie.text.pdf.PdfWriter;
+import com.lowagie.text.pdf.AsianFontMapper;
public abstract class UIChart extends ITextComponent
{
@@ -274,28 +275,34 @@
try
{
UIDocument doc = (UIDocument) findITextParent(getParent(), UIDocument.class);
- if (doc != null)
- {
+ if (doc != null) {
PdfWriter writer = (PdfWriter) doc.getWriter();
PdfContentByte cb = writer.getDirectContent();
PdfTemplate tp = cb.createTemplate(getWidth(), getHeight());
- Graphics2D g2 = tp.createGraphics(getWidth(), getHeight(), new DefaultFontMapper());
+
+
+ UIFont font = (UIFont) findITextParent(this, UIFont.class);
+
+ DefaultFontMapper fontMapper;
+ if (font == null) {
+ fontMapper = new DefaultFontMapper();
+ } else {
+ fontMapper = new AsianFontMapper(font.getName(), font.getEncoding());
+ }
+
+ Graphics2D g2 = tp.createGraphics(getWidth(), getHeight(), fontMapper);
chart.draw(g2, new Rectangle2D.Double(0, 0, getWidth(), getHeight()));
g2.dispose();
image = new ImgTemplate(tp);
- }
- else
- {
+ } else {
ByteArrayOutputStream stream = new ByteArrayOutputStream();
ChartUtilities.writeChartAsJPEG(stream, chart, getWidth(), getHeight());
imageData = stream.toByteArray();
stream.close();
}
- }
- catch (Exception e)
- {
+ } catch (Exception e) {
throw new RuntimeException(e);
}
}
More information about the seam-commits
mailing list