<target
depends="antdoc.graph.checkIfRequired"
description="create graphical view of this ant build file"
if="xml2png.needed"
name="antdoc.graph"
>
<-- converts build.xml to *.dot for specific targets -->
<typedef
classpath="${customJarPath}/grand-1.8.jar"
resource="net/ggtools/grand/antlib.xml"
/>
<-- 2006.01.01: bug in graphviz (dot) caused this error on Windows:
"Could not find/open font: Times-Bold in \Windows\Fonts"
Overriding the font in the grand property file gets around it.
2006.09.26: Patch (and font fix below) no longer needed.
-->
<grand output="${webfiles}/ant_website.dot">
<-- outputconfigfile="${webfiles}/build.grand.properties"> -->
<filter
name="fromnode"
node="website"
/>
<filter
name="removenode"
node="init"
/>
</grand>
<grand output="${webfiles}/ant_dist.dot">
<filter
name="fromnode"
node="dist"
/>
<filter
name="removenode"
node="init"
/>
</grand>
<grand output="${webfiles}/ant_all.dot">
<filter
name="removenode"
node="init"
/>
</grand>
<echo>xml2dot complete.</echo>
<-- Convert {basename}.dot to {basename}.ps -->
<-- Notes:
- Size arguments are determined by trial and error.
- Match the size to page orientation in ps2pdf below.
- If picture is too large for the page, decrease the relevant
number here. If too small, increase it.
-->
<dot2ps
basename="ant_website"
size="99,11.0"
/>
<dot2ps
basename="ant_dist"
size="15,99"
/>
<dot2ps
basename="ant_all"
size="99,11"
/>
<echo>dot2ps complete.</echo>
<-- Convert {basename}.ps to {basename}2.ps, adding captions -->
<-- adjust x and y to move caption block -->
<psmodify
basename="ant_website"
title="Website"
x="50"
y="150"
/>
<psmodify
basename="ant_dist"
title="Distribution"
x="90"
y="0"
/>
<psmodify
basename="ant_all"
title="Complete"
x="40"
y="175"
/>
<echo>pscaption complete.</echo>
<-- Convert {basename}2.ps to {basename}.pdf -->
<-- Match the page orientation to size in dot2ps above -->
<-- Use either ledger (landscape) or 11x17 (portrait) -->
<ps2pdf
basename="ant_website"
papersize="11x17"
/>
<ps2pdf
basename="ant_dist"
papersize="ledger"
/>
<ps2pdf
basename="ant_all"
papersize="11x17"
/>
<echo>ps2pdf complete.</echo>
<-- clean up intermediate files -->
<delete>
<fileset
dir="${webfiles}"
includes="ant_*.dot,ant_*.ps"
/>
</delete>
</target>
|