»õ·Î¿î Java Print Service API
John
Zukowski »çÀå, JZ Ventures, Inc. 2002³â 3¿ù
1.1 ÀÌÈÄ ¸ðµç »õ·Î¿î ÀÚ¹Ù Ç÷§Æû Ãâ½ÃÆÇÀº Ç÷§ÆûÀÇ Àμâ Áö¿ø ÇÁ·¹ÀÓ¿öÅ©¿¡ º¯È¸¦ °¡Á®¿Ô´ø °Íó·³ º¸ÀδÙ. Merlinµµ
¿¹¿Ü´Â ¾Æ´Ï´Ù. À̹ø ´ÞÀÇ Magic with Merlin ¿¡¼ John Zukowski´Â ÃֽŠÀμ⠱â´É¿¡ °üÇÑ
2ȸ¿¡ °ÉÄ£ ³íÀǸ¦ ½ÃÀÛÇÑ´Ù.
¿©·¯ºÐÀÌ ÀÏÁ¤ ±â°£ µ¿¾È ÀÚ¹Ù Ç÷§ÆûÀ¸·Î ÀÛ¾÷ÇØ ¿Ô´Ù¸é ¿©·¯ºÐÀº ¾Æ¸¶ ³ªÃ³·³ Àμâ API°¡ ³¡¾øÀÌ °è¼Ó º¯°æµÇ´Âµ¥ È¥¶õÀ» °Þ¾úÀ»
°ÍÀÌ´Ù. Merlinµµ ÀÚ¹Ù Ç÷§Æû¿¡ ¶Ç ´Ù¸¥ ¼¼Æ®ÀÇ Àμ⠱â´É°ú ±â¹ýµéÀ» °¡Á®¿Ô´Ù. Java Print Service API¶ó°í
À̸§ ºÙ¿©Áø ÀÌ ÃֽŠ±â¹ýÀº 1999³âºÎÅÍ Java Community Process¿¡¼ ÀÛ¾÷µÇ¾î ¿Ô´Ù. ´ÙÇàÈ÷µµ ÀÌ »õ API´Â
±àÁ¤ÀûÀÎ Ãß°¡¶ó ÇÒ ¼ö ÀÖ°í ´çºÐ°£ Àμâ Áö¿ø¿¡ ÀÖ¾î ¸¶Áö¸· Áß¿ä º¯È°¡ µÉ °ÍÀÌ´Ù.
»õ·Î¿î Print Services API·Î ÀμâÇÏ·Á¸é ¹ß°ß, ÁöÁ¤, Àμâ¶ó´Â ¼¼ ºÎºÐÀ¸·Î µÈ ÇÁ·Î¼¼½º°¡ ÇÊ¿äÇÏ´Ù. ¼±ÅÃÀûÀÎ ³×
¹ø° ºÎºÐÀº Àμâ ÀÛ¾÷ÀÌ ÁøÇàµÉ ¶§ ÅëÁöÇÏ´Â °ÍÀÌ´Ù. ÀÌ ±Û¿¡¼ ¿ì¸®°¡ ÀÛ¾÷ÇÒ ¸ðµç Ŭ·¡½º¿Í ÀÎÅÍÆäÀ̽º´Â
javax.print
ÆÐÅ°Áö³ª ÀÌ ÆÐÅ°ÁöÀÇ ÇÏÀ§ ÆÐÅ°Áö Áß Çϳª¿¡ µé¾î ÀÖ´Ù. (Âü°í
ÀÚ·á )
ÇÁ¸°ÅÍ Ã£±â
Àμâ ÀÛ¾÷À» ¼öÇàÇϱâ À§ÇÑ Ã¹¹ø° ´Ü°è´Â ÀμâÇÒ ÇÁ¸°Åͳª ÇÁ¸°ÅÍ ¼¼Æ®¸¦ È®ÀÎÇÏ´Â °ÍÀÌ´Ù. ÇÁ¸°ÅÍ °´Ã¼´Â ÇÁ¸°Æ® ¼ºñ½º
(print services) ¶ó°í ºÒ¸®¸ç, È®ÀÎ ÀýÂ÷´Â °Ë»ö (lookup) À̶ó°í ºÒ¸°´Ù. °Ë»ö ÀÛ¾÷À» À§ÇÑ Áö¿ø
Ŭ·¡½º´Â PrintServiceLookup
¶ó°í ÀûÀýÇÏ°Ô ºÒ¸°´Ù. ÇÁ¸°Æ® ¼ºñ½º¸¦ °Ë»öÇÏ·Á¸é Listing 1¿¡
³ª¿Í ÀÖ´Â ¼¼ °¡Áö ¸Þ¼Òµå Áß Çϳª¸¦ »ç¿ëÇÑ´Ù.
Listing 1. ÇÁ¸°Æ® ¼ºñ½º °Ë»öÇϱâ
public static final PrintService
lookupDefaultPrintService()
public static final PrintService[]
lookupPrintServices(DocFlavor flavor, AttributeSet attributes)
public static final MultiDocPrintService[]
lookupMultiDocPrintServices(DocFlavor[] flavors,
AttributeSet attributes)
¼¼ ¸Þ¼Òµå´Â °¢°¢ ´Ù¸¥ ÀÛ¾÷¿¡ »ç¿ëµÈ´Ù.:
lookupDefaultPrintService()
Àº ±âº» ÇÁ¸°Æ® ¼ºñ½º¸¦ ¹ÝȯÇÑ´Ù.
lookupPrintServices()
Àº ƯÁ¤ ¼Ó¼ºÀ» °¡Áö°í (¾ç¸é Àμâµî) ƯÁ¤ ¹®¼ À¯Çü
(GIFµî)ÀÇ Àμ⸦ Áö¿øÇÏ´Â ÇÁ¸°ÅÍ ¼¼Æ®¸¦ ¹ÝȯÇÑ´Ù.
lookupMultiDocPrintServices()
Àº ÇÑ ¹ø¿¡ ¿©·¯ ¹®¼¸¦ ÀμâÇÏ´Â °ÍÀ»
Áö¿øÇÑ´Ù..
¿©·¯ºÐÀÌ »ç¿ëÇÒ ÇÁ¸°Æ® ¼ºñ½º¸¦ ãÀº ÈÄ¿¡´Â Àμâ jobÀ» »ý¼ºÇØ¾ß ÇÑ´Ù.
³ªÁß¿¡ ÀÌ job¿¡ Ãâ·ÂÀ» º¸³¾ °ÍÀÌ´Ù. °Ë»ö °á°ú ¹ÝȯµÈ PrintService
´Â ÀÚ½ÅÀÇ
createPrintJob()
¸Þ¼Òµå·Î jobÀ» »ý¼ºÇϴµ¥ »ç¿ëµÉ ¼ö Àִµ¥, ÀÌ´Â ´ÙÀ½°ú °°´Ù.:
PrintService printService =
PrintServiceLookup.lookupDefaultPrintService();
DocPrintJob job = printService.createPrintJob();
Ãâ·Â Æ÷¸Ë ÁöÁ¤Çϱâ
¾îµð¿¡ ÀμâÇÒÁö ÁöÁ¤ÇØ¾ß ÇÒ »Ó ¾Æ´Ï¶ó Àμ⠹®¼ÀÇ Æ÷¸Ëµµ ÁöÁ¤ÇØ¾ß ÇÑ´Ù. DocFlavor
Ŭ·¡½º
(ȤÀº ÀÌ Å¬·¡½ºÀÇ ÇÏÀ§ Ŭ·¡½º)°¡ ¾µ¸ð ÀÖ´Â °÷ÀÌ ¹Ù·Î ¿©±âÀÌ´Ù. DocFlavor
Ŭ·¡½º´Â ¿©·¯ºÐÀÌ ÀμâÇÒ
°´Ã¼ÀÇ MIME (Multipurpose Internet Mail Extensions) À¯ÇüÀ» È®ÀÎÇϴµ¥ »ç¿ëµÈ´Ù. MIME À¯ÇüÀº
ÀüÀÚ½Ä µ¥ÀÌÅÍ°¡ ¾î¶»°Ô Çؼ®µÇ¾î¾ß ÇÏ´ÂÁö¸¦ ¼³¸íÇÑ´Ù. ¿©·¯ºÐÀº ÀüÀÚ ¿ìÆíÀ̳ª ÷ºÎ¹®¼ ÀÛ¾÷À» ÇÒ ¶§ MIME À¯ÇüÀ» ¸¸³µÀ» °ÍÀÌ´Ù.
ÇÏÁö¸¸ MIME »ç¾çÀº µ¥ÀÌÅÍ Çü½ÄÀ» È®ÀÎÇϱâ À§ÇÑ º¸´Ù ÀϹÝÀûÀÎ ¸ñÀûÀÇ ¸ÞÄ¿´ÏÁòÀ» ±â¼úÇÏ°í ÀÖ´Ù.
MerlinÀº Æ÷¸ËÀ» Á¤ÀÇÇϱâ À§ÇØ 7°³ÀÇ DocFlavor
ÇÏÀ§
Ŭ·¡½º¸¦ ÀÚ½ÅÀÇ ³»ºÎ Ŭ·¡½º·Î Á¦°øÇÑ´Ù. ÀÌ Å¬·¡½ºµéÀº ¼¼ °³ÀÇ MIME ÇÏÀ§ À¯ÇüÀ¸·Î ³ª´©¾îÁø´Ù.: ¹ÙÀÌÆ® ÁöÇâÇü, ¹®ÀÚ ÁöÇâÇü ¹×
¼ºñ½º ÁöÇâÇüÀÌ ±×°ÍÀÌ´Ù. ¹ÙÀÌÆ® ÁöÇâÇü ¿É¼ÇµéÀº ´ÙÀ½°ú °°´Ù. :
BYTE_ARRAY
INPUT_STREAM
URL
¹®ÀÚ ÁöÇâÇü ¿É¼ÇÀº ´ÙÀ½°ú °°´Ù.:
¼ºñ½º ÁöÇâÇü ³»ºÎ Ŭ·¡½º´Â SERVICE_FORMATTED
ÀÌ´Ù.
³»ºÎ Ŭ·¡½º ³»ÀÇ ³»ºÎ Ŭ·¡½º
°¢ ¿É¼Ç À¯ÇüÀº ÀÚüÀûÀÎ MIME À¯Çü ¼¼Æ®¸¦ Áö¿øÇÑ´Ù. ÀÌ MIME À¯ÇüµéÀÌ ´Ù½Ã Çѹø ³»ºÎ Ŭ·¡½º·Î Á¤ÀǵȴÙ. ´ÙÀ½°ú °°ÀÌ
19°³ÀÇ ¹ÙÀÌÆ® ÁöÇâÇü ¿É¼ÇÀÌ ÀÖ´Ù. :
AUTOSENSE
GIF
JPEG
PCL
PDF
PNG
POSTSCRIPT
TEXT_HTML_HOST
TEXT_HTML_US_ASCII
TEXT_HTML_UTF_16
TEXT_HTML_UTF_16BE
TEXT_HTML_UTF_16LE
TEXT_HTML_UTF_8
TEXT_PLAIN_HOST
TEXT_PLAIN_US_ASCII
TEXT_PLAIN_UTF_16
TEXT_PLAIN_UTF_16BE
TEXT_PLAIN_UTF_16LE
TEXT_PLAIN_UTF_8
¹®ÀÚ ÁöÇâÇü ½ºÆ®¸²Àº º¸´Ù Æò¹üÇÏ¿©, ´ÙÀ½ µÎ Æ÷¸Ë¸¸À» Á¦°øÇÑ´Ù.:
¼ºñ½º Á᫐ ½ºÆ®¸²Àº ¼¼ °³ÀÇ Æ÷¸äÀ» Æ÷ÇÔÇÑ´Ù. :
PAGEABLE
PRINTABLE
RENDERABLE_IMAGE
¿©·¯ºÐÀº ¿É¼ÇÀ» ´ÙÀ½°ú °°ÀÌ ±¸¼ºÇÑ´Ù. (ÀÌ ¿¹¿¡¼´Â PNG À̹ÌÁö·Î) :
DocFlavor flavor = DocFlavor.INPUT_STREAM.PNG;
Àμ⠼Ӽº ÁöÁ¤Çϱâ
ÀμâÇÒ ¶§ ¿©·¯ºÐÀº ¹®¼¸¦ ¾î¶»°Ô ÀμâÇϱ⠿øÇÏ´ÂÁö¸¦ ±â¼úÇÏ´Â ¼Ó¼ºÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù. ¼Ó¼ºÀÇ ¿¹·Î´Â Àμ⠸żö, ÀμâÇÒ ÆäÀÌÁö
¹× ¹®¼ À̹ÌÁö À¯Çü (¿¹ : °¡·Î ´ë ¼¼·Î)µîÀÌ ÀÖ´Ù. ¼Ó¼ºÀ» ÁöÁ¤ÇÏ·Á¸é ´ÙÀ½ µÎ Ŭ·¡½º Áß Çϳª¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù.:
DocAttributeSet
ÇÑ ¹®¼ÀÇ Æ¯¼ºÀ» ÁöÁ¤ÇÑ´Ù.
PrintRequestAttributeSet
ÇÑ Àμâ ÀÛ¾÷ÀÇ Æ¯¼ºÀ» ÁöÁ¤ÇÑ´Ù.
Àμ⸦ ¼öÇàÇϱâ À§ÇØ ¼Ó¼ºÀ» ÁöÁ¤ÇÏ·Á¸é ¸ÕÀú ÀûÀýÇÑ ¼¼Æ®ÀÇ ÀνºÅϽº¸¦ »ý¼ºÇÏ°í
(DocAttributeSet
or PrintRequestAttributeSet
), ±×
´ÙÀ½ ¿©·¯ºÐÀÇ Àμ⸦ ¼öÇàÇϱâ À§ÇØ ¿øÇÏ´Â ¼Ó¼ºÀ» ±× ÀνºÅϽº¿¡ ä¿î´Ù. ¿©·¯ºÐÀÌ ÁöÁ¤ÇÏÁö ¾ÊÀº ¼Ó¼ºµéÀº ÀûÀýÇÑ ±âº»°ªÀ¸·Î ±¸¼ºµÉ
°ÍÀÌ´Ù. javax.print.attribute
ÆÐÅ°Áö´Â ¾à 70°³ÀÇ ¼·Î ´Ù¸¥ ¼Ó¼ºÀ» °¡Áö°í Àִµ¥, °¢°¢Àº
º°°³ÀÇ Å¬·¡½º·Î Á¤ÀǵȴÙ. °¢ ¼Ó¼ºÀº ÇÑ °³, ȤÀº ±× ÀÌ»óÀÇ ¼Ó¼º ¼¼Æ®¿Í ÇÔ²² ÀÛµ¿µÈ´Ù. ÀÌ ±Û¿¡¼ ¼³¸íÇÑ µÎ ¼Ó¼º ¼¼Æ® ¿Ü¿¡ Á¤º¸
Á¶È¸¸¦ À§ÇØ ¶Ç ´Ù¸¥ µÎ °³ÀÇ ¼¼Æ®¸¦ ÀÌ¿ëÇÒ ¼öµµ ÀÖ´Ù. javax.print.attribute
ÆÐÅ°Áö¿¡¼
¸ðµç À¯ÇüµéÀ» ã¾Æº¼ ¼ö ÀÖ´Ù.
´ÙÀ½Àº PrintRequestAttributeSet
¸¦ »ç¿ëÇÏ°í ±× °´Ã¼¸¦ 5ºÎ ÀμâÇÏ´Â ÇÁ¸°Æ®
½ÇÇàÀÌ´Ù.:
PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
pras.add(new Copies(5));
»ç¿ë °¡´ÉÇÑ ¸ðµç ¼Ó¼ºÀÇ ¸ñ·ÏÀº javax.print.attribute
ÆÐÅ°Áö¸¦ º¸¾Æ¾ß ÇÑ´Ù.
³»¿ë ¼³Á¤Çϱâ
Doc
ÀÎÅÍÆäÀ̽º´Â Àμâ job¿¡ µ¥ÀÌÅ͸¦ Á¦°øÇÑ´Ù. ÀÎÅÍÆäÀ̽ºÀÇ ±¸ÇöÀÚ´Â
SimpleDoc
Ŭ·¡½ºÀÌ´Ù. ´Ü ÇϳªÀÇ »ý¼ºÀÚ°¡ »ç¿ëµÇ¸ç, ¿©·¯ºÐÀº Àμâ
³»¿ëÀ» ù¹ø° ¸Å°³º¯¼ö·Î, ¿É¼ÇÀ» µÎ ¹ø° ¸Å°³º¯¼ö·Î, ¼Ó¼ºÀ» ¼¼ ¹ø° ¸Å°³º¯¼ö·Î Á¦°øÇÑ´Ù. »ý¼ºÀÚ´Â ´ÙÀ½°ú
°°´Ù.:
public SimpleDoc(Object printData, DocFlavor flavor,
DocAttributeSet attributes)
±×·¯¸é µ¥ÀÌÅÍ ¹®Á¦°¡ ³²´Â´Ù. ±× ´äÀº DocFlavor¿¡ ´Þ·Á ÀÖ´Ù. ¿©·¯ºÐÀÌ
DocFlavor.INPUT_STREAM
ÀÇ ¿É¼ÇÀ» ÁöÁ¤ÇÏ¸é µ¥ÀÌÅÍ´Â ±×
InputStream
¿¡ ÀÇÇØ È®À뵃 °ÍÀÌ´Ù. ¿©·¯ºÐÀÌ
DocFlavor.BYTE_ARRAY
¸¦ ÁöÁ¤Çß´Ù¸é µ¥ÀÌÅÍ´Â ÇϳªÀÇ ¹ÙÀÌÆ® ¹è¿ (byte [
]
)ÀÌ µÉ °ÍÀÌ´Ù.
µû¶ó¼ PNG À̹ÌÁö ÆÄÀÏÀ» ÀμâÇÏ·Á¸é Listing 2¿¡ ³ª¿Í ÀÖ´Â ±¸¹®À» »ç¿ëÇÑ´Ù.
Listing 2. ³»¿ë ¼³Á¤Çϱâ
DocFlavor flavor = DocFlavor.INPUT_STREAM.PNG;
String filename = ...;
FileInputStream fis = new FileInputSteam(filename);
DocAttributeSet das = new HashDocAttributeSet();
Doc doc = new SimpleDoc(fis, flavor, das);
ÀμâÇϱâ ÀÏ´Ü ¿©·¯ºÐÀÌ ÇÁ¸°Å͸¦ È®ÀÎÇÏ°í Ãâ·Â Æ÷¸Ë, ¼Ó¼º ¹× ³»¿ëÀ» ÁöÁ¤Çß´Ù¸é ³²°ÜÁø ÀÏÀº
Àμâ»ÓÀÌ´Ù. ½ÇÁ¦ Àμâ jobÀº Listing 3°ú °°ÀÌ PrintService
·ÎºÎÅÍ Á¶È¸µÇ´Â
DocPrintJob
ÀÇ print()
¸Þ¼Òµå¸¦ ÅëÇØ ½ÇÇàµÈ´Ù.
Listing 3.Àμâ job
DocPrintJob job = ...;
PrintRequestAttributeSet pras = ...;
Doc doc = ...;
job.print(doc, pras);
print()¸¦ È£ÃâÇÏ¸é ¿©·¯ºÐÀº Àμ⠳»¿ëÀ» ´Ù¸¥ ½º·¹µå¸¦ ÅëÇÏ¿© ÇÁ¸°Æ® ¼ºñ½º·Î º¸³»´Â
¸ÞÄ¿´ÏÁòÀ» ÀÛµ¿ÇÏ°Ô µÈ´Ù.
Àμ⠼³Á¤ ȸé
Áö±Ý±îÁö ÁÖ¸ñÇÒ¸¸ÇÑ °ÍÀÌ Çϳª ºüÁ³´Âµ¥ ÀÌ°ÍÀº Àμ⠼³Á¤ ȸéÀÌ´Ù. Àμ⠼³Á¤ ȸéÀº
¿©·¯ºÐÀÌ ±×·¡ÇÈ ±â¹ÝÀ¸·Î ÇÁ¸°ÅÍ ¼Ó¼ºÀ» ±¸¼ºÇϵµ·Ï ÇØÁÖ´Â ½Ã½ºÅÛ Æ˾÷À» ¸»ÇÑ´Ù. ±×¸² 1Àº »õ·Î¿î Java Print Service
API¸¦ À§ÇÑ Àμ⠼³Á¤ ȸéÀ» º¸¿©ÁÖ°í ÀÖ´Ù.
±×¸² 1. Àμ⠼³Á¤ ȸé
Èï¹Ì·Ó°Ôµµ, Àμ⠼³Á¤ ȸéÀÇ ±âº» ÇൿÀÌ »õ·Î¿î API¿¡¼´Â ¹Ù²î¾ú´Ù: ¼³Á¤ ȸéÀº
±âº»ÀûÀ¸·Î ³ªÅ¸³ªÁö ¾Ê´Â´Ù. µû¶ó¼ ¿©·¯ºÐÀº À§¿Í °°Àº Àμ⠼³Á¤ ȸéÀ» ¸¸µé±â À§Çؼ ServiceUI Ŭ·¡½º¸¦ »ç¿ëÇؾß
ÇÑ´Ù.
ServiceUI
Ŭ·¡½º´Â ÇÁ¸°ÅÍ ¼±Åà ȸéÀ» Ç¥½ÃÇϵµ·Ï ÇÏ´Â ÇϳªÀÇ
¸Þ¼Òµå¸¦ Á¦°øÇÑ´Ù.:
printDialog(GraphicsConfiguration gc, int x, int y,
PrintService[] services, PrintService defaultService,
DocFlavor flavor, PrintRequestAttributeSet attributes)
±×·¯¸é ¿©·¯ºÐÀº ¹ÝȯµÈ PrintService
¸¦ »ç¿ëÇÏ¿© ÀμâÇÒ
DocPrintJob
À» ¾ò´Âµ¥, Listing 4¿Í °°´Ù.
Listing
4. Àμ⠼³Á¤ ȸéÀ¸·Î ÀμâÇϱâ
String filename = ...;
PrintRequestAttributeSet pras = ...;
DocFlavor flavor = ...;
PrintService printService[] =
PrintServiceLookup.lookupPrintServices(flavor, pras);
PrintService defaultService =
PrintServiceLookup.lookupDefaultPrintService();
PrintService service = ServiceUI.printDialog(null, 200, 200,
printService, defaultService, flavor, pras);
if (service != null) {
DocPrintJob job = service.createPrintJob();
FileInputStream fis = new FileInputStream(filename);
DocAttributeSet das = new HashDocAttributeSet();
Doc doc = new SimpleDoc(fis, flavor, das);
job.print(doc, pras);
}
½ÇÇà ¿¹Á¦
¿©·¯ºÐÀÌ »õ·Î¿î Print Service APIÀÇ ±â´ÉÀ» ½ÃµµÇØ º¸µµ·Ï ÇØ ÁÙ ½ÇÇà ¿¹Á¦·Î ÀÌ ±ÛÀ» ¸¶¹«¸®ÇÏ°Ú´Ù. ´ÙÀ½ ÄÚµå´Â
¾ÕÀÇ ¸ðµç ¿¹Á¦ ÄÚµåµéÀ» ÇϳªÀÇ ½ÇÇà °¡´ÉÇÑ ÇÁ·Î±×·¥À¸·Î °áÇÕ½ÃŲ °ÍÀÌ´Ù. ÇÁ·Î±×·¥À» ½ÇÇà½Ãų ¶§ ¹Ýµå½Ã PNG À̹ÌÁö ÆÄÀÏÀÇ À̸§À»
¸í·ÉÇà¿¡ ÀüÇØ¾ß ÇÑ´Ù. ´Ù¸¥ Æ÷¸ËÀ» ÀμâÇÏ°í ½ÍÀ» °æ¿ì DocFlavor
À» ¹Ù²Ù±â¸¸ ÇÏ¸é µÈ´Ù.
Listing 5. Àμ⠿¹Á¦
import javax.print.*;
import javax.print.attribute.*;
import java.io.*;
public class Printing {
public static void main(String args[]) throws Exception {
String filename = args[0];
PrintRequestAttributeSet pras =
new HashPrintRequestAttributeSet();
DocFlavor flavor = DocFlavor.INPUT_STREAM.PNG;
PrintService printService[] =
PrintServiceLookup.lookupPrintServices(flavor, pras);
PrintService defaultService =
PrintServiceLookup.lookupDefaultPrintService();
PrintService service = ServiceUI.printDialog(null, 200, 200,
printService, defaultService, flavor, pras);
if (service != null) {
DocPrintJob job = service.createPrintJob();
FileInputStream fis = new FileInputStream(filename);
DocAttributeSet das = new HashDocAttributeSet();
Doc doc = new SimpleDoc(fis, flavor, das);
job.print(doc, pras);
Thread.sleep(10000);
}
System.exit(0);
}
}
Magic with Merlin ¿¬ÀçÀÇ ´ÙÀ½ Æí¿¡¼ ¿©·¯ºÐÀº ȸéÀ̳ª ÄÄÆ÷³ÍÆ®ÀÇ ³»¿ëÀ» ÀμâÇÏ´Â ¹æ¹ý¿¡ °üÇØ ¹è¿ï
°ÍÀÌ´Ù. ¶ÇÇÑ Àμâ¿Í °ü·ÃµÈ À̺¥Æ® ó¸® ÀÛ¾÷µµ ¼³¸íÇÒ °ÍÀÌ°í, ¿©·¯ºÐÀÇ Àμâ ÀÛ¾÷¿¡¼ sleep()
È£ÃâÀ»
¾ø¾Ö´Â ¹æ¹ýµµ º¸¿© ÁÖ°Ú´Ù.
Âü°í ÀÚ·á