Àμ⳪ Àμ⠹̸®º¸±â ÅÛÇø´¿¡ ¹®¼­ÀÇ ³»¿ëÀ» À§ÇÑ ¿ë±â ¿¤·¹¸àÆ®¸¦ »ý¼ºÇÏ°í ÂüÁ¶ÇÑ´Ù.

Script ¾ø´Ù.
HTML ¾ø´Ù.
XML <LAYOUTRECT id=idVal />
Àμö
idVal (ÀνÄÀÚ)
°³Ã¼¸¦ ÀνÄÇÏ´Â À¯ÀÏÇÑ ¹®ÀÚ¿­ÀÌ´Ù.
Ư±â

LAYOUTRECT ¿¤·¹¸àÆ®µéÀº Àμ⳪ Àμ⠹̸®º¸±âÇÒ ¶§ ÆäÀÌÁö »ó¿¡¼­ µð½ºÇ÷¹À̵Ǵ ³»¿ëÀÇ ½ºÅ¸ÀÏÀ» °®´Â Áö¿ª(area)À¸·Î Á¤ÀǵȴÙ. Àμâ ÅÛÇ÷¹ÀÌÆ®¿¡¼­ LAYOUTRECT ¿¤·¹¸àÆ®µéÀº ÅÛÇ÷¹ÀÌÆ®ÀÇ ÀμâµÉ¼ö ÀÖ´Â Áö¿ªÀÌ Á¤ÀÇµÈ DEVICERECT ¿¤·¹¸àÆ®µé¿¡ Æ÷ÇԵȴÙ. DEVICERECTÀº ¿©·¯°³ÀÇ LAYOUTRECT ¿¤·¹¸àÆ®¸¦ Æ÷ÇÔ ÇÒ ¼ö ÀÖ´Ù.

LAYOUTRECT ¿¤·¹¸àÆ®´Â Àμâ ÅÛÇ÷¹ÀÌÆ®¸¦ »ý¼ºÇϴµ¥ »ç¿ëµÈ´Ù. ÀÌ ¿¤·¹¸àÆ®°¡ À¥ÆäÀÌÁö »ó¿¡ Ç¥ÇöµÉ ¶§ Àμâ ÅÛÇ÷¹ÀÌÆ® ¹Û¿¡¼­´Â ´ëºÎºÐÀÇ ±â´É¼ºÀÌ ºÒÈ°¼ºÈ­µÈ´Ù.

Àμâ ÅÛÇ÷¹ÀÌÆ®Àº ÀüÇüÀûÀ¸·Î ±× ¼Ó¿¡ Àμ⳪ Àμâ¹Ì¸®º¸±â¿¡¼­ ¿øº» ¹®¼­°¡ Ç¥ÇöµÉ ¼ö ÀÖµµ·Ï LAYOUTRECTµéÀ» Æ÷ÇÔÇÑ´Ù. ¼øÂ÷ÀûÀÎ ¿©·¯°³ Áß Á¦ÀÏ ¸ÕÀú³ª¿À´Â LAYOUTRECTÀº contentSrc ¼Ó¼ºÀ¸·Î ¿øº» ³»¿ëÀ» Á¤ÀÇÇÑ´Ù. contentSrc´Â µð½ºÇ÷¹ÀÌµÈ ÇöÀçÀÇ ¹®¼­°¡ ¿øº»À¸·Î »ç¿ëµÈ´Ù´Â Àǹ̷Π¹®ÀÚ¿­ "document"·Î ¼³Á¤µÇ°Å³ª ´Ù¸¥ ¿øº» ¹®¼­ÀÇ ÁÖ¼Ò(URL)°¡ ÁöÁ¤µÉ ¼ö ÀÖ´Ù. LAYOUTRECT ¿¤·¹¸àÆ®µµ ÇöÀçÀÇ LAYOUTRECTÀ» ¿Ï¼º½ÃÅ°±â À§Çá¿© °è¼ÓµÇ´Â ¿øº»À» ³ªÅ¸³»´Â ´Ù¸¥ LAYOUTRECTÀ» ÁöÁ¤ÇÏ´Â nextRect ¼Ó¼ºÀ» °¡Áú ¼ö ÀÖ´Ù. ¸¶Áö¸· °ÍÀ» Á¦¿ÜÇÏ°í °¢°¢ÀÇ LAYOUTRECTÀº nextRect ¼Ó¼ºÀ¸·Î ¼ø¼­¿¡¼­ ´ÙÀ½ LAYOUTRECTÀ» ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù.

