-
Bug
-
Resolution: Unresolved
-
P4
-
1.4.2
-
Fix Understood
-
x86
-
linux
FULL PRODUCT VERSION :
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_12-b03)
Java HotSpot(TM) Client VM (build 1.4.2_12-b03, mixed mode)
ADDITIONAL OS VERSION INFORMATION :
Linux version 2.6.11-co-0.6.3 (george@CoDebianDevel) (gcc version 3.4.4 20050314
(prerelease) (Debian 3.4.3-13))
EXTRA RELEVANT SYSTEM CONFIGURATION :
CUPS printing system
A DESCRIPTION OF THE PROBLEM :
validatePage does not return valid PageFormat under linux. It effects in printing 1 inch margins (printers defaults?)
egzample:
//get printerJob ang default pageFormat
PrinterJob javaPrinterJob = java.awt.print.PrinterJob.getPrinterJob();
PageFormat pf = javaPrinterJob.defaultPage();
//set margins to 0
Paper p = javaPageFormat.getPaper();
p.setImageableArea(0.0,0.0,p.getWidth(),p.getHeight());
pf.setPaper(p);
//validate page format
pf = javaPrinterJob.validatePage(pf);
// margins are still set to 0 !
also checked under:
Linux version 2.4.21-0.13mdk (###@###.###) (gcc version 3.2.2 (Mandrake Linux 9.1 3.2.2-3mdk))
(CUPS)
with:
java version "1.4.1_02"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1_02-b06)
Java HotSpot(TM) Client VM (build 1.4.1_02-b06, mixed mode)
Linux version 2.6.16.13 (baggins@duch) (gcc version 3.3.6 (PLD Linux))
(no CUPS)
with:
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Server VM (build 1.5.0_06-b05, mixed mode)
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
try code included
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
margins set do printer-depended values
ACTUAL -
margins unchanged
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
import java.awt.print.PageFormat;
import java.awt.print.Paper;
import java.awt.print.PrinterJob;
public class TestPrint
{
public static void main(String[] args) {
// get printerJob ang default pageFormat
PrinterJob javaPrinterJob = java.awt.print.PrinterJob.getPrinterJob();
PageFormat pf = javaPrinterJob.defaultPage();
// System.err.println(pf);
// System.err.println(toString(pf));
// set margins to 0
Paper p = pf.getPaper();
p.setImageableArea(0.0,0.0,p.getWidth(),p.getHeight());
pf.setPaper(p);
System.err.println(pf);
System.err.println(toString(pf));
pf = javaPrinterJob.validatePage(pf);
System.err.println(pf);
System.err.println(toString(pf));
}
public static String toString(PageFormat javaPageFormat) {
StringBuffer sb = new StringBuffer();
sb.append("PageFormat[Orientation= ");
sb.append(javaPageFormat.getOrientation());
sb.append(" wymiary=(");
sb.append(javaPageFormat.getWidth());
sb.append(", ");
sb.append(javaPageFormat.getHeight());
sb.append("), obszar-do-druku=(");
sb.append(javaPageFormat.getImageableWidth());
sb.append(", ");
sb.append(javaPageFormat.getImageableHeight());
sb.append(") poczatek-obszaru-do-druku=(");
sb.append(javaPageFormat.getImageableX());
sb.append(", ");
sb.append(javaPageFormat.getImageableY());
sb.append(")] ");
return sb.toString();
}
}
---------- END SOURCE ----------
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_12-b03)
Java HotSpot(TM) Client VM (build 1.4.2_12-b03, mixed mode)
ADDITIONAL OS VERSION INFORMATION :
Linux version 2.6.11-co-0.6.3 (george@CoDebianDevel) (gcc version 3.4.4 20050314
(prerelease) (Debian 3.4.3-13))
EXTRA RELEVANT SYSTEM CONFIGURATION :
CUPS printing system
A DESCRIPTION OF THE PROBLEM :
validatePage does not return valid PageFormat under linux. It effects in printing 1 inch margins (printers defaults?)
egzample:
//get printerJob ang default pageFormat
PrinterJob javaPrinterJob = java.awt.print.PrinterJob.getPrinterJob();
PageFormat pf = javaPrinterJob.defaultPage();
//set margins to 0
Paper p = javaPageFormat.getPaper();
p.setImageableArea(0.0,0.0,p.getWidth(),p.getHeight());
pf.setPaper(p);
//validate page format
pf = javaPrinterJob.validatePage(pf);
// margins are still set to 0 !
also checked under:
Linux version 2.4.21-0.13mdk (###@###.###) (gcc version 3.2.2 (Mandrake Linux 9.1 3.2.2-3mdk))
(CUPS)
with:
java version "1.4.1_02"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1_02-b06)
Java HotSpot(TM) Client VM (build 1.4.1_02-b06, mixed mode)
Linux version 2.6.16.13 (baggins@duch) (gcc version 3.3.6 (PLD Linux))
(no CUPS)
with:
java version "1.5.0_06"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_06-b05)
Java HotSpot(TM) Server VM (build 1.5.0_06-b05, mixed mode)
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
try code included
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
margins set do printer-depended values
ACTUAL -
margins unchanged
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
import java.awt.print.PageFormat;
import java.awt.print.Paper;
import java.awt.print.PrinterJob;
public class TestPrint
{
public static void main(String[] args) {
// get printerJob ang default pageFormat
PrinterJob javaPrinterJob = java.awt.print.PrinterJob.getPrinterJob();
PageFormat pf = javaPrinterJob.defaultPage();
// System.err.println(pf);
// System.err.println(toString(pf));
// set margins to 0
Paper p = pf.getPaper();
p.setImageableArea(0.0,0.0,p.getWidth(),p.getHeight());
pf.setPaper(p);
System.err.println(pf);
System.err.println(toString(pf));
pf = javaPrinterJob.validatePage(pf);
System.err.println(pf);
System.err.println(toString(pf));
}
public static String toString(PageFormat javaPageFormat) {
StringBuffer sb = new StringBuffer();
sb.append("PageFormat[Orientation= ");
sb.append(javaPageFormat.getOrientation());
sb.append(" wymiary=(");
sb.append(javaPageFormat.getWidth());
sb.append(", ");
sb.append(javaPageFormat.getHeight());
sb.append("), obszar-do-druku=(");
sb.append(javaPageFormat.getImageableWidth());
sb.append(", ");
sb.append(javaPageFormat.getImageableHeight());
sb.append(") poczatek-obszaru-do-druku=(");
sb.append(javaPageFormat.getImageableX());
sb.append(", ");
sb.append(javaPageFormat.getImageableY());
sb.append(")] ");
return sb.toString();
}
}
---------- END SOURCE ----------
- relates to
-
JDK-8160888 [PIT] What to expect of updated java/awt/print/PrinterJob/Margins.java
-
- Resolved
-