XSL-FO 블록(블록)
XSL-FO의 출력은 블록 영역에 위치합니다.
XSL-FO 페이지, 흐름 및 블록
콘텐츠 "블록"은 "페이지"로 "유입"되고, 그런 다음 매체로 출력됩니다.
XSL-FO의 출력은 일반적으로 <fo:block> 요소에 삽입되며, <fo:block>는 <fo:flow> 요소에 삽입되고, <fo:flow>는 <fo:page-sequence> 요소에 삽입됩니다:
<fo:page-sequence> <fo:flow flow-name="xsl-region-body"> <fo:block> <!-- Output goes here --> </fo:block> </fo:flow> </fo:page-sequence>
블록 영역의 속성
블록은 사각형 상자 내에 위치한 출력 시퀀스입니다:
<fo:block border-width="1mm"> 이 출력 블록 주위에는 1mm의 경계가 있습니다. </fo:block>
블록 영역은 사각형 상자이므로 많은 공통 区域 속성을 공유할 수 있습니다:
- space before 과 space after
- margin
- border
- padding
- space before
그림:

space before 과 space after 이는 블록과 블록 간에 분할 역할을 하는 공백입니다.
margin 이는 블록 외측의 공백 영역입니다.
border 의 외부 경계의 사각형입니다. 네 가지 가장자리는 다른 너비를 가질 수 있습니다. 또한 다른 색상과 배경 이미지로 채울 수 있습니다.
padding 이는 내용 영역과 경계 사이의 영역입니다.
content지역은 실제 내용을 포함할 수 있습니다. 예를 들어, 텍스트, 이미지, 그래픽 등.
block margin
- margin
- margin-top
- margin-bottom
- margin-left
- margin-right
block border
border style 속성:
- border-style
- border-before-style
- border-after-style
- border-start-style
- border-end-style
- border-top-style (동일한 border-before)
- border-bottom-style (동일한 border-after)
- border-left-style (동일한 border-start)
- border-right-style (동일한 border-end)
border-color 속성:
- border-color
- border-before-color
- border-after-color
- border-start-color
- border-end-color
- border-top-color (동일한 border-before)
- border-bottom-color (동일한 border-after)
- border-left-color (border-start와 동일)
- border-right-color (border-end와 동일)
박스 경계 너비 속성:
- border-width
- border-before-width
- border-after-width
- border-start-width
- border-end-width
- border-top-width (border-before와 동일)
- border-bottom-width (border-after와 동일)
- border-left-width (border-start와 동일)
- border-right-width (border-end와 동일)
블록 패딩
- padding
- padding-before
- padding-after
- padding-start
- padding-end
- padding-top (padding-before와 동일)
- padding-bottom (padding-after와 동일)
- padding-left (padding-start와 동일)
- padding-right (padding-end와 동일)
블록 배경
- background-color
- background-image
- background-repeat
- background-attachment (스크롤 또는 fixed)
블록 스타일 속성:
이 블록은 단독으로 스타일링할 수 있는 출력 시퀀스입니다:
<fo:block font-size="12pt" font-family="sans-serif"> 이 블록의 출력은 12pt sans-serif 글꼴로 작성됩니다. </fo:block>
글꼴 속성:
- font-family
- font-weight
- font-style
- font-size
- font-variant
텍스트 속성:
- text-align
- text-align-last
- text-indent
- start-indent
- end-indent
- wrap-option (자동 줄바꿈 정의, 단어 줄바꿈)
- break-before (정렬 분리 기호, 페이지 분리)
- break-after (페이지 분리 정의)
- reference-orientation (90" 내의 텍스트 회전 정의)
예제
<fo:block font-size="14pt" font-family="verdana" color="red" space-before="5mm" space-after="5mm"> W3School </fo:block> <fo:block text-indent="5mm" font-family="verdana" font-size="12pt" space-before="5mm" space-after="5mm"> CodeW3C.com에서 모든 웹 빌딩 강의를 찾을 수 있습니다. 기본 HTML과 XHTML에서 다음으로 고급 XML, XSL, 멀티미디어에 이르기까지 필요한 모든 웹 빌딩 강의를 찾을 수 있습니다. 및 WAP. </fo:block>
결과:

위의 예제를 보면, 많은 제목과段落이 포함된 문서를 생성하려면 매우 많은 코드가 필요합니다.
일반적으로, XSL-FO 문서는 우리가 얼마 전에 했던 것처럼 형식화 정보와 내용을 결합하지 않습니다.
XSLT의 조금의 도움으로, 우리는 형식화 정보를 템플릿에 삽입하고 더 깨끗한 내용을 작성할 수 있습니다.
이 강의의 후반 부분에서 XSLT 템플릿을 사용하여 XSL-FO를 결합하는 방법을 배울 것입니다.