Àμâ ÅÛÇ÷¹ÀÌÆ®´Â ÀϹÝÀûÀ¸·Î ±æÀÌ°¡ ´Ù¾çÇÑ ¹®¼­µéÀ» ó¸®ÇÑ´Ù. ´Ù¾çÇÑ ³»¿ëÀÇ Ã³¸®¸¦ À§ÇÏ¿© ÃæºÐÇÑ LAYOUTRECT ¿¤·¹¸àÆ®µéÀ» °¡Áö°í ÀÖ¾î¾ß ÇÑ´Ù. À̸¦ ´Þ¼³Çϱâ À§ÇÏ¿© ¿øº» ¹®¼­°¡ ·ÎµùÀÌ ¿Ï·áµÇ¸é onlayoutcomplete À̺¥Æ®·Î °¢ LAYOUTRECTÀ» ó¸®Çϵµ·Ï ½ºÅ©¸³Æ®·Î LAYOUTRECTµéÀ» ź·ÂÀûÀ¸·Î »ý¼ºÇÏ´Â ¹æ¹ýÀÌ »ç¿ëµÈ´Ù. ÀÌ À̺¥Æ®Ã³¸®ÀÚ´Â contentOverflow ¼Ó¼ºÀ» Á¡°ËÇÏ¿©¾ß ÇÑ´Ù. contentOverflow ¼Ó¼ºÀÌ trueÀ̸é À̺¥Æ®Ã³¸®ÀÚ´Â »õ·Î¿î ÀνÄÀÚ(id)·Î »õ·Î¿î LAYOUTRECTÀ» »ý¼ºÇÏ°í onlayoutcomplete À̺¥Æ®Ã³¸®ÀÚ´Â nextRect ¼Ó¼ºÀ¸·Î ¼ø¼­¿¡¼­ ´ÙÀ½ LAYOUTRECT ¿¤·¹¸àÆ®·Î ÁöÁ¤ÇÑ´Ù. onlayoutcomplete À̺¥Æ®´Â ÇÑ LAYOUTRECT ¿¤·¹¸àÆ®¿¡¼­ Çѹø ÀÌ»ó ¹ß»ýµÉ ¼ö ÀÖÀ¸¹Ç·Î Çѹø È£ÃâµÈ ÈÄ¿¡ ´Ù½Ã ¹ß»ýµÇÁö ¾Ê°Ô ÇϱâÀ§Çؼ­´Â Ãë¼ÒÇÏ¿©¾ß ÇÑ´Ù.

LAYOUTRECT ¿¤·¹¸àÆ®´Â width¿Í height ¼Ó¼ºµéÀÌ ÁöÁ¤µÈ ÆäÀÌÁöÀÇ ½ºÅ¸ÀÏÀ» °¡Á®¾ß ÇÑ´Ù. ÀÌ µÎ ¼Ó¼ºµéÀÇ µðÆúÆ® °ªÀº 0ÀÌ´Ù. Àμâ ÅÛÇ÷¹ÀÌÆ®´Â marginBottom, marginLeft, marginRight, marginTop, pageWidth¿Í pageHeight¸¦ Æ÷ÇÔÇÑ TemplatePrinter ºñÇìÀ̹ö¸¦ ÂüÁ¶ÇÏ¿© ÇöÀç ÆäÀÌÁö ¼³Á¤ Á¤º¸¸¦ ȹµæÇÒ ¼ö ÀÖ´Ù. LAYOUTRECT ½ºÅ¸ÀÏÀº fontFamily, fontWeightµî ¿øº»¿¡ ÀÖ´Â ½ºÅ¸ÀÏÀ» ´Ù½Ã ÁöÁ¤ÇÒ ¼ö ¾ø´Ù.

LAYOUTRECT ¿¤·¹¸àÆ®¸¦ »ç¿ëÇϱâ À§Çؼ­´Â import ó¸® ¹®ÀåÀ» »ç¿ëÇÏ¿© XML(Extensible Markup Language) À̸§ÀÚ¸®(namespace)¸¦ Á¤ÀÇÇÏ¿©¾ß ÇÑ´Ù. ¿¹¸¦µé¸é À̸§ÀÚ¸® 'IE'¸¦ À§ÇÏ¿©

<IMPORT implementation="#default" namespace="IE">

ÀÌ À̸§ÀÚ¸®¸¦ ÀÌ¿ëÇÏ¿© LAYOUTRECT ¿¤·¹¸àÆ®¸¦ »ç¿ëÇÒ ¶§´Â

<IE:LAYOUTRECT ... / >

LAYOUTRECT ¿¤·¹¸àÆ®´Â Á¾·áűװ¡ ¾ø°í XML ¹®¹ý¿¡µû¶ó ű×Á¾·á(>) Àü¿¡ ½½·¡½Ã(/)·Î ´Ý´Â´Ù.

ÂüÁ¶
DeviceRect, LayoutRect, TemplatePrinter, HeaderFooter, dialogArguments

¼³¸íÀ» À§ÇÑ ¿¹Á¦

<HTML xmlns:IE>
<IMPORT namespace="IE" implementation="#default">
<STYLE type='text/css'>
.layoutstyle{ border:solid;margin:10;width:800;height:60em;}
.pagestyle  { border:1 solid blue;margin:5;width:800;height:60em;}
</STYLE>
<DIV id="pagecontainer">
<IE:DEVICERECT id="page1" media="print" class="pagestyle">
<IE:LAYOUTRECT id="LRect1" border="1" borderColor="#ff0000"
  contentsrc="http://trio.co.kr/webrefer/css2/sample.html" marginHeight="5" marginWidth="5"
  onlayoutcomplete="OnRectComplete()" nextRect="LRect2" class="layoutstyle"/>
</IE:DEVICERECT>
</DIV>
<SCRIPT>
index=1;
var oObj;
function OnRectComplete(){
  if (event.contentOverflow==true){
    document.all('LRect'+index).onlayoutcomplete=null;
    newHTML='<IE:DEVICERECT id="page'+(index+1)+'" media="print" class="pagestyle">';
    newHTML+='<IE:LAYOUTRECT id="LRect'+(index+1)+'" onlayoutcomplete="OnRectComplete()" ';
    newHTML+='nextRect="LRect'+(index+2)+'" class="layoutstyle" />';
    newHTML+='</IE:DEVICERECT>';
    pagecontainer.insertAdjacentHTML('beforeEnd',newHTML);
    if (index==1){
      sborder.innerText=LRect1.border;
      sborderColor.innerText=LRect1.borderColor;
 //   scontentDocument.innerText=LRect1.contentDocument;
      scontentSrc.innerText=LRect1.contentSrc;
      smarginHeight.innerText=LRect1.marginHeight;
      smarginWidth.innerText=LRect1.marginWidth;
      snextRect.innerText=LRect1.nextRect;
    }
    index++;
  }
}
str='';
for (i=1;i< document.all.length;i++){
  if (document.all[i].nodeName=='LAYOUTRECT') str+='i='+i+' '+document.all[i].nodeName+' id='+document.all[i].id;
}
document.write('<P align=center><FONT color=blue>'+str+'</FONT></P>');
</SCRIPT>

