돈 안 들이고 PDF 파일 만들기 8장 : 표 만들기

세벌의 이미지

돈 안 들이고 PDF 파일 만들기 8장 : 표 만들기

아래에 표를 만들기 위한 FO 파일 예가 있습니다.
tbl.fo

<?xml version="1.0" encoding="utf-8"?>
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
	<fo:layout-master-set>
		<fo:simple-page-master master-name="my-page">
			<fo:region-body margin="1cm"/>
		</fo:simple-page-master>
	</fo:layout-master-set>
	<fo:page-sequence master-reference="my-page">
		<fo:flow flow-name="xsl-region-body">
			<fo:block font-family="unbatang">표 만들기</fo:block>
			<fo:table border-color="gray" border-style="solid">
				<fo:table-header>
					<fo:table-row>
						<fo:table-cell>
							<fo:block>0</fo:block>
						</fo:table-cell>
						<fo:table-cell border-color="blue" border-style="solid">
							<fo:block>1</fo:block>
						</fo:table-cell>
					</fo:table-row>
				</fo:table-header>
				<fo:table-body border-color="green" border-style="solid">
					<fo:table-row border-color="yellow" border-style="solid">
						<fo:table-cell border-color="red" border-style="solid">
							<fo:block>2</fo:block>
						</fo:table-cell>
						<fo:table-cell>
							<fo:block>3</fo:block>
						</fo:table-cell>
					</fo:table-row>
				</fo:table-body>
			</fo:table>
		</fo:flow>
	</fo:page-sequence>
</fo:root>

헉. 왜 이리 길어? 그러나 걱정 마세요. 복사/붙이기라는 좋은 방법이 있지 않습니까?
길어도 어려울 건 별로 없습니다. 위 내용을 하나 하나 분석해 보겠습니다.

<fo:table border-color="gray" border-style="solid">
table 전체의 테두리 색깔 및 테두리 형식을 정합니다.

<fo:table-body border-color="green" border-style="solid">
table 본문(body라는 말을 그대로 몸으로 번역하기도 좀 이상한 거 같고... 더 좋은 번역 없을까요?) 의 테두리 색깔 및 테두리 형식을 정합니다.

<fo:table-row border-color="yellow" border-style="solid">
행의 테두리 색깔 및 테두리 형식을 정합니다.

<fo:table-cell border-color="red" border-style="solid">
셀의 테두리 색깔 및 테두리 형식을 정합니다.

이제 FOP 실행 시켜 봅시다.

d:\lec> fop -c cfg.xml tbl.fo tbl.pdf
하시면
2010. 6. 1 오전 7:36:08 org.apache.fop.fo.FONode attributeWarning
경고: Warning(12/55): fo:table, table-layout="auto" is currently not supported by FOP

이런 식의 경고는 나옵니다만 pdf 파일은 잘 만들어 집니다.

Forums: