2011-12-09 2 views
0

내가이 링크를 가지고 있고, 나는 내 패널 인쇄,이 샘플을 사용할 수 있습니다(locationx, locationy)에서 (panel.getWidth(), panel.getHeight())까지 어떻게 내 패널을 인쇄 할 수 있습니까?

PrintUtilities.printComponent(this); 

은 "이"패널입니다 :이 사용 print example 을 내 패널을 인쇄 할 수 있습니다. 인쇄가 끝나면 용지에 패널이 가득차 있지 않습니다. 넓이의 약 70 %, 높이의 60 %. (나의 영어를 위해 유감스럽게 생각한다, 나는 헝가리 인다) 패널 크기는 850x1160 다. 이것은 A4 용지의 크기 예 : 595x842 -> 70dpi = A4입니다. 내 패널을 A4 용지에 완전히 인쇄하는 방법을 알려주십시오. 감사합니다.

+1

중복 된 http://stackoverflow.com/questions/1220115/resizing-jpanel-to-prepare-for-printing-with-removing-it-from-its-original-po – GETah

+1

다음은 관련 [예]입니다 (http://stackoverflow.com/a/7028497/230513) 'AffineTransformOp'을 사용하여. – trashgod

답변

1
double factorX = pf.getImageableWidth()/component.getWidth(); 
double factorY = pf.getImageableHeight()/component.getHeight(); 
double factor = Math.min(factorX, factorY); 
g2.scale(factor,factor); 

모두에게 감사드립니다!