border ¼Ó¼º IE el
¢¡ °³Ã¼ ÁÖÀ§ÀÇ Å׵θ® µÎ²²¸¦ Çȼ¿´ÜÀ§·Î ¹ÝȯÇϰųª ¼³Á¤ÇÑ´Ù.
¹®¹ý: .border[=iVal]
ÄÚµå: document.write(oObj.border); °á°ú:
borderColor ¼Ó¼º IE el
¢¡ °³Ã¼ÀÇ Å׵θ® »ö»óÀ» »ö»ó°ªÀ¸·Î ¹ÝȯÇϰųª ¼³Á¤ÇÑ´Ù.
¹®¹ý: .borderColor[=sVal]
ÄÚµå: document.write(oObj.borderColor); °á°ú:
contentDocument ¼Ó¼º IE
¢¡ Àμ⳪ Àμ⠹̸®º¸±âµÇ´Â document °³Ã¼¸¦ ¹ÝȯÇÑ´Ù.
¹®¹ý: [sVal=].contentDocument
ÄÚµå: document.write(oObj.contentDocument); °á°ú:
contentSrc ¼Ó¼º IE el
¢¡ Àμâ ÅÛÇø´¿¡ ÀÖ´Â LayoutRet °³Ã¼ÀÇ ³»¿ë ¼Ò½º¸¦ ¹ÝȯÇϰųª ¼³Á¤ÇÑ´Ù.
¹®¹ý: .contentSrc[=sVal]
ÄÚµå: document.write(oObj.contentSrc); °á°ú:
honorPageBreaks, honorPageRules ¼Ó¼º
¢¡ ÇöÀç Áö¿øµÇÁö ¾Ê´Â´Ù.
marginHeight ¼Ó¼º IE el
¢¡ ÇÁ·¹ÀÓ¿¡ ÅýºÆ®¸¦ µð½ºÇ÷¹ÀÌ Çϱâ ÀüÀÇ ¸ÇÀ§¿Í ¸Ç¾Æ·¡ÀÇ ¸¶Áø ³ôÀ̸¦ Çȼ¿´ÜÀ§·Î ¹ÝȯÇϰųª ¼³Á¤ÇÑ´Ù.
¹®¹ý: .marginHeight[=iVal]
ÄÚµå: document.write(oObj.marginHeight); °á°ú:
marginWidth ¼Ó¼º IE el
¢¡ ÇÁ·¹ÀÓ¿¡ ÅýºÆ®¸¦ µð½ºÇ÷¹ÀÌ Çϱâ ÀüÀÇ ¿ÞÂÊ°ú ¿À¸¥ÂÊ ¸¶Áø ³Êºñ¸¦ Çȼ¿´ÜÀ§·Î ¹ÝȯÇϰųª ¼³Á¤ÇÑ´Ù.
¹®¹ý: .marginWidth[=iVal]
ÄÚµå: document.write(oObj.marginWidth); °á°ú:
nextRect ¼Ó¼º IE el
¢¡ ¹®¼­¿¡¼­ »ç¿ëµÈ ´ÙÀ½¹ø LayoutRet °³Ã¼ÀÇ ÀνÄÀÚ¸¦ ¹ÝȯÇϰųª ¼³Á¤ÇÑ´Ù.
¹®¹ý: .nextRect[=sVal]
ÄÚµå: document.write(oObj.nextRect); °á°ú:

stylescript
{background-attachment:val} obj.style.backgroundAttachment[=val]
¢¡ ¹®¼­ ¼ÓÀÇ ¹è°æ À̹ÌÁö¸¦ °³Ã¼¿¡ ¹è¿­ ¹æ½ÄÀ» ¹ÝȯÇϰųª ¼³Á¤ÇÑ´Ù.
{right:val} obj.style.right[=val]
¢¡ °³Ã¼ ü°èµµ»ó ¿À¸¥ÂÊ °³Ã¼¿ÍÀÇ °Å¸®¸¦ ¹ÝȯÇϰųª ¼³Á¤ÇÑ´Ù.
{zoom:val} obj.style.zoom[=val]
¢¡ °³Ã¼ÀÇ È®´ë ¹èÀ²À» ¹ÝȯÇϰųª ¼³Á¤ÇÑ´Ù.

À̺¥Æ®¼³¸í
onlayoutcomplete ¿øº» ¹®¼­·ÎºÎÅÍ ³»¿ëÀ» ÇöÀçÀÇ LayoutRect °³Ã¼¿¡ ä¿ö³Ö±â°¡ ³¡³ª°í ÀμâÇϰųª Àμâ¹Ì¸®º¸±â¸¦ ½ÇÇàÇÏ¸é ¹ß»ýµÈ´Ù.