자바를 사용하여 설문 조사를하고 있으며 인쇄용 버전도 갖고 싶습니다. 그러나 일부 질문은 볼 수있는 영역 밖에 있습니다 (JScrollPane에 있음). 아래는 인쇄용 코드이지만 JFrame의 가시 부분 만 인쇄합니다. 제발 누군가 도와 줄 수 있니? 사전에JFrame의 PDF를 만드는 방법은 무엇입니까 (표시되지 않은 JScrollPane 부품 포함)?
private void printFrame(){
PrinterJob printerJob = PrinterJob.getPrinterJob();
printerJob.setPrintable(this);
// pop up a dialog box for the end user to fine tune the options.
if (printerJob.printDialog())
{
try
{
// render the component onto the printer or print queue.
printerJob.print();
}
catch (PrinterException e)
{
System.out.println("Error printing: " + e);
}
}
}
public int print(Graphics gr, PageFormat pageFormat, int pageIndex){
if (pageIndex > 0)
{
return Printable.NO_SUCH_PAGE;
}
Graphics2D g2d = (Graphics2D)gr;
g2d.translate(pageFormat.getImageableX(), pageFormat.getImageableY());
double xScale = 0.33;
double yScale = 0.33;
g2d.scale(xScale, yScale);
paint(g2d);
return Printable.PAGE_EXISTS;
}
감사합니다, D
JScrollPane의 스크롤 기능을 제공하거나 스크롤하지 않고 두 번째보기를 만들 필요가 없도록 UI를 재구성해야합니다. – MadProgrammer