Я пытаюсь сделать изображение из динамического макета html. Как настроить динамическую ширину и высоту изображения в зависимости от высоты и ширины таблицы внутри html. Я имею в виду, как я могу найти таблицу width(x)
и height(y)
от html
?Render изображение динамически
JLabel label = new JLabel(html);
label.setSize(x, y);
BufferedImage image = new BufferedImage(label.getWidth(),label.getHeight(),BufferedImage.TYPE_INT_ARGB);
Graphics2D g2d = (Graphics2D)image.getGraphics();
g2d.setColor(Color.WHITE);
g2d.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
label.paint(g2d);
g2d.dispose();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
try {
ImageIO.write(image, "png", baos);
} catch (IOException e) {
e.printStackTrace();
}
Ниже приводится схема html.
<html>
<head>....</head>
<body topmargin="0" leftmargin="0"><table border=0 cellpadding=0 cellspacing=0 width=700 style='border-collapse:collapse;table-layout:fixed;width:684pt'>
......
......
</body></html>
Вы, вероятно, нужно использовать предпочтительный размер этикетки. Теперь проблема заключается в том, что вы вынуждаете размер метки '(x, y)'. Опубликуйте [SSCCE] (http://sscce.org) для лучшей помощи раньше –