Tag: 渲染

JSP以编程方式呈现

我需要以编程方式呈现JSP页面。 据我所知,JSP应该有一些编译器。 问题是我可以在没有JspServlet和其他人的情况下直接使用这个编译器吗? 我需要的只是文档如何使用JSP编译器(例如,Jasper)。 我想,一些额外的信息可以澄清情况。 我不能使用标准的JspServlet。 我希望在编译之前以某种方式更改源JSP(将两个JSP合并到一起),因此我需要一种方法直接使用JSP编译器从InputStream(或Reader)编译JSP结果。 两个JSP的合并是布局要求。 你可以问:“但为什么这个人不使用SiteMesh或类似的东西?”。 其中一个JSP页面不是静态的。 它由用户提供并存储在数据库中。 我们清理和validation这个JSP布局(用户只能使用标签的子集,并且所有这些标签都不是标准的,而是专门为它们创建的),缓存它们等等。 但是现在我们需要一种方法来使用这些JSP页面(存储在内存中)作为用户请求的所有JSP页面的布局。

Java字体渲染

我一直在尝试增强我用Java编写的GUI系统以使用子像素抗锯齿并且已经成功,除了两个剩余的exception。 这是几个星期前我的另一个问题的后续问题 。 第一个问题是将设置渲染提示KEY_ANTIALIASING设置为VALUE_ANTIALIAS_ON会导致KEY_TEXT_ANTIALIASING在设置为LCD(子像素)AA值时被忽略。 任何人都可以对此有所了解吗? 目前我在渲染文本之前被迫使用VALUE_ANTIALIAS_OFF,并在渲染文本后将其重新打开(以便其他绘画,如圆圈等,是AA’d)。 下面的独立测试程序certificate了这个问题。 第二个问题是我找不到查询AA的底层操作系统设置,所以我必须做一个相当大的解决方法,即创建一个Swing JLabel,获取它的FontMetrics,得到它的FontRenderContext然后得到AA提示。 除了在一个程序中涉及Swing,否则完全不使用Swing,它将无法在运行任何J2ME JVM的设备上运行。 谁能建议一个更好的方法来做到这一点? 如果它需要J5或J6就没关系,因为当前的kludge已经需要J6(但只需要J4就是最好的)。 我已经尝试了每个默认设置并使用AWT组件而不是JLabel。 测试程序 该程序validation要使子像素AA工作,必须首先禁用一般AA设置。 (PS:我写入后台缓冲区,因为我的底层GUI确实如此,我想在等效的上下文中进行测试)。 import java.awt.*; import java.awt.event.*; public class AwtTestFrame1b extends Panel { private final Font font=new Font(Font.SANS_SERIF, Font.PLAIN, 16); private final int line=25; AwtTestFrame1b() { setBackground(SystemColor.control); } public void paint(Graphics g) { Graphics2D g2d = (Graphics2D)g; int py=0; py=paintText(g2d,py,null ,false); […]

JComboBox中每个项目的多种颜色

我正在尝试制作一个ComboBox,它为不同的项目使用不同的颜色。 我写了一些测试代码,但它似乎不起作用。 添加渲染器会导致程序崩溃,但将其注释掉会使框显示在框架中。 有什么我想念的,或者我做错了吗? 我尝试使用自定义ComboBox Renderer教程作为示例。 这是我的代码: TestComboColor.java import java.awt.Color; import javax.swing.JComboBox; import javax.swing.JFrame; public class TestComboColor { static Color[] colors = {Color.BLUE, Color.GRAY, Color.RED}; static String[] strings = {“Test1”, “Test2”, “Test3”}; public static void main(String[] args) { JFrame frame = new JFrame(“JAVA”); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); JComboBox cmb = new JComboBox(); ComboBoxRenderer renderer = new ComboBoxRenderer(cmb); renderer.setColors(colors); […]

更改JTable单元格颜色

这让我非常疯狂。 我知道,要使用JTable更改表格单元格的格式,我必须使用自己的渲染器。 但我似乎无法正确实现这一点。 这是我目前的设置: public class MyClass { public static void main(String args[]) { JTable myTable = new JTable(10, 10); myTable.setDefaultRenderer ([I dont know what to put here], new CustomRenderer()); } } class CustomRenderer extends DefaultTableCellRenderer { public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { Component c = […]

如何在列中显示饼图的图例?

我有一个有很多部分的PieChart,这个PieChart的图例呈现为一行。 如何将图例渲染为两列?