diff options
Diffstat (limited to 'src/documentation')
-rw-r--r-- | src/documentation/content/xdocs/compliance.ihtml | 16 | ||||
-rw-r--r-- | src/documentation/content/xdocs/dev/release.xml | 122 | ||||
-rw-r--r-- | src/documentation/content/xdocs/site.xml | 25 | ||||
-rw-r--r-- | src/documentation/content/xdocs/trunk/complexscripts.xml | 628 | ||||
-rw-r--r-- | src/documentation/content/xdocs/trunk/output.xml | 19 | ||||
-rw-r--r-- | src/documentation/content/xdocs/trunk/running.xml | 3 | ||||
-rw-r--r-- | src/documentation/skinconf.xml | 4 |
7 files changed, 721 insertions, 96 deletions
diff --git a/src/documentation/content/xdocs/compliance.ihtml b/src/documentation/content/xdocs/compliance.ihtml index ddbbc83cf..fe3107142 100644 --- a/src/documentation/content/xdocs/compliance.ihtml +++ b/src/documentation/content/xdocs/compliance.ihtml @@ -3842,10 +3842,10 @@ "http://www.w3.org/TR/xsl/#page-height">§7.27.13</a></td> <td><a name="fo-property-page-height" id="fo-property-page-height">page-height</a></td> <td class="basic">Basic</td> - <td class="yes">yes</td> - <td class="yes">yes</td> - <td class="yes">yes</td> - <td> </td> + <td class="partial">partial</td> + <td class="partial">partial</td> + <td class="partial">partial</td> + <td>value "indefinite" not yet supported</td> </tr> <tr> <td align="center"><a href= @@ -3862,10 +3862,10 @@ "http://www.w3.org/TR/xsl/#page-width">§7.27.15</a></td> <td><a name="fo-property-page-width" id="fo-property-page-width">page-width</a></td> <td class="basic">Basic</td> - <td class="yes">yes</td> - <td class="yes">yes</td> - <td class="yes">yes</td> - <td> </td> + <td class="partial">partial</td> + <td class="partial">partial</td> + <td class="partial">partial</td> + <td>value "indefinite" not yet supported</td> </tr> <tr> <td align="center"><a href= diff --git a/src/documentation/content/xdocs/dev/release.xml b/src/documentation/content/xdocs/dev/release.xml index 19e6eac2c..21ed60193 100644 --- a/src/documentation/content/xdocs/dev/release.xml +++ b/src/documentation/content/xdocs/dev/release.xml @@ -25,100 +25,72 @@ <body> <section id="intro"> <title>Introduction</title> - <p>This page documents the process of creating a Apache™ FOP release. -FOP releases are coordinated by one member of the team (currently Christian Geisert), so others do not ordinarily need to use this information. -The purpose of documenting it here is to facilitate consistency, ensure that the process is captured, and to allow others to comment on the process.</p> - <p>The checklist below was assembled from Christian Geisert's notes. It will be expanded in the future as he has time.</p> + <p>This page documents the process of creating a Apache™ FOP release. FOP releases are coordinated by some designated member of the team. + The purpose of documenting it here is to facilitate consistency, ensure that the process is captured, and to allow others to comment on the process.</p> + <p>The checklist below is based on a combination of input from from Christian Geisert and Simon Pepping.</p> </section> <section id="checklist"> <title>Checklist</title> <ul> + <li>Determine which open bugs must be solved before a release can take place (release critical bugs). + Make this bug depend on each release critical bug and write a short argument why the bug is release critical.</li> <li>Determine whether this is a Release Candidate or a Release.</li> <li>Determine whether further testing is required.</li> <li>Commit any outstanding changes</li> <li>Create a branch called <code>branches/fop-v_vv</code></li> - <li>Edit release notes (<code>README</code> and - <code>status.xml</code> in the root).</li> - <li>Add the release to <code>news-data.xml</code>; - remove links to release notes of older versions from this file.</li> - <li>Update the FAQ (<code>faq.xml</code>) to the new release.</li> - <li>Check and update the copyright year in NOTICE and build.xml.</li> + <li>Edit release notes (<code>README</code> and <code>status.xml</code> in the root).</li> + <li>Add the release to <code>news-data.xml</code>; + remove links to release notes of older versions from this file.</li> + <li>Update the FAQ (<code>faq.xml</code>) to the new release, e.g., update the answer for "When is the next release planned?".</li> + <li>Check and update the copyright year in NOTICE and build.xml.</li> <li>Update the file <code>doap.rdf</code>, and the files <code>index.xml</code>, <code>site.xml</code>, <code>download.xml</code>, <code>fo.xml</code>, - <code>maillist.xml</code>, <code>quickstartguide.xml</code>, - <code>faq.xml</code> and <code>status.xml</code> + <code>maillist.xml</code>, and <code>quickstartguide.xml</code> in directory <code>xdocs</code> for the new version.</li> <li>Update the version numbers in the release column on the compliance page (<code>compliance.xml</code>); update the compliance in the release column to the current state (development column).</li> <li>Update version number in <code>build.xml</code> (not to be merged back into trunk).</li> - <li>Copy trunk documentation directory to a new directory with - the new version number, and update the .htaccess file for - redirections.</li> - <li>Copy <code>test/fotree/disabled-testcases.xml</code> and - <code>test/layoutengine/disabled-testcases.xml</code> to the - new version directory - <code><version>/fotree/disabled-testcases.xml</code> and - <code><version>/layoutengine/disabled-testcases.xml</code>. - Copy <code>known-issues.xml</code> to the new version - directory. Copy <code>knownissues-overview.xml</code> from the - current to the new version directory, and update the <code>xi:include</code> - links in it.</li> - <li>Update the tab names and directories in tabs.xml</li> + <li>Copy trunk documentation directory to a new directory with the new version number, and update the <code>.htaccess</code> file for + redirections.</li> + <li>Copy <code>test/fotree/disabled-testcases.xml</code> and <code>test/layoutengine/disabled-testcases.xml</code> to the + new version directory <code><version>/fotree/disabled-testcases.xml</code> and <code><version>/layoutengine/disabled-testcases.xml</code>. + Copy <code>known-issues.xml</code> to the new version directory. Copy <code>knownissues-overview.xml</code> from the + current to the new version directory, and update the <code>xi:include</code> links in it.</li> + <li>Update the tab names and directories in <code>tabs.xml</code></li> <li>Delete the previous version directory.</li> - <li>Update index.xml in the new version directory.</li> - <li>Update compiling.xml in the new version directory: change the intro for trunk to that for a release.</li> - <li>Build the dist files (<code>build[.sh] dist</code>) - and upload them to your web directory on - <code>people.apache.org</code></li> - <li>Ask on fop-dev to check the branch and the generated dist - files for errors.</li> + <li>Update <code>index.xml</code> in the new version directory.</li> + <li>Update <code>compiling.xml</code> in the new version directory: change the introduction for trunk to that for a release.</li> + <li>Build the dist files (<code>build[.sh] dist</code>) and upload them to your web directory on <code>people.apache.org</code></li> + <li>Ask on <code>fop-dev</code> ML to check the branch and the generated dist files for errors.</li> <li>Tag the source tree with the release ID. For example, if the release is 1.0: <code>svn copy https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/fop-1_0 https://svn.apache.org/repos/asf/xmlgraphics/fop/tags/fop-1_0</code></li> - <li>Make a fresh checkout with the just created tag: - <code>svn co https://svn.apache.org/repos/asf/xmlgraphics/fop/tags/fop-1_0</code></li> - <li>Copy jimi and jai to lib/ (jimi-1.0.jar, jai_core.jar, jai_codec.jar)</li> - <li>Copy jce-jdk13-119.jar from <link href="http://www.bouncycastle.org/latest_releases.html"> - from http://www.bouncycastle.org/latest_releases.html</link> to lib/</li> - <li>Copy the hyphenation patterns jar file - <code>fop-hyph.jar</code> to lib/ (e.g. from - <code>http://sourceforge.net/projects/offo</code></li> - <li>Alternatively, create a build-local.properties file that points to the above libs.</li> - <li>Run build[.sh] dist. Do this using Sun JDK 1.4.2_08 or later. A Forrest installation is needed.</li> - <li>Create signatures. Don't forget to upload your KEY: - <code>gpg -a -b --force-v3-sigs fop-1.0-src.tar.gz</code> etc.</li> - <li>Upload the dist and signature files to your web directory - on people.apache.org (An account on minotaur is needed): - <code>scp fop-1.0*.tar.gz* - chrisg@people.apache.org:public_html/</code></li> - <li>Check permissions: - <code>chmod 664 ... ; chgrp xmlgraphics ...</code></li> - <li>Add MD5 sums: <code>md5 fop-1.0-src.tar.gz > - fop-1.0-src.tar.gz.md5</code> etc.</li> + <li>Make a fresh checkout with the just created tag: <code>svn co https://svn.apache.org/repos/asf/xmlgraphics/fop/tags/fop-1_0</code></li> + <li>Copy the hyphenation patterns jar file <code>fop-hyph.jar</code> to <code>lib</code> (e.g. from <code>http://sourceforge.net/projects/offo</code></li> + <li>Alternatively, create a <code>build-local.properties</code> file that points to the above libraries.</li> + <li>Run <code>build[.sh] dist</code>. Do this using Sun JDK 1.5 or later. A Forrest installation is needed.</li> + <li>Create signatures. Don't forget to upload your KEY: <code>gpg -a -b --force-v3-sigs fop-1.0-src.tar.gz</code> etc.</li> + <li>Upload the dist and signature files to your web directory on people.apache.org (An account on minotaur is needed): + <code>scp fop-1.0*.tar.gz* chrisg@people.apache.org:public_html/</code></li> + <li>Check permissions: <code>chmod 664 ... ; chgrp xmlgraphics ...</code></li> + <li>Add MD5 sums: <code>md5 fop-1.0-src.tar.gz > fop-1.0-src.tar.gz.md5</code> etc.</li> <li>Make a test download.</li> - <li>Start a vote for the release on - <code>general@xmlgraphics.a.o</code>. The message should point - to the release files and list the MD5 sums (<code>cat - *.md5</code>). The vote is open for 72hrs.</li> - <li>When the release is accepted, copy the release files, - their md5 sum files and the signature files to - /www/www.apache.org/dist/xmlgraphics/fop/ in the - subdirectories <code>source</code> and - <code>binaries</code>. Create links to all files in the - <code>fop</code> directory. Remove the links to the files of - the previous version.</li> - <li>Update HEADER.html and README.html in people.apache.org:/www/www.apache.org/dist/xmlgraphics/fop/</li> + <li>Start a vote for the release on <code>general@xmlgraphics.apache.org</code>. The message should point + to the release files and list the MD5 sums (<code>cat *.md5</code>). The vote should remain open for 72hrs.</li> + <li>When the release is accepted, copy the release files, their md5 sum files and the signature files to + <code>/www/www.apache.org/dist/xmlgraphics/fop/</code> in the subdirectories <code>source</code> and + <code>binaries</code>. Create links to all files in the <code>fop</code> directory. Remove the links to the files of + the previous version.</li> + <li>Update <code>HEADER.html</code> and <code>README.html</code> in <code>people.apache.org:/www/www.apache.org/dist/xmlgraphics/fop/</code>.</li> <li>Wait 24 hours (for the mirrors to catch up).</li> - <li>Merge the changes of the subversion release branch back - into trunk (not the version number in the build file) and - delete the branch.</li> + <li>Merge the changes of the subversion release branch back into trunk (not the version number in the build file) and + delete the branch.</li> <li>Deploy the updated documentation to the FOP website.</li> - <li>Post announcements on fop-dev and fop-user and other related mailing lists.</li> - <li>Ask a Bugzilla admin (Christian Geisert) to add a bugzilla - entry for the new release id, or create an issue at - <code>https://issues.apache.org/jira/browse/INFRA</code>.</li> + <li>Post announcements on <code>fop-dev</code> and <code>fop-user</code> and other related mailing lists.</li> + <li>Ask an FOP bugzilla admin to add a bugzilla entry for the new release id, or create an issue at <code>https://issues.apache.org/jira/browse/INFRA</code>.</li> + <li>Deploy the maven bundle.</li> </ul> </section> <section id="other-checklists"> @@ -129,6 +101,7 @@ The purpose of documenting it here is to facilitate consistency, ensure that the <li><jump href="http://svn.apache.org/repos/asf/ant/core/trunk/ReleaseInstructions">Apache Ant</jump></li> <li><jump href="http://jakarta.apache.org/cactus/participating/release_checklist.html">Apache Cactus</jump></li> </ul> + <p/> <p>Following are links with information about mirroring:</p> <ul> <li><jump href="http://www.apache.org/dev/mirrors.html">Apache Mirroring</jump></li> @@ -137,7 +110,7 @@ The purpose of documenting it here is to facilitate consistency, ensure that the </section> <section id="announcements"> <title>Announcing the release</title> - <p>Here's a collected list of places where to announce new FOP releases:</p> + <p>Here's a suggested list of places where to announce new FOP releases:</p> <ul> <li>fop-dev@xmlgraphics.apache.org</li> <li>fop-users@xmlgraphics.apache.org</li> @@ -145,15 +118,14 @@ The purpose of documenting it here is to facilitate consistency, ensure that the <li>general@xml.apache.org</li> <li>announce@apache.org (from your apache.org address)</li> <li>xsl-list@lists.mulberrytech.com (subscriber-only)</li> - <li>XSL-FO@yahoogroups.com (subscriber-only)</li> + <li>xsl-fo@yahoogroups.com (subscriber-only)</li> <li>www-xsl-fo@w3.org</li> <li>docbook-apps@lists.oasis-open.org (subscriber-only)</li> <li>dita-users@yahoogroups.com (subscriber-only) (http://dita-ot.sourceforge.net/)</li> <li>http://xslfo-zone.com/news/index.jsp</li> <li>http://www.w3.org/Style/XSL/</li> <li>http://freshmeat.net/projects/fop/</li> - <li>any others?</li> </ul> </section> </body> -</document>
\ No newline at end of file +</document> diff --git a/src/documentation/content/xdocs/site.xml b/src/documentation/content/xdocs/site.xml index d7ca6f5e1..322f5e52c 100644 --- a/src/documentation/content/xdocs/site.xml +++ b/src/documentation/content/xdocs/site.xml @@ -151,19 +151,26 @@ <ant label="Ant Task" href="anttask.html"/> </using> + <!-- + NOTA BENE NOTA BENE NOTA BENE + The following features should be maintained in alphabetic order by + (displayed) label value. + NOTA BENE NOTA BENE NOTA BENE + --> <features label="Features"> - <output label="Output Targets" href="output.html"/> - <if label="Intermediate Format" href="intermediate.html"/> - <pdfencryption label="PDF Encryption" href="pdfencryption.html"/> - <pdfa label="PDF/A" href="pdfa.html"/> - <pdfx label="PDF/X" href="pdfx.html"/> - <graphics label="Graphics" href="graphics.html"/> + <accessibility label="Accessibility" href="accessibility.html"/> + <complexscripts label="Complex Scripts" href="complexscripts.html"/> + <events label="Events" href="events.html"/> + <extensions label="Extensions" href="extensions.html"/> <fonts label="Fonts" href="fonts.html"/> + <graphics label="Graphics" href="graphics.html"/> <hyphenation label="Hyphenation" href="hyphenation.html"/> - <extensions label="Extensions" href="extensions.html"/> - <events label="Events" href="events.html"/> + <if label="Intermediate Format" href="intermediate.html"/> <metadata label="Metadata" href="metadata.html"/> - <accessibility label="Accessibility" href="accessibility.html"/> + <output label="Output Targets" href="output.html"/> + <pdfa label="PDF/A" href="pdfa.html"/> + <pdfx label="PDF/X" href="pdfx.html"/> + <pdfencryption label="PDF Encryption" href="pdfencryption.html"/> </features> </trunk> diff --git a/src/documentation/content/xdocs/trunk/complexscripts.xml b/src/documentation/content/xdocs/trunk/complexscripts.xml new file mode 100644 index 000000000..084fa100a --- /dev/null +++ b/src/documentation/content/xdocs/trunk/complexscripts.xml @@ -0,0 +1,628 @@ +<?xml version="1.0" encoding="UTF-8" standalone="no"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<!-- $Id$ --> +<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V2.0//EN" "document-v20.dtd"> +<document> + <header> + <title>Apache™ FOP: Complex Scripts</title> + </header> + <body id="complex_scripts"> + <section id="overview"> + <title>Overview</title> + <p> + This page describes the + <a href="http://en.wikipedia.org/wiki/Complex_scripts">complex scripts</a> + features of Apache™ FOP, which include: + </p> + <ul> + <li>Support for languages written with right-to-left scripts, such as Arabic and Hebrew scripts.</li> + <li>Support for languages written with South Asian and Southeast Asian scripts, such as Devanagari, + Khmer, Tamil, Thai, and others.</li> + <li>Support for advanced substitution, reordering, and positioning of glyphs according to language + and script sensitive rules.</li> + <li>Support for advanced number to string formatting.</li> + </ul> + </section> + <section> + <title>Disabling complex scripts</title> + <p>Complex script features are enabled by default. If some application of FOP does not + require this support, then it can be disabled in three ways:</p> + <ol> + <li> + <strong>Command line:</strong> The command line option <code>-nocs</code> turns off complex script + features: <code>fop -nocs -fo mydocument.fo -pdf mydocument.pdf</code> + </li> + <li> + <strong>Embedding:</strong> <code>userAgent.setComplexScriptFeaturesEnabled(false);</code> + </li> + <li> + <strong>Optional setting in fop.xconf file:</strong> + <pre> +<fop version="1.0"> + <complex-scripts disabled="true"/> + ... +</fop> + </pre> + </li> + </ol> + <p> + When complex scripts features are enabled, additional information related to bidirectional + level resolution, the association between characters and glyphs, and glyph position adjustments + are added to the internal, parsed representation of the XSL-FO tree and its corresponding + formatted area tree. This additional information will somewhat increase the memory requirements for + processing documents that use these features. + </p> + <note>A document author need not make explicit use of any complex scripts feature in order + for this additional information to be created. For example, if the author makes use of a font + that contains OpenType GSUB and/or GPOS tables, then those tables will be automatically used + unless complex scripts features are disabled.</note> + </section> + <section id="source"> + <title>Changes to your XSL-FO input files</title> + <p> + In most circumstances, XSL-FO content does not need to change in order to make use of + complex scripts features; however, in certain contexts, fully automatic processing is not + sufficient. In these cases, an author may make use of the following XSL-FO constructs: + </p> + <ul> + <li>The <a href="http://www.w3.org/TR/2006/REC-xsl11-20061205/#script"><code>script</code></a> property.</li> + <li>The <a href="http://www.w3.org/TR/2006/REC-xsl11-20061205/#language"><code>language</code></a> property.</li> + <li>The <a href="http://www.w3.org/TR/2006/REC-xsl11-20061205/#writing-mode"><code>writing-mode</code></a> property.</li> + <li>The number to string conversion properties: + <a href="http://www.w3.org/TR/2006/REC-xsl11-20061205/#format"><code>format</code></a>, + <a href="http://www.w3.org/TR/2006/REC-xsl11-20061205/#grouping-separator"><code>grouping-separator</code></a>, + <a href="http://www.w3.org/TR/2006/REC-xsl11-20061205/#grouping-size"><code>grouping-size</code></a>, + <a href="http://www.w3.org/TR/2006/REC-xsl11-20061205/#letter-value"><code>letter-value</code></a>, + and <code>fox:number-conversion-features</code>.</li> + <li>The <a href="http://www.w3.org/TR/2006/REC-xsl11-20061205/#fo_bidi-override"><code>fo:bidi-override</code></a> element.</li> + <li>Explicit bidirectional control characters: U+200E LRM, U+200F RLM, U+202A LRE, + U+202B RLE, U+202C PDF, U+202D LRO, U+202E RLO.</li> + <li>Explicit join control characters: U+200C ZWNJ and U+200D ZWJ.</li> + </ul> + </section> + <section id="details"> + <title>Authoring Details</title> + <p>The complex scripts related effects of the above enumerated XSL-FO constructs are more + fully described in the following sub-sections.</p> + <section id="script_property"> + <title>Script Property</title> + <p>In order to apply font specific complex script features, it is necessary to know + the script that applies to the text undergoing layout processing. This script is determined + using the following algorithm: + </p> + <ol> + <li>If the FO element that governs the text specifies a + <a href="http://www.w3.org/TR/2006/REC-xsl11-20061205/#script"><code>script</code></a> + property and its value is not the empty string or <code>"auto"</code>, then that script is used.</li> + <li>Otherwise, the dominant script of the text is determined automatically by finding the + script whose constituent characters appear most frequently in the text.</li> + </ol> + <p>In case the automatic algorithm does not produce the desired results, an author may + explicitly specify a <code>script</code> property with the desired script. If specified, + it must be one of the four-letter script code specified in + <a href="http://unicode.org/iso15924/iso15924-codes.html">ISO 15924 Code List</a> or + in the <a href="#extended_script_codes">Extended Script Codes</a> table. Comparison + of script codes is performed in a case-insensitive manner, so it does not matter what case + is used when specifying these codes in an XSL-FO document.</p> + <section id="standard_script_codes"> + <title>Standard Script Codes</title> + <p>The following table enumerates the standard ISO 15924 4-letter codes recognized by FOP.</p> + <table class="ForrestTable tw30"> + <tr> + <th style="text-align:center">Code</th> + <th style="text-align:left">Script</th> + </tr> + <tr> + <td style="text-align:center"><code>arab</code></td> + <td>Arabic</td> + </tr> + <tr> + <td style="text-align:center"><code>beng</code></td> + <td>Bengali</td> + </tr> + <tr> + <td style="text-align:center"><code>bopo</code></td> + <td>Bopomofo</td> + </tr> + <tr> + <td style="text-align:center"><code>cyrl</code></td> + <td>Cyrillic</td> + </tr> + <tr> + <td style="text-align:center"><code>deva</code></td> + <td>Devanagari</td> + </tr> + <tr> + <td style="text-align:center"><code>ethi</code></td> + <td>Ethiopic</td> + </tr> + <tr> + <td style="text-align:center"><code>geor</code></td> + <td>Georgian</td> + </tr> + <tr> + <td style="text-align:center"><code>grek</code></td> + <td>Greek</td> + </tr> + <tr> + <td style="text-align:center"><code>gujr</code></td> + <td>Gujarati</td> + </tr> + <tr> + <td style="text-align:center"><code>guru</code></td> + <td>Gurmukhi</td> + </tr> + <tr> + <td style="text-align:center"><code>hang</code></td> + <td>Hangul</td> + </tr> + <tr> + <td style="text-align:center"><code>hani</code></td> + <td>Han</td> + </tr> + <tr> + <td style="text-align:center"><code>hebr</code></td> + <td>Hebrew</td> + </tr> + <tr> + <td style="text-align:center"><code>hira</code></td> + <td>Hiragana</td> + </tr> + <tr> + <td style="text-align:center"><code>kana</code></td> + <td>Katakana</td> + </tr> + <tr> + <td style="text-align:center"><code>knda</code></td> + <td>Kannada</td> + </tr> + <tr> + <td style="text-align:center"><code>khmr</code></td> + <td>Khmer</td> + </tr> + <tr> + <td style="text-align:center"><code>laoo</code></td> + <td>Lao</td> + </tr> + <tr> + <td style="text-align:center"><code>latn</code></td> + <td>Latin</td> + </tr> + <tr> + <td style="text-align:center"><code>mlym</code></td> + <td>Malayalam</td> + </tr> + <tr> + <td style="text-align:center"><code>mymr</code></td> + <td>Burmese</td> + </tr> + <tr> + <td style="text-align:center"><code>mong</code></td> + <td>Mongolian</td> + </tr> + <tr> + <td style="text-align:center"><code>orya</code></td> + <td>Oriya</td> + </tr> + <tr> + <td style="text-align:center"><code>sinh</code></td> + <td>Sinhalese</td> + </tr> + <tr> + <td style="text-align:center"><code>taml</code></td> + <td>Tamil</td> + </tr> + <tr> + <td style="text-align:center"><code>telu</code></td> + <td>Telugu</td> + </tr> + <tr> + <td style="text-align:center"><code>thai</code></td> + <td>Thai</td> + </tr> + <tr> + <td style="text-align:center"><code>tibt</code></td> + <td>Tibetan</td> + </tr> + <tr> + <td style="text-align:center"><code>zmth</code></td> + <td>Math</td> + </tr> + <tr> + <td style="text-align:center"><code>zsym</code></td> + <td>Symbol</td> + </tr> + <tr> + <td style="text-align:center"><code>zyyy</code></td> + <td>Undetermined</td> + </tr> + <tr> + <td style="text-align:center"><code>zzzz</code></td> + <td>Uncoded</td> + </tr> + </table> + </section> + <section id="extended_script_codes"> + <title>Extended Script Codes</title> + <p>The following table enumerates a number of non-standard extended script codes recognized by FOP.</p> + <table class="ForrestTable tw70"> + <colgrp> + <col style="width:10%"/> + <col style="width:20%"/> + <col style="width:80%"/> + </colgrp> + <tr> + <th>Code</th> + <th>Script</th> + <th>Comments</th> + </tr> + <tr> + <td style="text-align:center"><code>bng2</code></td> + <td>Bengali</td> + <td>OpenType Indic Version 2 (May 2008 and following) behavior.</td> + </tr> + <tr> + <td style="text-align:center"><code>dev2</code></td> + <td>Devanagari</td> + <td>OpenType Indic Version 2 (May 2008 and following) behavior.</td> + </tr> + <tr> + <td style="text-align:center"><code>gur2</code></td> + <td>Gurmukhi</td> + <td>OpenType Indic Version 2 (May 2008 and following) behavior.</td> + </tr> + <tr> + <td style="text-align:center"><code>gjr2</code></td> + <td>Gujarati</td> + <td>OpenType Indic Version 2 (May 2008 and following) behavior.</td> + </tr> + <tr> + <td style="text-align:center"><code>knd2</code></td> + <td>Kannada</td> + <td>OpenType Indic Version 2 (May 2008 and following) behavior.</td> + </tr> + <tr> + <td style="text-align:center"><code>mlm2</code></td> + <td>Malayalam</td> + <td>OpenType Indic Version 2 (May 2008 and following) behavior.</td> + </tr> + <tr> + <td style="text-align:center"><code>ory2</code></td> + <td>Oriya</td> + <td>OpenType Indic Version 2 (May 2008 and following) behavior.</td> + </tr> + <tr> + <td style="text-align:center"><code>tml2</code></td> + <td>Tamil</td> + <td>OpenType Indic Version 2 (May 2008 and following) behavior.</td> + </tr> + <tr> + <td style="text-align:center"><code>tel2</code></td> + <td>Telugu</td> + <td>OpenType Indic Version 2 (May 2008 and following) behavior.</td> + </tr> + </table> + <warning> + Explicit use of one of the above extended script codes is not portable, + and should be limited to use with FOP only. + </warning> + <note> + When performing automatic script determination, FOP selects the OpenType Indic + Version 2 script codes by default. If the author requires Version 1 behavior, then + an explicit, non-extension script code should be specified in a governing <code>script</code> + property. + </note> + </section> + </section> + <section id="language_property"> + <title>Language Property</title> + <p>Certain fonts that support complex script features can make use of language information in order for + language specific processing rules to be applied. For example, a font designed for the Arabic script may support + typographic variations according to whether the written language is Arabic, Farsi (Persian), Sindhi, Urdu, or + another language written with the Arabic script. In order to apply these language specific features, the author + may explicitly mark the text with a <a href="http://www.w3.org/TR/2006/REC-xsl11-20061205/#language"><code>language</code></a> + property.</p> + <p>When specifying the <code>language</code> property, the value of the property must be either an + <a href="http://en.wikipedia.org/wiki/List_of_ISO_639-2_codes">ISO639-2 3-letter code</a> or an + <a href="http://en.wikipedia.org/wiki/List_of_ISO_639-1_codes">ISO639-1 2-letter code</a>. Comparison of language + codes is performed in a case-insensitive manner, so it does not matter what case is used when specifying these + codes in an XSL-FO document.</p> + </section> + <section id="writing_mode_property"> + <title>Writing Mode Property</title> + </section> + <section id="number_conversion_properties"> + <title>Number Conversion Properties</title> + </section> + <section id="bidi_override_element"> + <title>Bidi Override Element</title> + </section> + <section id="bidi_controls"> + <title>Bidi Control Characters</title> + </section> + <section id="join_controls"> + <title>Join Control Characters</title> + </section> + </section> + <section id="supported_scripts"> + <title>Supported Scripts</title> + <p>Support for specific complex scripts is enumerated in the following table. Support + for those marked as not being supported is expected to be added in future revisions.</p> + <table> + <colgrp> + <col style="width: 15%"/> + <col style="width: 10%"/> + <col style="width: 10%"/> + <col style="width: 65%"/> + </colgrp> + <tr> + <th style="text-align:left">Script</th> + <th>Support</th> + <th>Tested</th> + <th style="text-align:left">Comments</th> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Arabic_alphabet">Arabic</a></td> + <td class="yes">full</td> + <td class="yes">full</td> + <td></td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Bengali_alphabet">Bengali</a></td> + <td class="no">none</td> + <td class="no">none</td> + <td></td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Burmese_alphabet">Burmese</a></td> + <td class="no">none</td> + <td class="no">none</td> + <td></td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Devanagari_alphabet">Devanagari</a></td> + <td class="partial">partial</td> + <td class="partial">partial</td> + <td style="text-align:left">join controls (ZWJ, ZWNJ) not yet supported</td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Khmer_alphabet">Khmer</a></td> + <td class="no">none</td> + <td class="no">none</td> + <td></td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Gujarati_alphabet">Gujarati</a></td> + <td class="partial">partial</td> + <td class="no">none</td> + <td style="text-align:left">pre-alpha</td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Gurmukhī_alphabet">Gurmukhi</a></td> + <td class="partial">partial</td> + <td class="no">none</td> + <td style="text-align:left">pre-alpha</td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Hebrew_alphabet">Hebrew</a></td> + <td class="yes">full</td> + <td class="partial">partial</td> + <td></td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Kannada_alphabet">Kannada</a></td> + <td class="no">none</td> + <td class="no">none</td> + <td></td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Lao_alphabet">Lao</a></td> + <td class="no">none</td> + <td class="no">none</td> + <td></td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Malayalam_alphabet">Malayalam</a></td> + <td class="no">none</td> + <td class="no">none</td> + <td></td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Mongolian_script">Mongolian</a></td> + <td class="no">none</td> + <td class="no">none</td> + <td></td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Oriya_script">Oriya</a></td> + <td class="no">none</td> + <td class="no">none</td> + <td></td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Tamil_alphabet">Tamil</a></td> + <td class="no">none</td> + <td class="no">none</td> + <td></td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Telugu_alphabet">Telugu</a></td> + <td class="no">none</td> + <td class="no">none</td> + <td></td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Tibetan_alphabet">Tibetan</a></td> + <td class="no">none</td> + <td class="no">none</td> + <td></td> + </tr> + <tr> + <td><a href="http://en.wikipedia.org/wiki/Thai_alphabet">Thai</a></td> + <td class="no">none</td> + <td class="no">none</td> + <td></td> + </tr> + </table> + </section> + <section id="supported_fonts"> + <title>Supported Fonts</title> + <p>Support for specific fonts is enumerated in the following sub-sections. If a given + font is not listed, then it has not been tested with these complex scripts features.</p> + <section id="fonts_arabic"> + <title>Arabic Fonts</title> + <table> + <colgrp> + <col style="width: 15%"/> + <col style="width: 10%"/> + <col style="width: 10%"/> + <col style="width: 65%"/> + </colgrp> + <tr> + <th style="text-align:left">Font</th> + <th style="text-align:left">Version</th> + <th style="text-align:center">Glyphs</th> + <th style="text-align:left">Comments</th> + </tr> + <tr> + <td><a href="http://www.microsoft.com/typography/fonts/family.aspx?FID=24">Arial Unicode MS</a></td> + <td class="yes" style="text-align:left"><a href="http://www.microsoft.com/typography/fonts/font.aspx?FMID=1081">1.01</a></td> + <td style="text-align:center">50377</td> + <td>limited GPOS support</td> + </tr> + <tr> + <td><a href="http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=ArabicFonts">Lateef</a></td> + <td class="yes" style="text-align:left">1.0</td> + <td style="text-align:center">1147</td> + <td>language features for Kurdish (KUR), Sindhi (SND), Urdu (URD)</td> + </tr> + <tr> + <td><a href="http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=ArabicFonts">Scheherazade</a></td> + <td class="yes" style="text-align:left">1.0</td> + <td style="text-align:center">1197</td> + <td>language features for Kurdish (KUR), Sindhi (SND), Urdu (URD)</td> + </tr> + <tr> + <td><a href="http://www.microsoft.com/typography/fonts/family.aspx?FID=261">Simplified Arabic</a></td> + <td class="no" style="text-align:left"><a href="http://www.microsoft.com/typography/fonts/font.aspx?FMID=867">1.01</a></td> + <td/> + <td>contains invalid, out of order coverage table entries</td> + </tr> + <tr> + <td><a href="http://www.microsoft.com/typography/fonts/font.aspx?FID=261">Simplified Arabic</a></td> + <td class="yes" style="text-align:left"><a href="http://www.microsoft.com/typography/fonts/font.aspx?FMID=1645">5.00</a></td> + <td style="text-align:center">414</td> + <td>lacks GPOS support</td> + </tr> + <tr> + <td><a href="http://www.microsoft.com/typography/fonts/font.aspx?FID=261">Simplified Arabic</a></td> + <td class="yes" style="text-align:left">5.92</td> + <td style="text-align:center">473</td> + <td>includes GPOS for advanced position adjustment</td> + </tr> + <tr> + <td><a href="http://www.microsoft.com/typography/fonts/family.aspx?FID=264">Traditional Arabic</a></td> + <td class="yes" style="text-align:left"><a href="http://www.microsoft.com/typography/fonts/family.aspx?FMID=877">1.01</a></td> + <td style="text-align:center">530</td> + <td>lacks GPOS support</td> + </tr> + <tr> + <td><a href="http://www.microsoft.com/typography/fonts/font.aspx?FID=264">Traditional Arabic</a></td> + <td class="yes" style="text-align:left"><a href="http://www.microsoft.com/typography/fonts/font.aspx?FMID=1658">5.00</a></td> + <td style="text-align:center">530</td> + <td>lacks GPOS support</td> + </tr> + <tr> + <td><a href="http://www.microsoft.com/typography/fonts/font.aspx?FID=264">Traditional Arabic</a></td> + <td class="yes" style="text-align:left">5.92</td> + <td style="text-align:center">589</td> + <td>includes GPOS for advanced position adjustment</td> + </tr> + </table> + </section> + <section id="devanagari_fonts"> + <title>Devanagari Fonts</title> + <table> + <colgrp> + <col style="width: 15%"/> + <col style="width: 10%"/> + <col style="width: 10%"/> + <col style="width: 65%"/> + </colgrp> + <tr> + <th style="text-align:left">Font</th> + <th style="text-align:left">Version</th> + <th style="text-align:center">Glyphs</th> + <th style="text-align:left">Comments</th> + </tr> + <tr> + <td><a href="http://www.microsoft.com/typography/fonts/family.aspx?FID=370">Aparajita</a></td> + <td class="yes" style="text-align:left"><a href="http://www.microsoft.com/typography/fonts/font.aspx?FMID=1700">1.00</a></td> + <td style="text-align:center">706</td> + <td/> + </tr> + <tr> + <td><a href="http://www.microsoft.com/typography/fonts/family.aspx?FID=374">Kokila</a></td> + <td class="yes" style="text-align:left"><a href="http://www.microsoft.com/typography/fonts/font.aspx?FMID=1749">1.00</a></td> + <td style="text-align:center">706</td> + <td/> + </tr> + <tr> + <td><a href="http://www.microsoft.com/typography/fonts/family.aspx?FID=243">Mangal</a></td> + <td class="yes" style="text-align:left"><a href="http://www.microsoft.com/typography/fonts/font.aspx?FMID=1759">5.01</a></td> + <td style="text-align:center">885</td> + <td>designed for use in user interfaces</td> + </tr> + <tr> + <td><a href="http://www.microsoft.com/typography/fonts/family.aspx?FID=384">Utsaah</a></td> + <td class="yes" style="text-align:left"><a href="http://www.microsoft.com/typography/fonts/font.aspx?FMID=1811">1.00</a></td> + <td style="text-align:center">706</td> + <td/> + </tr> + </table> + </section> + </section> + <section id="limitations"> + <title>Other Limitations</title> + <p> + Complex scripts support in Apache FOP is relatively new, so there are certain + limitations. Please help us identify and close any gaps. + </p> + <ul> + <li>Only the PDF output format fully supports complex scripts features at the present time.</li> + <li>Shaping context does not extend across an element boundary. This limitation prevents the use of + <code>fo:character</code>, <code>fo:inline</code> or <code>fo:wrapper</code> in order to colorize + individual Arabic letters without affecting shaping behavior across the element boundary.</li> + </ul> + </section> + <section id="links"> + <title>Related Links</title> + <p> + In addition to the XSL-FO specification, a number of external resources provide + guidance about authoring documents that employ complex scripts and the features + described above: + </p> + <ul> + <li><a href="http://www.unicode.org/">The Unicode Standard</a></li> + <li><a href="http://www.w3.org/TR/2006/REC-xsl11-20061205/#fo_bidi-override">Unicode Bidirectional Algorithm</a></li> + <li><a href="http://www.microsoft.com/typography/otspec/ttochap1.htm">OpenType Advanced Typographic Extensions</a></li> + <li><a href="http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&item_id=CmplxRndExamples">Examples of Complex Rendering</a></li> + </ul> + </section> + </body> +</document> diff --git a/src/documentation/content/xdocs/trunk/output.xml b/src/documentation/content/xdocs/trunk/output.xml index 9b6a3edc9..7d6147be9 100644 --- a/src/documentation/content/xdocs/trunk/output.xml +++ b/src/documentation/content/xdocs/trunk/output.xml @@ -797,6 +797,17 @@ Note that the value of the encoding attribute in the example is the double-byte <source><![CDATA[ <images mode="b+w" bits-per-pixel="1" dithering-quality="maximum"/>]]></source> <p> + When the boolean attribute pseg (default false) is set to true, non-inline FS11 and FS45 IOCA images are wrapped in page segment. + This option is provided to support printers/print servers that require this MO:DCA structure. + </p> + <source><![CDATA[ + <images mode="b+w" bits-per-pixel="8" pseg="true"/>]]></source> + <p> + Setting the boolean attribute fs45 to true (default false) will force all images to FS45. + </p> + <source><![CDATA[ + <images mode="b+w" bits-per-pixel="8" fs45="true"/>]]></source> + <p> By default, JPEG images are rasterized to a bitmap and the bitmap is included in the AFP doc. However it is possible to encode in a lossless way to maintain maximum quality. But due to lack of support for compression schemes like LZW (patent concerns), bitmap data is currently @@ -1308,6 +1319,7 @@ Note that the value of the encoding attribute in the example is the double-byte a quick-and-dirty view of the document text. The renderer is very limited, so do not be surprised if it gives unsatisfactory results. </p> + <!-- OBSOLETE OBSOLETE OBSOLETE <p> The Text renderer works with a fixed size page buffer. The size of this buffer is controlled with the textCPI and textLPI public variables. @@ -1318,6 +1330,7 @@ Note that the value of the encoding attribute in the example is the double-byte Graphic elements (lines, borders, etc) are assigned a lower priority than text, so text will overwrite any graphic element representations. </p> + --> <p> Because FOP lays the text onto a grid during layout, there are frequently extra or missing spaces between characters and lines, which is generally @@ -1326,8 +1339,8 @@ Note that the value of the encoding attribute in the example is the double-byte </p> <ul> <li>font-family="Courier"</li> - <li>font-size="7.3pt"</li> - <li>line-height="10.5pt"</li> + <li>font-size="10pt"</li> + <li>line-height="10pt"</li> </ul> </section> <section id="sandbox"> @@ -1377,4 +1390,4 @@ Note that the value of the encoding attribute in the example is the double-byte </section> </body> -</document>
\ No newline at end of file +</document> diff --git a/src/documentation/content/xdocs/trunk/running.xml b/src/documentation/content/xdocs/trunk/running.xml index 6bfa6bb3f..5e30bb25e 100644 --- a/src/documentation/content/xdocs/trunk/running.xml +++ b/src/documentation/content/xdocs/trunk/running.xml @@ -117,6 +117,7 @@ Fop [options] [-fo|-xml] infile [-xsl file] [-awt|-pdf|-mif|-rtf|-tiff|-png|-pcl -q quiet mode -c cfg.xml use additional configuration file cfg.xml -l lang the language to use for user information + -nocs disable complex script features -r relaxed/less strict validation (where available) -dpi xxx target resolution in dots per inch (dpi) where xxx is a number -s for area tree XML, down to block areas only @@ -366,4 +367,4 @@ Fop [options] [-fo|-xml] infile [-xsl file] [-awt|-pdf|-mif|-rtf|-tiff|-png|-pcl <p>If you have problems running FOP, please see the <a href="../gethelp.html">"How to get Help" page</a>.</p> </section> </body> -</document>
\ No newline at end of file +</document> diff --git a/src/documentation/skinconf.xml b/src/documentation/skinconf.xml index 49348eb27..c98041ed9 100644 --- a/src/documentation/skinconf.xml +++ b/src/documentation/skinconf.xml @@ -148,6 +148,10 @@ See main/fresh-site/src/documentation/skinconf.xml for details. <!-- The normal content should be at natural size --> #content { font-size: 100%; } + .tw30 { width: 30% !important; } + .tw70 { width: 70% !important; } + .tw80 { width: 80% !important; } + p.quote { margin-left: 2em; padding: .5em; |