diff options
author | Karl Berry <karl@freefriends.org> | 2017-03-02 22:04:43 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2017-03-02 22:04:43 +0000 |
commit | ed9d19652f40ee17941ba6832f511e3726a87747 (patch) | |
tree | 1363a8c132b7883bb1b8e0f87cb9ba89751d7bfc | |
parent | e4e5bf0f152ea04be229a2747f8b3c2edc4407e7 (diff) |
novel (2mar17)
git-svn-id: svn://tug.org/texlive/trunk@43384 c570f23f-e606-0410-a88d-b1316a301751
121 files changed, 11945 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/lualatex/novel/NovelDeco-glyphs.pdf b/Master/texmf-dist/doc/lualatex/novel/NovelDeco-glyphs.pdf new file mode 100644 index 00000000000..ea55421279f --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/NovelDeco-glyphs.pdf @@ -0,0 +1,786 @@ +%PDF-1.3 +%ÐÔÅØ +4 0 obj +<</Type /Metadata /Subtype /XML +/Length 6676 >> +stream +<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> + <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:08:04 "> + <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> + <rdf:Description rdf:about="" + xmlns:xmp="http://ns.adobe.com/xap/1.0/"> + <xmp:ModifyDate>2017-02-21T09:26:24-08:00</xmp:ModifyDate> + <xmp:CreateDate>2017-02-21T09:26:24-08:00</xmp:CreateDate> + <xmp:CreatorTool>LaTeX with novel and microtype</xmp:CreatorTool> + <xmp:MetadataDate>2017-02-21T09:26:24-08:00</xmp:MetadataDate> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:dc="http://purl.org/dc/elements/1.1/"> + <dc:format>application/pdf</dc:format> + <dc:title> + <rdf:Alt> + <rdf:li xml:lang="x-default">NovelDeco.otf v. 1.2 \protect \unhbox \voidb@x \penalty \@M \ {} Glyphs</rdf:li> + </rdf:Alt> + </dc:title> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"> + <xmpMM:DocumentID>uuid:A12D98E081B6A0EC2CBA2D468474F922</xmpMM:DocumentID> + <xmpMM:InstanceID>uuid:3C96938C730019385BC003625BBE463A</xmpMM:InstanceID> + <xmpMM:RenditionClass>default</xmpMM:RenditionClass> + <xmpMM:VersionID>1</xmpMM:VersionID> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:pdf="http://ns.adobe.com/pdf/1.3/"> + <pdf:Producer>LuaTeX with novel-pdfx and hyperref</pdf:Producer> + <pdf:Trapped>False</pdf:Trapped> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:pdfx="http://ns.adobe.com/pdfx/1.3/"> + <pdfx:GTS_PDFXVersion>PDF/X-1a:2001</pdfx:GTS_PDFXVersion> + <pdfx:GTS_PDFXConformance>PDF/X-1a:2001</pdfx:GTS_PDFXConformance> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:pdfxid="http://www.npes.org/pdfx/ns/id/"> + <pdfxid:GTS_PDFXVersion>PDF/X-1a:2001</pdfxid:GTS_PDFXVersion> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:pdfaExtension="http://www.aiim.org/pdfa/ns/extension/" + xmlns:pdfaSchema="http://www.aiim.org/pdfa/ns/schema#" + xmlns:pdfaProperty="http://www.aiim.org/pdfa/ns/property#"> + <pdfaExtension:schemas> + <rdf:Bag> + <rdf:li rdf:parseType="Resource"> + <pdfaSchema:namespaceURI>http://ns.adobe.com/pdf/1.3/</pdfaSchema:namespaceURI> + <pdfaSchema:prefix>pdf</pdfaSchema:prefix> + <pdfaSchema:schema>Adobe PDF Schema</pdfaSchema:schema> + <pdfaSchema:property> + <rdf:Seq> + <rdf:li rdf:parseType="Resource"> + <pdfaProperty:category>internal</pdfaProperty:category> + <pdfaProperty:description>A name object indicating whether the document has been modified to include trapping information</pdfaProperty:description> + <pdfaProperty:name>Trapped</pdfaProperty:name> + <pdfaProperty:valueType>Text</pdfaProperty:valueType> + </rdf:li> + </rdf:Seq> + </pdfaSchema:property> + </rdf:li> + <rdf:li rdf:parseType="Resource"> + <pdfaSchema:namespaceURI>http://ns.adobe.com/pdfx/1.3/</pdfaSchema:namespaceURI> + <pdfaSchema:prefix>pdfx</pdfaSchema:prefix> + <pdfaSchema:schema>PDF/X ID Schema</pdfaSchema:schema> + <pdfaSchema:property> + <rdf:Seq> + <rdf:li rdf:parseType="Resource"> + <pdfaProperty:category>internal</pdfaProperty:category> + <pdfaProperty:description>ID of PDF/X standard</pdfaProperty:description> + <pdfaProperty:name>GTS_PDFXVersion</pdfaProperty:name> + <pdfaProperty:valueType>Text</pdfaProperty:valueType> + </rdf:li> + <rdf:li rdf:parseType="Resource"> + <pdfaProperty:category>internal</pdfaProperty:category> + <pdfaProperty:description>Conformance level of PDF/X standard</pdfaProperty:description> + <pdfaProperty:name>GTS_PDFXConformance</pdfaProperty:name> + <pdfaProperty:valueType>Text</pdfaProperty:valueType> + </rdf:li> + </rdf:Seq> + </pdfaSchema:property> + </rdf:li> + <rdf:li rdf:parseType="Resource"> + <pdfaSchema:namespaceURI>http://ns.adobe.com/xap/1.0/mm/</pdfaSchema:namespaceURI> + <pdfaSchema:prefix>xmpMM</pdfaSchema:prefix> + <pdfaSchema:schema>XMP Media Management Schema</pdfaSchema:schema> + <pdfaSchema:property> + <rdf:Seq> + <rdf:li rdf:parseType="Resource"> + <pdfaProperty:category>internal</pdfaProperty:category> + <pdfaProperty:description>UUID based identifier for specific incarnation of a document</pdfaProperty:description> + <pdfaProperty:name>InstanceID</pdfaProperty:name> + <pdfaProperty:valueType>URI</pdfaProperty:valueType> + </rdf:li> + </rdf:Seq> + </pdfaSchema:property> + </rdf:li> + <rdf:li rdf:parseType="Resource"> + <pdfaSchema:namespaceURI>http://www.npes.org/pdfx/ns/id/</pdfaSchema:namespaceURI> + <pdfaSchema:prefix>pdfxid</pdfaSchema:prefix> + <pdfaSchema:schema>PDF/X ID Schema</pdfaSchema:schema> + <pdfaSchema:property> + <rdf:Seq> + <rdf:li rdf:parseType="Resource"> + <pdfaProperty:category>internal</pdfaProperty:category> + <pdfaProperty:description>ID of PDF/X standard</pdfaProperty:description> + <pdfaProperty:name>GTS_PDFXVersion</pdfaProperty:name> + <pdfaProperty:valueType>Text</pdfaProperty:valueType> + </rdf:li> + </rdf:Seq> + </pdfaSchema:property> + </rdf:li> + </rdf:Bag> + </pdfaExtension:schemas> + </rdf:Description> + </rdf:RDF> + </x:xmpmeta> + <?xpacket end="w"?> +endstream +endobj +7 0 obj +<</Length 12107 >> +stream +BT +/F53 10.44878 Tf 1 0 0 1 121.039 565.643 Tm [<002F>-50<09BE>-40<09C5>-50<09B5>-50<09BB>-50<0025>-50<09B5>-50<09B3>-50<09BE>-50<000F>-50<09BE>-40<09C3>-50<09B6>-371<09C5>-50<000F>-454<0012>-50<000F>-50<0013>-1223<0028>-50<09BB>-25<09C8>-50<09BF>-50<09B8>-50<09C2>]TJ +0 g 0 G +/F53 11.3574 Tf 1 0 0 1 36 542.45 Tm [<00530A290A250A240A28>]TJ +/F37 11.3574 Tf 1 0 0 1 69.868 542.45 Tm [<0176>]TJ +/F53 11.3574 Tf 1 0 0 1 36 527.654 Tm [<00530A290A260A260A24>]TJ +ET +q +1 0 0 1 36 523.986 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 69.868 527.654 Tm [<0180>]TJ +/F53 11.3574 Tf 1 0 0 1 95.422 527.654 Tm [<00530A290A260A250A24>]TJ +ET +q +1 0 0 1 95.422 523.986 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 129.29 527.654 Tm [<017C>]TJ +/F53 11.3574 Tf 1 0 0 1 36 512.859 Tm [<00530A290A260A260A25>]TJ +ET +q +1 0 0 1 36 509.19 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 69.868 512.859 Tm [<0181>]TJ +/F53 11.3574 Tf 1 0 0 1 95.308 512.859 Tm [<00530A290A260A250A25>]TJ +ET +q +1 0 0 1 95.308 509.19 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 129.176 512.859 Tm [<017D>]TJ +/F53 11.3574 Tf 1 0 0 1 36 498.063 Tm [<00530A290A260A260A26>]TJ +ET +q +1 0 0 1 36 494.395 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 69.868 498.063 Tm [<0182>]TJ +/F53 11.3574 Tf 1 0 0 1 95.422 498.063 Tm [<00530A290A260A250A26>]TJ +ET +q +1 0 0 1 95.422 494.395 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 129.29 498.063 Tm [<017E>]TJ +/F53 11.3574 Tf 1 0 0 1 36 483.268 Tm [<00530A280A260A240A27>]TJ +ET +q +1 0 0 1 36 479.588 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 69.868 483.268 Tm [<0171>]TJ +/F53 11.3574 Tf 1 0 0 1 96.013 483.268 Tm [<00530A280A260A240A29>]TJ +ET +q +1 0 0 1 96.013 479.6 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 129.88 483.268 Tm [<0172>]TJ +/F53 11.3574 Tf 1 0 0 1 36 468.473 Tm [<00530A290A260A260A27>]TJ +ET +q +1 0 0 1 36 464.793 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 69.868 468.473 Tm [<0183>]TJ +/F53 11.3574 Tf 1 0 0 1 94.582 468.473 Tm [<00530A290A260A250A27>]TJ +ET +q +1 0 0 1 94.582 464.793 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 128.449 468.473 Tm [<017F>]TJ +/F53 11.3574 Tf 1 0 0 1 36 453.677 Tm [<00530A290A250A290A21>]TJ +/F37 11.3574 Tf 1 0 0 1 69.868 453.677 Tm [<017A>]TJ +/F53 11.3574 Tf 1 0 0 1 36 438.882 Tm [<00530A290A250A290A25>]TJ +/F37 11.3574 Tf 1 0 0 1 69.868 438.882 Tm [<017B>]TJ +/F53 11.3574 Tf 1 0 0 1 36 424.087 Tm [<00530A290A260A270A29>]TJ +/F37 11.3574 Tf 1 0 0 1 69.868 424.087 Tm [<0187>]TJ +/F53 11.3574 Tf 1 0 0 1 36 409.291 Tm [<00530A290A260A270A25>]TJ +ET +q +1 0 0 1 36 405.612 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 69.868 409.291 Tm [<0185>]TJ +/F53 11.3574 Tf 1 0 0 1 36 394.496 Tm [<00530A290A260A270A28>]TJ +ET +q +1 0 0 1 36 390.816 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 69.868 394.496 Tm [<0186>]TJ +/F49 11.3574 Tf 1 0 0 1 89.289 394.496 Tm [<00430056004D004D00540046>7<005A>8<0046>]TJ +/F53 11.3574 Tf 1 0 0 1 187.478 542.45 Tm [<00530A290A250A250A24>]TJ +ET +q +1 0 0 1 187.478 538.781 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 221.345 542.45 Tm [<0178>]TJ +/F53 11.3574 Tf 1 0 0 1 240.131 542.45 Tm [<00530A290A250A250A27>]TJ +ET +q +1 0 0 1 240.131 538.77 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 273.998 542.45 Tm [<0179>]TJ +/F53 11.3574 Tf 1 0 0 1 187.478 527.654 Tm [<00530A290A240A280A24>]TJ +ET +q +1 0 0 1 187.478 523.986 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 221.345 527.654 Tm [<0174>]TJ +/F53 11.3574 Tf 1 0 0 1 239.642 527.654 Tm [<00530A290A240A280A28>]TJ +ET +q +1 0 0 1 239.642 523.986 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 273.51 527.654 Tm [<0175>]TJ +/F53 11.3574 Tf 1 0 0 1 187.478 512.859 Tm [<00530A280A240A270A29>]TJ +/F37 11.3574 Tf 1 0 0 1 221.345 512.859 Tm [<016E>]TJ +/F49 11.3574 Tf 1 0 0 1 241.369 512.859 Tm [<0053>8<004600540051>-7<0050004F00540046>]TJ +/F53 11.3574 Tf 1 0 0 1 187.478 498.063 Tm [<00530A280A240A280A23>]TJ +/F37 11.3574 Tf 1 0 0 1 221.345 498.063 Tm [<0170>]TJ +/F49 11.3574 Tf 1 0 0 1 241.721 498.063 Tm [<0057>8<004600530054004A0044004D0046>]TJ +/F53 11.3574 Tf 1 0 0 1 187.478 483.268 Tm [<00530A290A260A270A24>]TJ +/F37 11.3574 Tf 1 0 0 1 221.345 483.268 Tm [<0184>]TJ +/F53 11.3574 Tf 1 0 0 1 181.799 468.473 Tm [<00530A210A200A200A280A27>]TJ +ET +q +1 0 0 1 181.799 464.793 cm +[]0 d 0 J 0.454 w 0 0 m 30.631 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 220.948 468.473 Tm [<018F>]TJ +/F53 11.3574 Tf 1 0 0 1 248.285 468.473 Tm [<00530A290A270A250A23>]TJ +ET +q +1 0 0 1 248.285 464.793 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 282.153 468.473 Tm [<0188>]TJ +/F53 11.3574 Tf 1 0 0 1 187.478 453.677 Tm [<00530A290A280A220A25>]TJ +ET +q +1 0 0 1 187.478 450.009 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 221.345 453.677 Tm [<0189>]TJ +/F53 11.3574 Tf 1 0 0 1 187.478 438.882 Tm [<00530A290A280A220A26>]TJ +ET +q +1 0 0 1 187.478 435.214 cm +[]0 d 0 J 0.454 w 0 0 m 25.35 0 l S +Q +BT +/F37 11.3574 Tf 1 0 0 1 221.345 438.882 Tm [<018A>]TJ +/F53 11.3574 Tf 1 0 0 1 187.478 424.087 Tm [<00530A290A280A250A24>]TJ +/F37 11.3574 Tf 1 0 0 1 221.345 424.087 Tm [<018B>]TJ +/F49 11.3574 Tf 1 0 0 1 243.095 424.087 Tm [<0051>-7<00460053004E0042004F0046004F0055>-250<005100420051>-7<00460053>]TJ +/F53 11.3574 Tf 1 0 0 1 181.799 409.291 Tm [<00530A210A200A200A240A28>]TJ +/F37 11.3574 Tf 1 0 0 1 220.948 409.291 Tm [<018C>]TJ +/F53 11.3574 Tf 1 0 0 1 181.799 394.496 Tm [<00530A210A200A200A250A27>]TJ +/F37 11.3574 Tf 1 0 0 1 220.948 394.496 Tm [<018D>]TJ +/F53 11.3574 Tf 1 0 0 1 181.799 379.701 Tm [<00530A210A200A200A250A29>]TJ +/F37 11.3574 Tf 1 0 0 1 220.948 379.701 Tm [<018E>]TJ +/F53 11.3574 Tf 0.984 0 0 1 36 350.11 Tm [<0028004D005A005100490054>-253<004A004F>-254<005500490046>-253<00420043>-11<0050>7<0057>8<0046>-253<004D004609A6>-254<00440050004D0056004E004F>-253<00420053>7<0046>-253<0057>8<004600530055004A00440042004D004D005A>-253<00440046004F005500460053>7<0046>-6<0045>-254<0050004F>-253<005500490046>-254<0043004200540046004D004A004F0046>9<000F>]TJ +1.02 0 0 1 36 335.315 Tm [<0028004D005A005100490054>-304<004A004F>-304<005500490046>-304<00420043>-10<0050>6<0057>8<0046>-303<0053004A004800490055>-304<00440050004D0056004E004F>-305<00420053>7<0046>-303<0057>7<004600530055004A00440042004D004D005A>-303<0042004D004A0048004F0046>-7<0045>-304<00420054>-304<00500053>6<0045004A004F00420053>-13<005A>]TJ +1 0 0 1 36 320.519 Tm [<005600510051>-7<00460053>8<00440042005400460010004D0050>7<0058>8<00460053>8<0044004200540046>-250<0044004900420053004200440055004600530054000F>]TJ +0.98 0 0 1 36 290.928 Tm [<0026004200440049>-228<00440050>-8<00450046>-228<004A0054>-229<00510053>7<00460047004200440046>-6<0045>-229<0058004A00550049>]TJ +/F49 11.3574 Tf 0.98 0 0 1 158.814 290.928 Tm [<0053>]TJ +/F53 11.3574 Tf 0.98 0 0 1 162.788 290.928 Tm [<000D>-234<004700500053>-228<0053>7<004600480056004D00420053>-228<0058>7<0046004A004800490055000F>-330<00240050>-7<004500460054>-229<0056004F004500460053004D004A004F0046>-7<0045>-229<004900420057>7<0046>]TJ +1.009 0 0 1 36 276.133 Tm [<005500490053>7<0046>-6<0046>-247<004200450045004A0055004A0050004F0042004D>-247<0058>7<0046004A0048004900550054000F>-329<002A004F00540055004600420045>-247<00500047>-248<00510053>7<0046004700420044004A004F0048>-246<005500490046>-247<004F0056004E0043>-10<00460053>-247<0058004A00550049>]TJ +/F49 11.3574 Tf 1.009 0 0 1 332.882 276.133 Tm [<0053>]TJ +/F53 11.3574 Tf 1.009 0 0 1 336.973 276.133 Tm [<000D>-247<005A>7<00500056>]TJ +1.004 0 0 1 36 261.338 Tm [<004E0042005A>-249<005600540046>]TJ +/F49 11.3574 Tf 1.004 0 0 1 77.378 261.338 Tm [<004D>]TJ +/F53 11.3574 Tf 1.004 0 0 1 83.992 261.338 Tm [<0009>-12<004D004A004800490055000A000D>]TJ +/F49 11.3574 Tf 1.004 0 0 1 117.818 261.338 Tm [<0046>]TJ +/F53 11.3574 Tf 1.004 0 0 1 125.768 261.338 Tm [<0009>17<0046>6<0059005500530042>-248<004D004A004800490055000A000D>-249<00500053>]TJ +/F49 11.3574 Tf 1.004 0 0 1 198.601 261.338 Tm [<0055>]TJ +/F53 11.3574 Tf 1.004 0 0 1 205.887 261.338 Tm [<000900550049004A004F000A000F>-333<09AB004600540046>-249<0058>7<0046004A0048004900550054>-248<00510053>7<0046>7<0057>8<0046004F0055>-249<005500490046>]TJ +1 0 0 1 36 246.542 Tm [<0048004D005A00510049>-250<00470053>8<0050004E>-250<0043>-10<0046004A004F0048>-250<00550050>-7<0050>-250<0049004600420057>-15<005A>-250<005800490046004F>-250<005600540046>-7<0045>-250<00420055>-250<004D0042005300480046>-250<00470050004F0055>-250<0054004A005B00460054000F>]TJ +1.019 0 0 1 36 216.952 Tm [<09AB0046>-245<00450046>-7<004400500048004D005A005100490054>-246<0058004A004D004D>-246<004F00500055>-245<004200510051>-7<004600420053>-246<004A0047>-245<00470050004F0055>-246<002F0050>6<0057>8<0046004D00250046>-6<00440050>9<000F005000550047>-245<004A0054>-246<004F00500055>-246<004A004F005400550042004D004D0046>-6<0045000F>]TJ +0.984 0 0 1 36 202.156 Tm [<002A004F00540055004600420045000D>-255<0042>-255<004F0050004F000E00430053>7<00460042004C004A004F0048>-255<00540051004200440046>-255<0058004A004D004D>-255<0043>-10<0046>-256<004A004F00540046005300550046>-7<0045000D>-255<00580049004A00440049>-256<00510053>8<0050004300420043004D005A>-255<0058004A004D004D>-255<004F00500055>]TJ +1.02 0 0 1 36 187.361 Tm [<00550042004C0046>-303<00560051>-302<005500490046>-303<00540042004E0046>-303<0042004E00500056004F0055>-303<00500047>-303<00420053>7<00460042>-303<00420054>-302<005500490046>-303<004E004A00540054004A004F0048>-303<00450046>-7<004400500048004D005A005100490054000F>-501<002A0047>-303<005A>7<00500056>]TJ +1 0 0 1 36 172.566 Tm [<0053>8<0046>-7<00520056004600540055>-250<0042>-250<00440050>-7<00450046>-250<0055004900420055>-250<004A0054>-250<004F00500055>-250<004A004F>-250<002F0050>7<0057>8<0046004D00250046>-7<00440050>10<000F005000550047000D>-250<004A0055>-250<0058004A004D004D>-250<0043>-10<0046>-250<0043004D0042004F004C000F>]TJ +0.982 0 0 1 36 142.975 Tm [<002F0050>7<0057>8<0046004D00250046>-6<00440050>-254<004A0054>-253<0042004D00540050>-254<005600540046>-7<0045>-253<004A004F>-254<005500490046>-253<003D004200440053>7<0050004F005A004E>-253<00440050004E004E0042004F0045000D>-253<00550050>-254<00510053>7<0050>8<0057004A00450046>-253<06E0004E0046>-7<0045004A0056004E>]TJ +1.01 0 0 1 36 128.179 Tm [<004400420051005406E1>-247<004D00460A1D004600530054>-248<004A004F>-248<0051004D004200440046>-248<00500047>-248<00500053>7<0045004A004F00420053>-13<005A>-248<005600510051>-7<00460053>7<0044004200540046>10<000F>-330<09AB004600540046>-248<00450050>-248<004F00500055>-248<0053>7<0046>-6<00520056004A0053>7<0046>-246<0042004F005A>]TJ +1 0 0 1 36 113.384 Tm [<00540051>-7<0046>-7<0044004A0042004D>-250<00440050>-7<00450046>10<000D>-250<00500055004900460053>-250<005500490042004F>-250<005500490046>-250<00440050004E004E0042004F0045000F>]TJ +0.982 0 0 1 36 83.793 Tm [<00330046004E0046004E0043>-10<00460053001B>-339<002A0047>-254<005A>8<00500056>-253<005600540046>-254<0042>-254<00470050004F0055>-253<0046>-8<0045004A005500500053>-253<00550050>-254<004E0050>-7<0045004A0047005A>-254<002F0050>6<0057>8<0046004D00250046>-6<00440050>9<000D>-253<005500490046004F>-253<005500490046>-254<00470050004F0055>]TJ +1.015 0 0 1 36 68.998 Tm [<004E005600540055>-246<0043>-10<0046>-246<004F0042004E0046>-7<0045>-247<0009004A004F005500460053004F0042004D004D005A>-246<0042004F0045>-246<098B004D0046>-247<004F0042004E0046000A>-246<00540050004E004600550049004A004F0048>-247<0046004D00540046>9<000D>-245<00540050>-247<0055004900420055>-246<004A0055>-247<004A0054>]TJ +0.997 0 0 1 36 54.203 Tm [<004F00500055>-250<00440050004F0047005600540046>-7<0045>-251<0058004A00550049>-250<005500490046>-251<00500053004A0048004A004F0042004D000F>-334<002A004F>-251<005A>7<005000560053>-249<00310053>7<00460042004E0043004D0046>10<000D>-250<005600540046>-250<003D00340046005500250046>-7<0044005000270050004F0055>-251<00550050>]TJ +1 0 0 1 36 39.407 Tm [<0051>-7<0050004A004F0055>-250<00550050>-250<005A>8<005000560053>-250<004E0050>-7<0045004A098B0046>-7<0045>-250<00470050004F0055000F>]TJ +ET + +endstream +endobj +6 0 obj +<</Type/Page/Contents 7 0 R/Resources 5 0 R/MediaBox[0 0 396 612]/CropBox[0 0 396 612] +/TrimBox[0 0 396 612]/Parent 11 0 R>> +endobj +5 0 obj +<< /ColorSpace 3 0 R /Pattern 2 0 R /ExtGState 1 0 R /Font<</F53 8 0 R/F37 9 0 R/F49 10 0 R>>/ProcSet[/PDF/Text]>> +endobj +1 0 obj +<<>> +endobj +2 0 obj +<<>> +endobj +3 0 obj +<< /pgfprgb [/Pattern /DeviceRGB] >> +endobj +12 0 obj +[66[486 478 389]70[401]74[276]77[266 783 518 447 489]83[357 353 307 521 472]90[503]] +endobj +13 0 obj +<</Length 12 >> +stream + +endstream +endobj +14 0 obj +<</Subtype/CIDFontType0C/Length 4552 >> +stream + +Ä@ýÄ[N‹½ø콋½ø$½½øñ÷>û“û>û“©^÷>÷“÷>û“û ÷À÷>÷“‹ü’û\÷Àû>÷“÷è‹ü8ýøˆùPüˆ@Ç÷úªÙÛ÷9Ùø.øEpŽ~Žc‹ û%û1û1S˜<ßÀ‹ÃÂÇä‰~a„tˆw‹‹x’q‹É‹³³¥ÄÿÿúÌÍÿ +€ +€ +ÌÌÿÿìšÿ +€ +² +²××
+endstream +endobj +15 0 obj +<</Type/FontDescriptor/FontName/GCZPKQ+LibertinusSerif-Italic/Flags 4/FontBBox[-634 -312 6171 893]/Ascent 894/CapHeight 647/Descent -246/ItalicAngle -12/StemV 73/XHeight 429/FontFile3 14 0 R/CIDSet 13 0 R>> +endobj +16 0 obj +<</Length 928 >> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: ProcSet (CIDInit) +%%IncludeResource: ProcSet (CIDInit) +%%BeginResource: CMap (TeX-GCZPKQ-LibertinusSerif-Italic-0) +%%Title: (TeX-GCZPKQ-LibertinusSerif-Italic-0 TeX GCZPKQ-LibertinusSerif-Italic 0) +%%Version: 1.000 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo +<< /Registry (TeX) +/Ordering (GCZPKQ-LibertinusSerif-Italic) +/Supplement 0 +>> def +/CMapName /TeX-Identity-GCZPKQ-LibertinusSerif-Italic def +/CMapType 2 def +1 begincodespacerange +<0000> <FFFF> +endcodespacerange +0 beginbfrange +endbfrange +16 beginbfchar +<0042> <0061> +<0043> <0062> +<0044> <0063> +<0046> <0065> +<004A> <0069> +<004D> <006C> +<004E> <006D> +<004F> <006E> +<0050> <006F> +<0051> <0070> +<0053> <0072> +<0054> <0073> +<0055> <0074> +<0056> <0075> +<0057> <0076> +<005A> <0079> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF + +endstream +endobj +10 0 obj +<</Type/Font/Subtype/Type0/Encoding/Identity-H/BaseFont/GCZPKQ+LibertinusSerif-Italic/DescendantFonts[17 0 R]/ToUnicode 16 0 R>> +endobj +17 0 obj +<</Type/Font/Subtype/CIDFontType0/BaseFont/GCZPKQ+LibertinusSerif-Italic/FontDescriptor 15 0 R/W 12 0 R/CIDSystemInfo<</Registry (Adobe)/Ordering (Identity)/Supplement 0>>>> +endobj +18 0 obj +[366[513]368[544 802 802]372[361 361 2000]376[404 404 250 351 1000 990 1000 926 1000 990 1000 926 1000 460 460 460 1157 725 645 665 764 710 773 1157]] +endobj +19 0 obj +<</Length 50 >> +stream + +endstream +endobj +20 0 obj +<</Subtype/CIDFontType0C/Length 5607 >> +stream + +*I} I š È +j +’ +ãÃøË
ÓU™‡óÕ*(«¸ÿÿ÷ÿ€ÿ +‚ŒÿÿûÒ°ÿ +…äÿÿûïÿ +¿÷R¿÷³¶³¶ž÷L°÷Jžµ³÷îù +û;ûûû;û;÷û÷;÷;÷÷÷;÷;û÷û;c÷%÷ +û +û%û'û ûû'û&û÷÷&÷%÷ +÷ +÷%£ûv¢¶©–¬‹À²]VPlg[c‹m½qŇ“ˆ‘‹‘‹ŽŒŽ^8t`jk‹Vd¹ÀÆ«®»³‹ªY¥QƒŽ…‹…‹ˆŠ‡ˆ†®îˆ„ˆ‡ˆ“wÀ`´[‹AcT)G¬AÏÄ‹ª´¾Ž•ŽŒŽƒŸV¶a»‹Õ³ÁíÏjÕGR‹ldyX÷¼~¦÷à›÷®ß Ç£¨ª÷÷pû÷z¥¢üÀø°ø’vÔY¬4‹3‹VhzD…Œ†‹ƒ‹0‹U,‹.‹U¥i´qƒv…x‹z>÷ +ª¯§²½k÷ +¯ +¯ÚÚ’
l/ +endstream +endobj +21 0 obj +<</Type/FontDescriptor/FontName/SOWFSQ+NovelDeco/Flags 4/FontBBox[-392 -234 1985 781]/Ascent 894/CapHeight 537/Descent -246/ItalicAngle 0/StemV 61/XHeight 429/FontFile3 20 0 R/CIDSet 19 0 R>> +endobj +22 0 obj +<</Length 1073 >> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: ProcSet (CIDInit) +%%IncludeResource: ProcSet (CIDInit) +%%BeginResource: CMap (TeX-SOWFSQ-NovelDeco-0) +%%Title: (TeX-SOWFSQ-NovelDeco-0 TeX SOWFSQ-NovelDeco 0) +%%Version: 1.000 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo +<< /Registry (TeX) +/Ordering (SOWFSQ-NovelDeco) +/Supplement 0 +>> def +/CMapName /TeX-Identity-SOWFSQ-NovelDeco def +/CMapType 2 def +1 begincodespacerange +<0000> <FFFF> +endcodespacerange +0 beginbfrange +endbfrange +31 beginbfchar +<016E> <211F> +<0170> <2123> +<0171> <21C7> +<0172> <21C9> +<0174> <250C> +<0175> <2510> +<0176> <254C> +<0178> <2552> +<0179> <2555> +<017A> <2577> +<017B> <257B> +<017C> <25B6> +<017D> <25B7> +<017E> <25B8> +<017F> <25B9> +<0180> <25C0> +<0181> <25C1> +<0182> <25C2> +<0183> <25C3> +<0184> <25CA> +<0185> <25CB> +<0186> <25CE> +<0187> <25CF> +<0188> <2619> +<0189> <2661> +<018A> <2662> +<018B> <267E> +<018C> <2740> +<018D> <2749> +<018E> <274B> +<018F> <2767> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF + +endstream +endobj +9 0 obj +<</Type/Font/Subtype/Type0/Encoding/Identity-H/BaseFont/SOWFSQ+NovelDeco/DescendantFonts[23 0 R]/ToUnicode 22 0 R>> +endobj +23 0 obj +<</Type/Font/Subtype/CIDFontType0/BaseFont/SOWFSQ+NovelDeco/FontDescriptor 21 0 R/W 18 0 R/CIDSystemInfo<</Registry (Adobe)/Ordering (Identity)/Supplement 0>>>> +endobj +24 0 obj +[9[298 298]13[220 338 220 323]18[465 465]27[236]36[646 701 557 485 685]42[297]47[699]49[541]51[587 485]61[287]66[457 493 428 506 447 310 500 538 271]76[512 264 790 542 504 519 503 372 390 316 531 497 747 490 515 424]1760[375 375]2443[560]2470[596]2475[1048]2483[492]2485[477 458]2488[611]2491[431]2494[563 461]2498[412 529]2501[548]2504[489]2589[614]2592[465 465 465 465 465 465 465 465 465 465]] +endobj +25 0 obj +<</Length 326 >> +stream + +endstream +endobj +26 0 obj +<</Subtype/CIDFontType0C/Length 15258 >> +stream + +*" + + + +! +" +# +$ +% +& +' +( +) +5§¿¦
›
îðgõ=ÝO¦:7Î*9Ý©€p»!l"¦#¶$0$ª%Ä&ý(ô)* +o,W,Ï--².Š/€01µ2â3&3¬4d5H5ú6x717£8i9#,‹½ø龋½ø$½½øï÷>û’û>û’©^÷>÷’÷>û’û ÷¿÷>÷’‹üû\÷¿û>÷‘÷è‹ü8ýøˆùNüˆû½·Þ·÷‹^û{÷dûH•“’Ž“j±û ÷‹÷›‹÷›÷ +÷«¯ÿÿü™šÿ +LÍÿÿùÌÌÿ +ûkgÿ +ÌÍÿ +‹è¤ÏÅ€”†“‹–÷‹ÿ +ffÿ +ûDo*[÷y¨—®Ò8ü„÷=ß‹ÿ +€ +™špÿ +LÍ—‘‹–ÿÿöÌÍÿ +€ +LÍÿÿýæfÿ +LÍÿÿýæfÿ +LÍÿÿýæfÿ +33ÿÿûÌÍÿ +LÍÿÿýæfÿ +³3u¢€·…¤…‘xŠ……û«Â÷í²äÚ¶øA}‡ƒ~†ŒŠÆûÁDªo¹¹‹½¡²·‰ÿ +LÍ…ÿ +æfÿ +æfÿÿõÌÍÿ +²÷£øª¡ §‹ÿ +²ôùNluvo‹ÿÿà€ +LÍ…ÿ +eŽ‰‹‰‰‹Š‡^W€[•‡—Š—‹ï€ŸÛ¹¥Í‹¼°•eNü‹8z†;ˆ……‹v‘…¼Œÿ +³3ƒÿ +‹ª÷V«÷>¬÷Ú÷§»¦…§ü÷Œ÷uÿ +ÌÍÿ +33ÿÿýæfÿ +ffÿ +LÍ…ÿ +±ÎÓ®û22ûû'á9÷÷ÞÞ÷&÷BÝûû‰¬÷檵w÷jØ÷j÷‹8p†Eˆ……‹v‘…¼Œÿ +æfÿÿüæfÿ +šÿÿþÌÍ–ÿ +¯ +¯ÚÚ’
+endstream +endobj +27 0 obj +<</Type/FontDescriptor/FontName/ZMYENA+LibertinusSerif/Flags 4/FontBBox[-1082 -256 6171 1125]/Ascent 894/CapHeight 647/Descent -246/ItalicAngle 0/StemV 73/XHeight 429/FontFile3 26 0 R/CIDSet 25 0 R>> +endobj +28 0 obj +<</Length 1693 >> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: ProcSet (CIDInit) +%%IncludeResource: ProcSet (CIDInit) +%%BeginResource: CMap (TeX-ZMYENA-LibertinusSerif-0) +%%Title: (TeX-ZMYENA-LibertinusSerif-0 TeX ZMYENA-LibertinusSerif 0) +%%Version: 1.000 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo +<< /Registry (TeX) +/Ordering (ZMYENA-LibertinusSerif) +/Supplement 0 +>> def +/CMapName /TeX-Identity-ZMYENA-LibertinusSerif def +/CMapType 2 def +1 begincodespacerange +<0000> <FFFF> +endcodespacerange +0 beginbfrange +endbfrange +72 beginbfchar +<0009> <0028> +<000A> <0029> +<000D> <002C> +<000E> <002D> +<000F> <002E> +<0010> <002F> +<0012> <0031> +<0013> <0032> +<001B> <003A> +<0024> <0043> +<0025> <0044> +<0026> <0045> +<0027> <0046> +<0028> <0047> +<002A> <0049> +<002F> <004E> +<0031> <0050> +<0033> <0052> +<0034> <0053> +<003D> <005C> +<0042> <0061> +<0043> <0062> +<0044> <0063> +<0045> <0064> +<0046> <0065> +<0047> <0066> +<0048> <0067> +<0049> <0068> +<004A> <0069> +<004C> <006B> +<004D> <006C> +<004E> <006D> +<004F> <006E> +<0050> <006F> +<0051> <0070> +<0052> <0071> +<0053> <0072> +<0054> <0073> +<0055> <0074> +<0056> <0075> +<0057> <0076> +<0058> <0077> +<0059> <0078> +<005A> <0079> +<005B> <007A> +<06E0> <201C> +<06E1> <201D> +<098B> <00660069> +<09A6> <00660074> +<09AB> <00540068> +<09B3> <0063> +<09B5> <0065> +<09B6> <0066> +<09B8> <0068> +<09BB> <006C> +<09BE> <006F> +<09BF> <0070> +<09C2> <0073> +<09C3> <0074> +<09C5> <0076> +<09C8> <0079> +<0A1D> <00740074> +<0A20> <0030> +<0A21> <0031> +<0A22> <0032> +<0A23> <0033> +<0A24> <0034> +<0A25> <0035> +<0A26> <0036> +<0A27> <0037> +<0A28> <0038> +<0A29> <0039> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF + +endstream +endobj +8 0 obj +<</Type/Font/Subtype/Type0/Encoding/Identity-H/BaseFont/ZMYENA+LibertinusSerif/DescendantFonts[29 0 R]/ToUnicode 28 0 R>> +endobj +29 0 obj +<</Type/Font/Subtype/CIDFontType0/BaseFont/ZMYENA+LibertinusSerif/FontDescriptor 27 0 R/W 24 0 R/CIDSystemInfo<</Registry (Adobe)/Ordering (Identity)/Supplement 0>>>> +endobj +11 0 obj +<</Type/Pages /Count 1/Kids[6 0 R]>> +endobj +30 0 obj +<</Type/Catalog/Pages 11 0 R /Metadata 4 0 R/OutputIntents [ <</Type/OutputIntent/S/GTS_PDFX/OutputCondition (SWOP (Publication) printing in USA (Printing process definition: ANSI CGATS.6).)/OutputConditionIdentifier (CGATS TR 001)/Info (U.S. Web Coated (SWOP) v2)/RegistryName (http://www.color.org)>> ]>> +endobj +31 0 obj +<< + /Title(NovelDeco.otf\040v.\0401.2\040\040\040Glyphs)/Creator(LaTeX\040with\040novel\040and\040microtype)/CreationDate(D:20170221092624-08'00')/ModDate(D:20170221092624-08'00')/Producer(LuaTeX\040with\040novel-pdfx\040and\040hyperref)/Trapped/False/GTS_PDFXVersion(PDF/X-1a:2001)/GTS_PDFXConformance(PDF/X-1a:2001) +>> +endobj +xref +0 32 +0000000000 65535 f +0000019210 00000 n +0000019230 00000 n +0000019250 00000 n +0000000015 00000 n +0000019080 00000 n +0000018940 00000 n +0000006777 00000 n +0000051352 00000 n +0000032945 00000 n +0000025312 00000 n +0000051672 00000 n +0000019303 00000 n +0000019404 00000 n +0000019473 00000 n +0000024104 00000 n +0000024327 00000 n +0000025457 00000 n +0000025647 00000 n +0000025814 00000 n +0000025921 00000 n +0000031607 00000 n +0000031815 00000 n +0000033076 00000 n +0000033253 00000 n +0000033666 00000 n +0000034049 00000 n +0000049386 00000 n +0000049602 00000 n +0000051489 00000 n +0000051725 00000 n +0000052048 00000 n +trailer +<</Size 32/Root 30 0 R/Info 31 0 R/ID[<F24A984E8049C6DA456221C91C986752> <F24A984E8049C6DA456221C91C986752>]>> +startxref +52385 +%%EOF diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/10transold.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/10transold.png Binary files differnew file mode 100644 index 00000000000..c0b6040be25 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/10transold.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/10trueold.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/10trueold.png Binary files differnew file mode 100644 index 00000000000..bba0f9fde27 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/10trueold.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/acronym2.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/acronym2.png Binary files differnew file mode 100644 index 00000000000..025623cfe16 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/acronym2.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/amb.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/amb.png Binary files differnew file mode 100644 index 00000000000..ac94695cfbc --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/amb.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/badaboom.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/badaboom.png Binary files differnew file mode 100644 index 00000000000..0e8ab6ae0b7 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/badaboom.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/blockindent.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/blockindent.png Binary files differnew file mode 100644 index 00000000000..efb3eea5b9b --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/blockindent.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/bookmanglerdashboard.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/bookmanglerdashboard.png Binary files differnew file mode 100644 index 00000000000..860ba4db7b7 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/bookmanglerdashboard.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/chapterstart.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/chapterstart.png Binary files differnew file mode 100644 index 00000000000..57cda07b93f --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/chapterstart.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/charscaletext.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/charscaletext.png Binary files differnew file mode 100644 index 00000000000..f1d14985ea8 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/charscaletext.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/charscaletitle.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/charscaletitle.png Binary files differnew file mode 100644 index 00000000000..8a46a89df72 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/charscaletitle.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/closecrop.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/closecrop.png Binary files differnew file mode 100644 index 00000000000..3c711a5f7ab --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/closecrop.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/cropmarkgap.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/cropmarkgap.png Binary files differnew file mode 100644 index 00000000000..6a7dea3973b --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/cropmarkgap.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/cropmarks.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/cropmarks.png Binary files differnew file mode 100644 index 00000000000..7563be8b4a4 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/cropmarks.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/cropview.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/cropview.png Binary files differnew file mode 100644 index 00000000000..4e291133b82 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/cropview.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/ctimg35.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/ctimg35.png Binary files differnew file mode 100644 index 00000000000..319502c9915 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/ctimg35.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/defaultheader.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/defaultheader.png Binary files differnew file mode 100644 index 00000000000..ce16787c1d5 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/defaultheader.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/defaultprops.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/defaultprops.png Binary files differnew file mode 100644 index 00000000000..b4c9aa9a80e --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/defaultprops.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/difnl.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/difnl.png Binary files differnew file mode 100644 index 00000000000..36fba096322 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/difnl.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/docprops.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/docprops.png Binary files differnew file mode 100644 index 00000000000..60947d38012 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/docprops.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/doordie.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/doordie.png Binary files differnew file mode 100644 index 00000000000..b21515ad219 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/doordie.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/emblembar.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/emblembar.png Binary files differnew file mode 100644 index 00000000000..4ec376baa25 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/emblembar.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/emblemdingbats.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/emblemdingbats.png Binary files differnew file mode 100644 index 00000000000..0be1973770e --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/emblemdingbats.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/emblemimg.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/emblemimg.png Binary files differnew file mode 100644 index 00000000000..8cec298061f --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/emblemimg.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/endnotetext.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/endnotetext.png Binary files differnew file mode 100644 index 00000000000..58067bee816 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/endnotetext.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/epigraph.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/epigraph.png Binary files differnew file mode 100644 index 00000000000..74911c76afd --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/epigraph.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/famface.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/famface.png Binary files differnew file mode 100644 index 00000000000..4e5ff3e0b88 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/famface.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/fontbyfamily.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/fontbyfamily.png Binary files differnew file mode 100644 index 00000000000..93434dd4469 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/fontbyfamily.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/fontbyfilenamei.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/fontbyfilenamei.png Binary files differnew file mode 100644 index 00000000000..044d6e42f2f --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/fontbyfilenamei.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/fonts-in-use.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/fonts-in-use.png Binary files differnew file mode 100644 index 00000000000..30f6ac82e28 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/fonts-in-use.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/fontscompared.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/fontscompared.png Binary files differnew file mode 100644 index 00000000000..173d5b16019 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/fontscompared.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/footjump2.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/footjump2.png Binary files differnew file mode 100644 index 00000000000..535a2507189 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/footjump2.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/fpaper.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/fpaper.png Binary files differnew file mode 100644 index 00000000000..204be0027d0 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/fpaper.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/frankenfont.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/frankenfont.png Binary files differnew file mode 100644 index 00000000000..4dfe4bf5dc1 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/frankenfont.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/gavelstart.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/gavelstart.png Binary files differnew file mode 100644 index 00000000000..21e410b084c --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/gavelstart.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/gears20.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/gears20.png Binary files differnew file mode 100644 index 00000000000..adf4c3f5eef --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/gears20.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/graytext.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/graytext.png Binary files differnew file mode 100644 index 00000000000..a8e9919420c --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/graytext.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/gruelingantarctic.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/gruelingantarctic.png Binary files differnew file mode 100644 index 00000000000..b56512fc066 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/gruelingantarctic.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/halftitle.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/halftitle.png Binary files differnew file mode 100644 index 00000000000..9301246e132 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/halftitle.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot.png Binary files differnew file mode 100644 index 00000000000..867b8b28e9b --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot1.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot1.png Binary files differnew file mode 100644 index 00000000000..8fb3015bda3 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot1.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot2.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot2.png Binary files differnew file mode 100644 index 00000000000..cb23c3b8fab --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot2.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot3.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot3.png Binary files differnew file mode 100644 index 00000000000..4527809af16 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot3.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot4.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot4.png Binary files differnew file mode 100644 index 00000000000..d5ac9896756 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot4.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot5.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot5.png Binary files differnew file mode 100644 index 00000000000..4eb1f39ff8b --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot5.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot6.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot6.png Binary files differnew file mode 100644 index 00000000000..b9d7348c7f9 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/headfoot6.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/headjump1.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/headjump1.png Binary files differnew file mode 100644 index 00000000000..c4d56d051f3 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/headjump1.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/headtrack100.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/headtrack100.png Binary files differnew file mode 100644 index 00000000000..8a57fe6cf20 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/headtrack100.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/headtrack50.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/headtrack50.png Binary files differnew file mode 100644 index 00000000000..dd43bfafbff --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/headtrack50.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/imgdialogs.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/imgdialogs.png Binary files differnew file mode 100644 index 00000000000..a8fce8d6623 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/imgdialogs.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/inlineimagest.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/inlineimagest.png Binary files differnew file mode 100644 index 00000000000..7e4481d946e --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/inlineimagest.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/interior-layout.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/interior-layout.png Binary files differnew file mode 100644 index 00000000000..21ee5744b69 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/interior-layout.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/irategnome.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/irategnome.png Binary files differnew file mode 100644 index 00000000000..ac0dac9fcce --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/irategnome.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/jollybeers.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/jollybeers.png Binary files differnew file mode 100644 index 00000000000..f2b2706ef37 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/jollybeers.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/jpgcolorspace.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/jpgcolorspace.png Binary files differnew file mode 100644 index 00000000000..33c1fb7eb9f --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/jpgcolorspace.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/linegrid.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/linegrid.png Binary files differnew file mode 100644 index 00000000000..8028c01dd91 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/linegrid.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/lnum.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/lnum.png Binary files differnew file mode 100644 index 00000000000..7682a5511fb --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/lnum.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/looseheads.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/looseheads.png Binary files differnew file mode 100644 index 00000000000..b0a71321496 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/looseheads.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/margins.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/margins.png Binary files differnew file mode 100644 index 00000000000..294c962d21b --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/margins.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/mbcrecto.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/mbcrecto.png Binary files differnew file mode 100644 index 00000000000..a0fc0ba707f --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/mbcrecto.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/mbcrectomar.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/mbcrectomar.png Binary files differnew file mode 100644 index 00000000000..989ef50b4ba --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/mbcrectomar.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/mbcverso.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/mbcverso.png Binary files differnew file mode 100644 index 00000000000..8be1d961d0e --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/mbcverso.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/mcdingle.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/mcdingle.png Binary files differnew file mode 100644 index 00000000000..42fbcf53b5b --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/mcdingle.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/mediacent.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/mediacent.png Binary files differnew file mode 100644 index 00000000000..ba44c2dbdec --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/mediacent.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/megadocprops.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/megadocprops.png Binary files differnew file mode 100644 index 00000000000..e89828153d9 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/megadocprops.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/megatitlepage.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/megatitlepage.png Binary files differnew file mode 100644 index 00000000000..53f10c3acac --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/megatitlepage.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/megatitlepagesm.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/megatitlepagesm.png Binary files differnew file mode 100644 index 00000000000..1ad0a46b66a --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/megatitlepagesm.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/mixedfonts.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/mixedfonts.png Binary files differnew file mode 100644 index 00000000000..5dc5d1f9d45 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/mixedfonts.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/novel-doc.css b/Master/texmf-dist/doc/lualatex/novel/html-resources/novel-doc.css new file mode 100644 index 00000000000..03e4e6911e9 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/novel-doc.css @@ -0,0 +1,93 @@ + +/* Style sheet for "novel" class documentation. */ + + +body {font-family:sans-serif; line-height:150%; background:#cccccc none;} +#master {position:relative;} +#toc {width:30%; background:#ffffff none; position:fixed; overflow:scroll; height:98%;} +#toc p {margin-left:8px; margin-top:8px; margin-bottom:8px; font-weight:bold; text-indent:0px;} +#toc ul {list-style-type:none; margin-left:8px;} +#toc li {list-style-type:none; margin-left:8px; margin-top:3px;} +#main {float:right; background:#ffffff none; width:68%; padding-bottom:40px;} +#finish {clear:both;} +a {text-decoration:none; color:#990000} +ol, ul, li {margin:0px; padding:0px;} +h1 {font-size:1.33em; margin:32px 16px 16px 16px; font-weight:bold; clear:both;} +h1 em {font-weight:normal} +h2 {font-size:1.25em; margin:32px 16px 8px 16px; font-weight:bold; clear:both;} +h2 em {font-weight:normal} +h3 {font-size:1.15em; margin:32px 16px 8px 16px; font-weight:bold; clear:both;} +h3 em {font-weight:normal} +h4 {font-size:1em; margin:24px 16px 8px 16px; font-weight:bold; clear:both;} +h4 em {font-weight:normal} +h5 {font-size:1em; margin:16px 16px 8px 16px; font-weight:bold; clear:both;} +h5 em {font-weight:normal} +h6 {font-size:1em; margin:0.5em 16px 8px 16px; font-weight:bold; clear:both;} +h6 em {font-weight:normal} +div.h1 {margin:0px 16px 16px 16px;} +div.h2 {margin:0px 0px 16px 16px; padding-bottom:0.5em; border-left:1px dotted #666666; border-bottom: 1px dotted #666666;} +div.h3 {margin:0px 0px 16px 16px; padding-bottom:0.5em; border-left:1px dotted #666666; border-bottom: 1px dotted #666666;} +div.h4 {margin:0px 0px 16px 16px; padding-bottom:0.5em; border-left:1px dotted #666666; border-bottom: 1px dotted #666666;} +div.h5 {margin:0px 0px 16px 16px; padding-bottom:0.5em; border-left:1px dotted #666666; border-bottom: 1px dotted #666666;} +div.h6 {margin:0px 0px 16px 16px; padding-bottom:0.5em; border-left:1px dotted #666666; border-bottom: 1px dotted #666666;} +div.pagetopage {float:right; border:1px solid #000000; margin-left:12px; margin-right:16px; margin-top:32px;} +div.pagetopage p {text-indent:0px; margin:4px;} +p {font-family:serif;} +pre, code {font-family:monospace,monospace; font-size:1em;} +p, pre {margin: 0px 16px 0px 16px; text-indent: 16px;} +*.technote {font-weight:normal; color:#333333; margin-bottom:6px;} +*.technote img {position:relative; top:4px;} +*.noindent {text-indent:0px;} +*.noindentcmd {text-indent:0px; margin-top:16px;} +*.underh2 {text-indent:0px; font-style:italic; margin-bottom:0px; margin-top:0px; padding-top:6px; padding-bottom:0.5em; padding-left:20px; border-left:1px dotted #666666;} +*.underh3 {text-indent:0px; font-style:italic; margin-bottom:0px; margin-top:0px; padding-top:6px; padding-bottom:0.5em; padding-left:18px; border-left:1px dotted #666666;} +*.underh4 {text-indent:0px; font-style:italic; margin-bottom:0px; margin-top:0px; padding-top:6px; padding-bottom:0.5em; padding-left:16px; border-left:1px dotted #666666;} +*.underh5 {text-indent:0px; font-style:italic; margin-bottom:0px; margin-top:0px; padding-top:6px; padding-bottom:0.5em; padding-left:16px; border-left:1px dotted #666666;} +*.underh6 {text-indent:0px; font-style:italic; margin-bottom:0px; margin-top:0px; padding-top:6px; padding-bottom:0.5em; padding-left:16px; border-left:1px dotted #666666;} +*.bull {padding-left:20px;} +*.bull::before {content : "• ";} +*.bullist {text-indent:80px;} +*.bull0 {text-indent:-1em; margin-left:2em; margin-top:0.5em;} +*.bull0::before {content : "• ";} +*.bullist0 {margin-left:2em;} +*.isolate {padding-left:10px;margin-top:10px; margin-bottom:10px; text-indent:0px;} +table.preconf {margin-left:auto; margin-right:auto; margin-top:20px; margin-bottom:20px; border:1px solid #000000} +table.preconf caption {font-weight:bold;} +table.preconf th {text-align:left; padding:6px; font-weight:normal; border-bottom:1px solid #000000;} +table.preconf td {text-align:left; padding:6px;} +table.preconf tfoot td {border-top:1px solid #000000;} +table.preconf p {text-indent:0px; margin:6px;} +*.onedown {font-size:smaller} +*.menuitem {text-indent:-8px; margin-left:24px; margin-top:0px; margin-bottom:0px;} +span.flat { + font-family: "Lucida Sans Unicode", "DejaVu Sans", "Lucida Grande", "Helvetica Neue", sans-serif; + color:#00cc00; + padding-right:0.3em; + position:relative; + bottom:0.1em; + left:-0.33em; +} +span.flat::before {content: "â–¶";} +span.expanded { + font-family: "Lucida Sans Unicode", "DejaVu Sans", "Lucida Grande", "Helvetica Neue", sans-serif; + color:#cc0000; + cursor:pointer; + padding-right:0.3em; + position:relative; + bottom:0.1em; + left:-0.33em; +} +span.expanded::before {content: "â–¼";} +*.floatright {float:right; margin-left:1em; margin-right:16px;} +p.centerimg {text-indent:0px; text-align:center; margin-top:0.5em; margin-bottom:0.5em;} +p.code {text-indent:0px; margin: 4px 16px 4px 16px; padding-left:32px;} +div.fontcommand {padding-left:32px; margin-top:8px; margin-bottom:8px;} +div.fontcommand p, pre {margin-left:16px; text-indent:-16px;} +b em {font-weight:normal;} + +@media print { +#toc {display:none;} +#main {width:auto; float:none;} +} + + diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/originalspread.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/originalspread.png Binary files differnew file mode 100644 index 00000000000..5719515bd49 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/originalspread.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/overflowrule.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/overflowrule.png Binary files differnew file mode 100644 index 00000000000..81e01c8b120 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/overflowrule.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/page-leaf.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/page-leaf.png Binary files differnew file mode 100644 index 00000000000..70562ef0943 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/page-leaf.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/perfectbinding.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/perfectbinding.png Binary files differnew file mode 100644 index 00000000000..3073971ea75 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/perfectbinding.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/pngcolortype.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/pngcolortype.png Binary files differnew file mode 100644 index 00000000000..78cce712fe6 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/pngcolortype.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/quickchapter.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/quickchapter.png Binary files differnew file mode 100644 index 00000000000..aae28725f99 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/quickchapter.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/reworkedspread.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/reworkedspread.png Binary files differnew file mode 100644 index 00000000000..f15355bf5e5 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/reworkedspread.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/scenebreaks.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/scenebreaks.png Binary files differnew file mode 100644 index 00000000000..078a9b1735a --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/scenebreaks.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/shademargins.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/shademargins.png Binary files differnew file mode 100644 index 00000000000..7a712cfcf44 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/shademargins.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/smallcapsrealfake.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/smallcapsrealfake.png Binary files differnew file mode 100644 index 00000000000..2acba876a97 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/smallcapsrealfake.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/smfingerprint8.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/smfingerprint8.png Binary files differnew file mode 100644 index 00000000000..da1d4cab878 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/smfingerprint8.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/tbrecto.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/tbrecto.png Binary files differnew file mode 100644 index 00000000000..cfcbfcb0636 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/tbrecto.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/tbrectomar.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/tbrectomar.png Binary files differnew file mode 100644 index 00000000000..2ba8e06dc8a --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/tbrectomar.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/titlepage.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/titlepage.png Binary files differnew file mode 100644 index 00000000000..1282eff3a9c --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/titlepage.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/toc.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/toc.png Binary files differnew file mode 100644 index 00000000000..3293d7a739b --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/toc.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/trdol.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/trdol.png Binary files differnew file mode 100644 index 00000000000..2fa4dde8e1b --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/trdol.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/ublibser.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/ublibser.png Binary files differnew file mode 100644 index 00000000000..7d4c393cb5d --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/ublibser.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/whichgutter.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/whichgutter.png Binary files differnew file mode 100644 index 00000000000..44352ceaf2a --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/whichgutter.png diff --git a/Master/texmf-dist/doc/lualatex/novel/html-resources/win10libser.png b/Master/texmf-dist/doc/lualatex/novel/html-resources/win10libser.png Binary files differnew file mode 100644 index 00000000000..5c5459a5e1f --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/html-resources/win10libser.png diff --git a/Master/texmf-dist/doc/lualatex/novel/novel-template.tex b/Master/texmf-dist/doc/lualatex/novel/novel-template.tex new file mode 100644 index 00000000000..3cf5d0a1264 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/novel-template.tex @@ -0,0 +1,26 @@ +% !TeX program = LuaLaTeX +% !TeX encoding = UTF-8 +\documentclass{novel} % v. 1.0.6 or later +% You may put this wherever your installation keeps templates. +% Many packages are pre-loaded. Nearly all settings are pre-configured. +% Some popular user settings: +% \SetTrimSize{}{} +% \SetMargins{}{}{}{} +% \SetHeadFootStyle{} +% \SetMainFont[]{} +% \SetTitle{} +% \SetAuthor{} +% \SetPDFX[]{} + +\begin{document} + +% \frontmatter +% \SetVersoHeadText{} +% \SetRectoHeadText{} +% \thispagestyle{} +% \mainmatter + +It was a dark and stormy night.\par + +\end{document} + diff --git a/Master/texmf-dist/doc/lualatex/novel/novel.pdf b/Master/texmf-dist/doc/lualatex/novel/novel.pdf new file mode 100644 index 00000000000..35bcea2a71c --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/novel.pdf @@ -0,0 +1,1909 @@ +%PDF-1.3 +%ÐÔÅØ +4 0 obj +<</Type /Metadata /Subtype /XML +/Length 6750 >> +stream +<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> + <x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:08:04 "> + <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> + <rdf:Description rdf:about="" + xmlns:xmp="http://ns.adobe.com/xap/1.0/"> + <xmp:ModifyDate>2017-03-01T20:49:07-08:00</xmp:ModifyDate> + <xmp:CreateDate>2017-03-01T20:49:07-08:00</xmp:CreateDate> + <xmp:CreatorTool>LaTeX with novel and microtype</xmp:CreatorTool> + <xmp:MetadataDate>2017-03-01T20:49:07-08:00</xmp:MetadataDate> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:dc="http://purl.org/dc/elements/1.1/"> + <dc:format>application/pdf</dc:format> + <dc:title> + <rdf:Alt> + <rdf:li xml:lang="x-default">Novel Document Class</rdf:li> + </rdf:Alt> + </dc:title> + <dc:creator> + <rdf:Bag> + <rdf:li>Robert Allgeyer</rdf:li> + </rdf:Bag> + </dc:creator> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/"> + <xmpMM:DocumentID>uuid:A12D98E081B6A0EC2CBA2D468474F922</xmpMM:DocumentID> + <xmpMM:InstanceID>uuid:E1D8B47558A5D26CD4A0CE8D550001A9</xmpMM:InstanceID> + <xmpMM:RenditionClass>default</xmpMM:RenditionClass> + <xmpMM:VersionID>1</xmpMM:VersionID> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:pdf="http://ns.adobe.com/pdf/1.3/"> + <pdf:Producer>LuaTeX with novel-pdfx and hyperref</pdf:Producer> + <pdf:Trapped>False</pdf:Trapped> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:pdfx="http://ns.adobe.com/pdfx/1.3/"> + <pdfx:GTS_PDFXVersion>PDF/X-1a:2001</pdfx:GTS_PDFXVersion> + <pdfx:GTS_PDFXConformance>PDF/X-1a:2001</pdfx:GTS_PDFXConformance> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:pdfxid="http://www.npes.org/pdfx/ns/id/"> + <pdfxid:GTS_PDFXVersion>PDF/X-1a:2001</pdfxid:GTS_PDFXVersion> + </rdf:Description> + <rdf:Description rdf:about="" + xmlns:pdfaExtension="http://www.aiim.org/pdfa/ns/extension/" + xmlns:pdfaSchema="http://www.aiim.org/pdfa/ns/schema#" + xmlns:pdfaProperty="http://www.aiim.org/pdfa/ns/property#"> + <pdfaExtension:schemas> + <rdf:Bag> + <rdf:li rdf:parseType="Resource"> + <pdfaSchema:namespaceURI>http://ns.adobe.com/pdf/1.3/</pdfaSchema:namespaceURI> + <pdfaSchema:prefix>pdf</pdfaSchema:prefix> + <pdfaSchema:schema>Adobe PDF Schema</pdfaSchema:schema> + <pdfaSchema:property> + <rdf:Seq> + <rdf:li rdf:parseType="Resource"> + <pdfaProperty:category>internal</pdfaProperty:category> + <pdfaProperty:description>A name object indicating whether the document has been modified to include trapping information</pdfaProperty:description> + <pdfaProperty:name>Trapped</pdfaProperty:name> + <pdfaProperty:valueType>Text</pdfaProperty:valueType> + </rdf:li> + </rdf:Seq> + </pdfaSchema:property> + </rdf:li> + <rdf:li rdf:parseType="Resource"> + <pdfaSchema:namespaceURI>http://ns.adobe.com/pdfx/1.3/</pdfaSchema:namespaceURI> + <pdfaSchema:prefix>pdfx</pdfaSchema:prefix> + <pdfaSchema:schema>PDF/X ID Schema</pdfaSchema:schema> + <pdfaSchema:property> + <rdf:Seq> + <rdf:li rdf:parseType="Resource"> + <pdfaProperty:category>internal</pdfaProperty:category> + <pdfaProperty:description>ID of PDF/X standard</pdfaProperty:description> + <pdfaProperty:name>GTS_PDFXVersion</pdfaProperty:name> + <pdfaProperty:valueType>Text</pdfaProperty:valueType> + </rdf:li> + <rdf:li rdf:parseType="Resource"> + <pdfaProperty:category>internal</pdfaProperty:category> + <pdfaProperty:description>Conformance level of PDF/X standard</pdfaProperty:description> + <pdfaProperty:name>GTS_PDFXConformance</pdfaProperty:name> + <pdfaProperty:valueType>Text</pdfaProperty:valueType> + </rdf:li> + </rdf:Seq> + </pdfaSchema:property> + </rdf:li> + <rdf:li rdf:parseType="Resource"> + <pdfaSchema:namespaceURI>http://ns.adobe.com/xap/1.0/mm/</pdfaSchema:namespaceURI> + <pdfaSchema:prefix>xmpMM</pdfaSchema:prefix> + <pdfaSchema:schema>XMP Media Management Schema</pdfaSchema:schema> + <pdfaSchema:property> + <rdf:Seq> + <rdf:li rdf:parseType="Resource"> + <pdfaProperty:category>internal</pdfaProperty:category> + <pdfaProperty:description>UUID based identifier for specific incarnation of a document</pdfaProperty:description> + <pdfaProperty:name>InstanceID</pdfaProperty:name> + <pdfaProperty:valueType>URI</pdfaProperty:valueType> + </rdf:li> + </rdf:Seq> + </pdfaSchema:property> + </rdf:li> + <rdf:li rdf:parseType="Resource"> + <pdfaSchema:namespaceURI>http://www.npes.org/pdfx/ns/id/</pdfaSchema:namespaceURI> + <pdfaSchema:prefix>pdfxid</pdfaSchema:prefix> + <pdfaSchema:schema>PDF/X ID Schema</pdfaSchema:schema> + <pdfaSchema:property> + <rdf:Seq> + <rdf:li rdf:parseType="Resource"> + <pdfaProperty:category>internal</pdfaProperty:category> + <pdfaProperty:description>ID of PDF/X standard</pdfaProperty:description> + <pdfaProperty:name>GTS_PDFXVersion</pdfaProperty:name> + <pdfaProperty:valueType>Text</pdfaProperty:valueType> + </rdf:li> + </rdf:Seq> + </pdfaSchema:property> + </rdf:li> + </rdf:Bag> + </pdfaExtension:schemas> + </rdf:Description> + </rdf:RDF> + </x:xmpmeta> + <?xpacket end="w"?> +endstream +endobj +7 0 obj +<</Length 20048 >> +stream +0 g 0 G +BT +/F37 19.12834 Tf 1 0 0 1 275.882 682.57 Tm [<002F0030>24<0037>-24<0026002D>]TJ +/F38 14.34617 Tf 1 0 0 1 198.762 663.187 Tm [<0022>-250<00250050>-7<00440056004E0046004F0055>-250<0024004D004200540054>-250<004700500053>-250<005500490046>-250<0033004600540055>-250<00500047>-250<00360054>]TJ +ET +1 0 0 1 296.34 619.767 cm +q +4 0 0 4 0 0 cm +1 0 0 1 -296.34 -619.767 cm +BT +/F39 11.95517 Tf 1 0 0 1 296.34 619.767 Tm [<0178>]TJ +ET +1 0 0 1 296.34 619.767 cm +Q +1 0 0 1 -296.34 -619.767 cm +BT +/F40 11.95517 Tf 1 0 0 1 232.075 585.652 Tm [<002A0055>-250<005800420054>-250<0042>-250<004500420053004C>-250<0042004F0045>-250<0054005500500053004E005A>-250<004F004A004800490055000F>]TJ +/F38 11.95517 Tf 1 0 0 1 72 535.27 Tm [<09AB0046>]TJ +/F40 11.95517 Tf 1 0 0 1 92.867 535.27 Tm [<004F0050>7<0057>8<0046004D>]TJ +/F38 11.95517 Tf 1 0 0 1 121.612 535.27 Tm [<00450050>-7<00440056004E0046004F0055>-250<0044004D004200540054>-250<004A0054>-251<004700500053>-250<00580053004A0055004600530054>-251<00500047>-250<00500053004A0048004A004F0042004D>-251<098B00440055004A0050004F000D>-250<00550050>-251<0043>-10<0046>-250<00510053004A004F00550046>-7<0045>-251<00550050>-250<005100420051>-7<00460053>58<000D>-250<0058004A00550049>-250<0051004200530055004A00440056004D00420053>]TJ +1 0 0 1 72 519.763 Tm [<00420A1D0046004F0055004A0050004F>-250<00550050>-250<005500490046>-250<0053>8<0046>-7<00520056004A0053>8<0046004E0046004F00550054>-250<00500047>-250<005500490046>-250<00510053004A004F0055000E0050004F000E00450046004E0042004F0045>-250<004E00420053004C00460055000F>]TJ +1.02 0 0 1 89.933 504.256 Tm [<002A0047>-280<005A>7<005000560053>-280<0058>7<00500053004C>-279<004A0054>-281<0042004F>-280<0026000E0043>-10<0050>-7<0050004C000D>-289<00500053>-281<0056005400460054>-280<00440050004D00500053>-281<00500055004900460053>-280<005500490042004F>-281<004800530042005A>57<000D>-288<00500053>-281<004A0054>-280<00420044004200450046004E004A0044>-281<00580053004A0055004A004F0048000D>-289<005500490046004F>-281<00550049004A0054>]TJ +0.985 0 0 1 72 488.749 Tm [<00450050>-7<00440056004E0046004F0055>-253<0044004D004200540054>-254<004A0054>-254<004F00500055>-254<004700500053>-254<005A>8<00500056000F>-338<002A004E0042004800460054>-254<00420053>7<0046>-252<0054005600510051>-8<0050005300550046>-7<0045000D>-254<004300560055>-253<0050004F004D005A>-254<00420054>-254<005500490046>6<005A>-253<004E004A004800490055>-253<0043>-11<0046>-253<005600540046>-8<0045>-253<004A004F>-254<098B00440055004A0050004F001C>-254<00540050>]TJ +1 0 0 1 72 473.243 Tm [<004A0047>-250<005A>8<005000560053>-250<0058>8<00500053004C>-250<004A0054>-250<0042>-250<0051004A0044005500560053>8<0046>-250<0043>-10<0050>-7<0050004C000D>-250<00550049004A0054>-250<0044004D004200540054>-250<004A0054>-250<004F00500055>-250<004700500053>-250<005A>8<00500056000F>]TJ +0.98 0 0 1 89.933 457.736 Tm [<002300560055>-253<004A0047>-254<005A>7<00500056>-253<00420053>8<0046>-253<00580053004A0055004A004F0048>-254<0042>-254<0045004600550046>-7<00440055004A0057>7<0046>-253<004F0050>7<0057>8<0046004D000D>-253<00500053>-254<00540044004A0046004F00440046>-254<098B00440055004A0050004F000D>-254<00500053>-254<0042>-254<00440050004D004D0046>-7<00440055004A0050004F>-253<00500047>-254<00540049005000530055>-254<0054005500500053004A00460054000D>-254<005500490046004F>]TJ +1 0 0 1 72 442.229 Tm [<0053>8<004600420045>-250<0050004F0002>]TJ +/F38 14.34617 Tf 1 0 0 1 72 415.519 Tm [<0012000F>-333<002700460042005500560053>7<00460054>]TJ +ET +q +1 0 0 1 138.906 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 139.902 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 140.898 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 141.895 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 142.891 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 143.887 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 144.883 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 145.88 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 146.876 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 147.872 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 148.868 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 149.865 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 150.861 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 151.857 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 152.853 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 153.85 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 154.846 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 155.842 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 156.838 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 157.835 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 158.831 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 159.827 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 160.824 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 161.82 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 162.816 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 163.812 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 164.809 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 165.805 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 166.801 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 167.797 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 168.794 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 169.79 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 170.786 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 171.782 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 172.779 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 173.775 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 174.771 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 175.767 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 176.764 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 177.76 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 178.756 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 179.753 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 180.749 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 181.745 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 182.741 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 183.738 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 184.734 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 185.73 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 186.726 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 187.723 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 188.719 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 189.715 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 190.711 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 191.708 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 192.704 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 193.7 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 194.696 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 195.693 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 196.689 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 197.685 419.17 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +BT +/F38 11.95517 Tf 1 0 0 1 72 395.708 Tm [<09AB0053>8<0050005600480049005000560055000D>-250<004A0055>-250<004A0054>-250<0042005400540056004E0046>-7<0045>-250<0055004900420055>-250<005500490046>-250<0051005600530051>-7<005000540046>-250<00500047>-250<005A>8<005000560053>-250<00580053004A0055004A004F0048>-250<004A0054>-250<0042>-250<00440050004E004E00460053>8<0044004A0042004D004D005A>-250<00510053004A004F00550046>-7<0045>-250<0043>-10<0050>-7<0050004C000F>]TJ +1.02 0 0 1 89.933 380.201 Tm [<0036004F004D004A004C0046>-302<005500490046>-302<003100250027>-302<005A>6<00500056>-301<00420053>7<0046>-301<0053>6<004600420045004A004F0048>-301<004F0050>6<0058>58<000D>]TJ +/F40 11.95517 Tf 1.02 0 0 1 281.399 380.201 Tm [<004F0050>6<0057>8<0046004D>]TJ +/F38 11.95517 Tf 1.02 0 0 1 311.341 380.201 Tm [<004A0054>-302<00510053>7<0046000E00440050004F098B004800560053>8<0046>-6<0045>-302<00550050>-303<00510053>7<0050>-6<0045005600440046>-302<0042>-302<005400550042004F004500420053>7<0045>-302<00550053004200450046>]TJ +1.018 0 0 1 72 364.694 Tm [<0043>-9<0050>-7<0050004C>-246<0054004A005B0046>-246<00500047>-246<0A25000F0A25004A004F>-246<0038>-246<0059>-246<0A28000F0A25004A004F>-246<0029000D>-246<0058004A00550049>-246<004D0042005A>7<005000560055>-245<004E004200530048004A004F0054>-246<0055004900420055>-246<00420053>7<0046>-245<004D004A004C0046004D005A>-246<00550050>-246<0043>-10<0046>-246<00420044004400460051005500420043004D0046>-246<00550050>-246<005500490046>-246<004E005000540055>]TJ +0.98 0 0 1 71.558 349.187 Tm [<0058004A00450046004D005A000E005600540046>-7<0045>-235<00510053004A004F0055>-236<005400460053>-15<0057004A004400460054000F>-334<002300560055>-236<004A0047>-236<0055004900420055>-235<004A0054>-236<004F00500055>-236<005500490046>-235<0054004A005B0046>-236<00500053>-236<004D0042005A>7<005000560055>-234<005A>7<00500056>-235<00580042004F0055000D>-240<005500490046004F>-235<0055004900460053>7<0046>-235<00420053>7<0046>-234<00440050004E004E0042004F00450054>]TJ +0.98 0 0 1 72 333.68 Tm [<0055004900420055>-256<00440050004F098B004800560053>7<0046>-255<004B005600540055>-257<00420043>-10<005000560055>-256<0042004F005A00550049004A004F0048000D>-257<00560054004A004F0048>-257<005400550042004F004500420053>7<0045>-255<005500460053004E004A004F0050004D00500048005A>-257<0042004F0045>-256<0056004F004500460053005400550042004F004500420043004D0046>-257<0051005600530051>-7<005000540046>10<000F>-344<0023004600540055>]TJ +1.02 0 0 1 72 318.173 Tm [<00500047>-250<0042004D004D000D>-251<005500490046>-251<0029>-36<0035002E002D>-250<00450050>-7<00440056004E0046004F005500420055004A0050004F>-250<00440050004E00460054>-251<0058004A00550049>-250<004A004E0042004800460054>-250<0042004F0045>-250<0046>5<00590042004E0051004D00460054000D>-250<00540050>-250<005A>6<00500056>-249<004C004F0050>6<0058>-249<0058004900420055>-251<005A>7<00500056>-249<00420053>7<0046>]TJ +1 0 0 1 72 302.666 Tm [<00450050004A004F0048000F>]TJ +1.02 0 0 1 89.933 287.16 Tm [<0022004D004E005000540055>-306<0046>6<0057>8<00460053>-14<005A00550049004A004F0048>-306<004A0054>-307<00510053>7<0046000E00440050004F098B004800560053>8<0046>-6<0045>-307<00550050>-306<06E0004B005600540055>-307<0058>7<00500053004C000D>120<06E1>-321<0046>6<0057>8<0046004F>-306<005500490046>-306<004400490050004A00440046>-307<00500047>-306<00470050004F00550054000F>-511<09AB0046>-307<00440049005000540046004F>]TJ +0.999 0 0 1 72 271.653 Tm [<00440050004E0051004A004D00460053>-249<004A0054>-249<002D00560042002D00420035>62<00460039000D>-248<0042004F0045>-249<00300051>-7<0046004F>-249<0035>48<005A0051>-6<0046>-249<00470050004F00550054>-250<00420053>8<0046>-249<004D0050004200450046>-7<0045>-249<00560054004A004F0048>-249<00470050004F005500540051>-7<0046>-7<0044>-249<00550046>-7<00440049004F0050004D00500048005A>58<000F>-333<002A0047>-249<005A>7<00500056>-248<004900420057>7<0046>-248<0042>]TJ +1 0 0 1 72 256.146 Tm [<00510053>8<00500047004600540054004A0050004F0042004D>-250<00470050004F0055>-250<0055004900420055>-250<005A>8<00500056>-250<00510053>8<0046004700460053>-250<00550050>-250<005500490046>-250<00450046004700420056004D00550054000D>-250<004A0055>-250<0058004A004D004D>-250<0043>-10<0046>-250<004600420054005A>-250<00550050>-250<004D005000420045>-250<0042004F0045>-250<005600540046>-250<004A004F>-250<0036>-37<00350027000E0A28000F>]TJ +1.02 0 0 1 89.933 240.639 Tm [<002E0042004F005A>-265<005400550042004F004500420053>7<0045>-265<002D00420035>60<00460039>-264<00440050004E004E0042004F00450054>-266<00420053>7<0046>-265<0045004A005400420043004D0046>-7<0045000F>-389<09AB004A0054>-266<004E0042005A>-266<00540056005300510053004A00540046>-266<005A>7<00500056>-265<00420055>-266<098B005300540055000F>-389<002300560055>]TJ +/F40 11.95517 Tf 1.02 0 0 1 502.443 240.639 Tm [<004F0050>6<0057>8<0046004D>]TJ +/F38 11.95517 Tf 1.02 0 0 1 531.94 240.639 Tm [<004A0054>]TJ +0.98 0 0 1 72 225.132 Tm [<00470050>-7<0044005600540046>-7<0045>-237<0050004F>-238<0050004F0046>-237<00550049004A004F0048>-238<0050004F004D005A>59<000F>-333<0022004F005A00550049004A004F0048>-238<0055004900420055>-237<004E004A004800490055>-238<004A004F005500460053004700460053>8<0046>-237<0058004A00550049>-238<0055004900420055>-237<0051005600530051>-7<005000540046>-238<004E0042005A>-237<004900420057>7<0046>-237<0043>-10<0046>-7<0046004F>-238<00550050005400540046>-7<0045>]TJ +0.995 0 0 1 72 209.625 Tm [<00420054004A00450046>10<000F>-334<00340050>9<000D>-251<0043>-10<0046>-251<005400560053>7<0046>-250<0055004900420055>-251<005A>7<00500056>-250<0053>7<004600420045>-250<005500490046>-252<00450050>-7<00440056004E0046004F005500420055004A0050004F0002>-335<002A0047>-251<005A>7<00500056>-250<00550042004C0046>-251<0042004F>-251<0046>6<0059004A00540055004A004F0048>-250<002D00420035>62<00460039>-250<00450050>-7<00440056004E0046004F0055>-252<0042004F0045>]TJ +1 0 0 1 72 194.118 Tm [<004B005600540055>-250<004400490042004F00480046>-250<005500490046>-250<0044004D004200540054>-250<00550050>]TJ +/F40 11.95517 Tf 1 0 0 1 188.216 194.118 Tm [<004F0050>7<0057>8<0046004D>]TJ +/F38 11.95517 Tf 1 0 0 1 213.19 194.118 Tm [<000D>-250<004A0055>-250<004A0054>-250<0057>8<00460053>-15<005A>-250<0056004F004D004A004C0046004D005A>-250<00550050>-250<0058>8<00500053004C>-250<00420054>-250<0046>7<00590051>-7<0046>-7<004400550046>-7<0045000F>]TJ +1.02 0 0 1 89.933 178.611 Tm [<002E0042004F005A>-255<004F0046>6<0058>-254<00440050004E004E0042004F00450054>-256<00420053>7<0046>-254<00510053>7<0050>7<0057004A00450046>-6<0045000F>-357<09AB0046>6<005A>-255<00420053>7<0046>-254<00470050>-7<0044005600540046>-7<0045>-255<0050004F>-256<005500490046>-255<004F0046>-7<0046>-7<00450054>-255<00500047>-255<00510053004A004F0055>-255<098B00440055004A0050004F>-256<00580053004A0055004600530054000D>]TJ +1.02 0 0 1 72 163.104 Tm [<0051>-6<00460053004A0050>-7<0045000F>-373<0023004600540055>-260<00500047>-260<0042004D004D000D>]TJ +/F40 11.95517 Tf 1.02 0 0 1 166.746 163.104 Tm [<004F0050>6<0057>8<0046004D>]TJ +/F38 11.95517 Tf 1.02 0 0 1 196.175 163.104 Tm [<004900420054>-260<00430056004A004D0055000E004A004F>-260<00310025002700100039>-260<00550046>-7<00440049004F0050004D00500048005A>-260<0055004900420055>-261<0046>6<005900440046>-6<0046>-7<00450054>-260<005500490046>-260<00440042005100420043004A004D004A0055004A00460054>-260<0044005600530053>6<0046004F0055004D005A>]TJ +1 0 0 1 72 147.597 Tm [<004200570042004A004D00420043004D0046>-250<0057004A0042>-250<00500055004900460053>-250<002D00420035>63<00460039>-250<005100420044004C0042004800460054000F>]TJ +/F38 14.34617 Tf 1 0 0 1 72 120.887 Tm [<0013000F>-333<00240050004E0051004D004600550046>-250<00250050>-7<00440056004E0046004F005500420055004A0050004F>]TJ +ET +q +1 0 0 1 240.792 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 241.788 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 242.785 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 243.781 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 244.777 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 245.774 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 246.77 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 247.766 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 248.762 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 249.759 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 250.755 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 251.751 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 252.747 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 253.744 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 254.74 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 255.736 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 256.732 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 257.729 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 258.725 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 259.721 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 260.717 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 261.714 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 262.71 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 263.706 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 264.703 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 265.699 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 266.695 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 267.691 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 268.688 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 269.684 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 270.68 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 271.676 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 272.673 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 273.669 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 274.665 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 275.661 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 276.658 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 277.654 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 278.65 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 279.646 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 280.643 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 281.639 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 282.635 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 283.632 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 284.628 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 285.624 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 286.62 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 287.617 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 288.613 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 289.609 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 290.605 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 291.602 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 292.598 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 293.594 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 294.59 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 295.587 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 296.583 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 297.579 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 298.576 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 299.572 124.539 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +BT +/F38 11.95517 Tf 0.999 0 0 1 72 101.077 Tm [<09AB0046>-251<00440050004E0051004D004600550046>-251<00450050>-7<00440056004E0046004F005500420055004A0050004F>-252<004A0054>-251<004A004F>-252<0029>-37<0035002E002D>-251<004700500053004E00420055000D>-252<0045004A0053>7<0046>-6<00440055004D005A>-252<00580053004A0A1D0046004F>-251<0042004F0045>-252<00570042004D004A0045004200550046>-7<0045>-251<004A004F>-251<0029>-38<0035002E002D>-251<005300420055004900460053>]TJ +0.986 0 0 1 72 85.57 Tm [<005500490042004F>-254<0046>7<0059005500530042004400550046>-7<0045>-254<00470053>7<0050004E>-253<00440050>-7<00450046>9<000F>-338<09AB00460053>7<0046>-253<00420053>7<0046>-253<004F0056004E00460053>7<005000560054>-253<0046>6<00590042004E0051004D00460054>-253<0042004F0045>-255<004A004E0042004800460054000D>-254<00550050>-7<0050>-254<0045004600550042004A004D0046>-7<0045>-254<00550050>-254<0043>-11<0046>-254<00510053>8<004600540046004F00550046>-7<0045>]TJ +1 0 0 1 72 70.063 Tm [<00420054>-250<003100250027>24<000F>]TJ +/F38 10.99873 Tf 1 0 0 1 303.443 46.787 Tm [<0012>]TJ +ET + +endstream +endobj +6 0 obj +<</Type/Page/Contents 7 0 R/Resources 5 0 R/MediaBox[0 0 612 792]/CropBox[0 0 612 792] +/TrimBox[0 0 612 792]/Parent 12 0 R>> +endobj +5 0 obj +<< /ColorSpace 3 0 R /Pattern 2 0 R /ExtGState 1 0 R /Font<</F37 8 0 R/F38 9 0 R/F39 10 0 R/F40 11 0 R>>/ProcSet[/PDF/Text]>> +endobj +15 0 obj +<</Length 17044 >> +stream +BT +/F38 14.34617 Tf 1 0 0 1 72 725.641 Tm [<0014000F>-333<00310053>7<0050004B0046>-6<00440055>-250<0031004200480046>]TJ +ET +q +1 0 0 1 162.39 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 163.387 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 164.383 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 165.379 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 166.375 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 167.372 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 168.368 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 169.364 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 170.36 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 171.357 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 172.353 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 173.349 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 174.346 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 175.342 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 176.338 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 177.334 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 178.331 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 179.327 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 180.323 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 181.319 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 182.316 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 183.312 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 184.308 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 185.304 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 186.301 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 187.297 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 188.293 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 189.29 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 190.286 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 191.282 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 192.278 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 193.275 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 194.271 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 195.267 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 196.263 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 197.26 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 198.256 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 199.252 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 200.248 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 201.245 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 202.241 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 203.237 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 204.233 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 205.23 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 206.226 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 207.222 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 208.219 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 209.215 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 210.211 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 211.207 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 212.204 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 213.2 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 214.196 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 215.192 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 216.189 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 217.185 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 218.181 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 219.177 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 220.174 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 221.17 729.293 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +BT +/F38 11.95517 Tf 1 0 0 1 72 705.831 Tm [<09AB0046>]TJ +/F40 11.95517 Tf 1 0 0 1 92.862 705.831 Tm [<004F0050>7<0057>8<0046004D>]TJ +/F38 11.95517 Tf 1 0 0 1 121.602 705.831 Tm [<00440050>-7<00450046>-250<004A0054>-250<00490050005400550046>-7<0045>-250<0043005A>-250<0028004A0055002900560043001B>]TJ +1 0 0 1 225.171 690.324 Tm [<00490A1D00510054001B001000100048004A0055004900560043>20<000F00440050004E001000330050004300550022004D004D0010004F0050>7<0057>8<0046004D>]TJ +1.02 0 0 1 89.933 674.817 Tm [<09AB00460053>7<0046>10<000D>-306<005A>7<00500056>-295<0058004A004D004D>-295<098B004F0045>-295<0042>-295<00440050004E0051004D004600550046>-295<004F0050>6<0057>8<0046004D>-294<0009005100560043004D004A0044>-295<00450050004E0042004A004F>-295<00550046>6<00590055000A>-294<004A004F>-296<004A00550054>-295<0054005000560053>7<00440046>-294<00440050>-7<00450046>-295<0042004F0045>-295<098B004F004A005400490046>-7<0045>]TJ +1 0 0 1 72 659.31 Tm [<00510053004A004F0055000E0053>8<004600420045005A>-250<003100250027>24<000F>-250<09AB00460053>8<0046>-250<004E0042005A>-250<0042004D00540050>-250<0043>-10<0046>-250<0046>7<00590055005300420054>-250<0055004900420055>-250<00420053>8<0046>-250<004F00500055>-250<0051004200530055>-250<00500047>-250<005500490046>-250<002D00420035>63<00460039>-250<00440050>-7<00450046>10<000F>]TJ +1.02 0 0 1 89.933 643.803 Tm [<0022>-276<00510053>7<0046>-6<00450046>-7<004400460054005400500053>-276<00500047>-277<00550049004A0054>-276<00450050>-7<00440056004E0046004F0055>-276<0044004D004200540054>-277<004900420054>-276<00420044005500560042004D004D005A>-277<0043>-10<0046>-6<0046004F>-277<005600540046>-7<0045>-276<004700500053>-277<0042>-276<00440050004E004E00460053>7<0044004A0042004D004D005A>-276<004E00420053004C004600550046>-7<0045>]TJ +1 0 0 1 72 628.296 Tm [<00510053004A004F0055000E0050004F000E00450046004E0042004F0045>-250<004F0050>7<0057>8<0046004D000F>]TJ +/F38 14.34617 Tf 1 0 0 1 72 601.586 Tm [<0015000F>-333<002D004A00440046004F00540046>]TJ +ET +q +1 0 0 1 133.397 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 134.393 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 135.389 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 136.386 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 137.382 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 138.378 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 139.374 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 140.371 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 141.367 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 142.363 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 143.359 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 144.356 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 145.352 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 146.348 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 147.344 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 148.341 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 149.337 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 150.333 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 151.33 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 152.326 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 153.322 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 154.318 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 155.315 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 156.311 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 157.307 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 158.303 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 159.3 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 160.296 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 161.292 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 162.288 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 163.285 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 164.281 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 165.277 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 166.273 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 167.27 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 168.266 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 169.262 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 170.259 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 171.255 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 172.251 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 173.247 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 174.244 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 175.24 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 176.236 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 177.232 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 178.229 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 179.225 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 180.221 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 181.217 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 182.214 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 183.21 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 184.206 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 185.203 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 186.199 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 187.195 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 188.191 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 189.188 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 190.184 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 191.18 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 192.176 605.237 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +BT +/F38 11.95517 Tf 1.02 0 0 1 72 581.775 Tm [<09AB0046>-292<002D00420035>61<00460039>-291<00440050>-7<00450046>9<000D>-303<0042004F0045>-292<0042004400440050004E00510042004F005A004A004F0048>-292<00450050>-7<00440056004E0046004F005500420055004A0050004F000D>-304<004A0054>-292<0053>7<0046004D0046004200540046>-6<0045>-292<0056004F004500460053>-292<005500490046>-292<005500460053004E0054>-292<00500047>-292<005500490046>-293<002D0042005500460039>]TJ +1 0 0 1 72 566.268 Tm [<00310053>8<0050004B0046>-7<00440055>-250<003100560043004D004A0044>-250<002D004A00440046004F00540046>10<000D>-250<0057>8<004600530054004A0050004F>-250<0A21000F0A230044>-250<00500053>-250<004D0042005500460053>59<000F>]TJ +1 0 0 1 89.933 550.761 Tm [<09AB0046>-250<00440050004E00510042004F004A0050004F>-250<00470050004F0055>-250<002F0050>7<0057>8<0046004D00250046>-7<00440050>10<000F005000550047>-250<004A0054>-250<004D004A00440046004F00540046>-7<0045>-250<0056004F004500460053>-250<005500490046>-250<0034002A002D>-250<00300051>-7<0046004F>-250<00270050004F0055>-250<002D004A00440046004F00540046>10<000D>-250<0057>8<004600530054004A0050004F>-250<0A21000F0A21000F>]TJ +/F38 14.34617 Tf 1 0 0 1 72 524.052 Tm [<0016000F>-333<0037>79<004600530054004A0050004F>]TJ +ET +q +1 0 0 1 134.042 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 135.039 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 136.035 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 137.031 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 138.027 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 139.024 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 140.02 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 141.016 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 142.012 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 143.009 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 144.005 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 145.001 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 145.998 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 146.994 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 147.99 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 148.986 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 149.983 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 150.979 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 151.975 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 152.971 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 153.968 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 154.964 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 155.96 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 156.956 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 157.953 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 158.949 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 159.945 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 160.941 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 161.938 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 162.934 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 163.93 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 164.927 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 165.923 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 166.919 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 167.915 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 168.912 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 169.908 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 170.904 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 171.9 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 172.897 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 173.893 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 174.889 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 175.885 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 176.882 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 177.878 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 178.874 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 179.871 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 180.867 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 181.863 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 182.859 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 183.856 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 184.852 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 185.848 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 186.844 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 187.841 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 188.837 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 189.833 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 190.829 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 191.826 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +q +1 0 0 1 192.822 527.703 cm +[]0 d 0 J 0.703 w 0 0 m 0.996 0 l S +Q +BT +/F38 11.95517 Tf 1.015 0 0 1 72 504.241 Tm [<09AB0046>-246<004A004F004A0055004A0042004D>-245<0053>7<0046004D0046004200540046>-246<00500047>-246<004F0050>6<0057>8<0046004D>-245<0057004A0042>-246<0028004A0055002900560043>-246<005800420054>-246<0050004F>-246<0027004600430053005600420053>-14<005A>-246<0A220A20000D0A220A200A210A27000F>-329<0022>-246<004F0056004E0043>-9<00460053>-246<00500047>-246<004E004A004F00500053>-246<004300560055>-246<00560054004600470056004D>]TJ +1.02 0 0 1 72 488.734 Tm [<004400490042004F004800460054>-278<0058>7<00460053>8<0046>-277<004E004200450046>-278<004A004F>-279<005500490046>-278<00470050004D004D0050>6<0058004A004F0048>-277<0058>7<0046>-6<0046004C000F>-426<09AB0046>-278<098B005300540055>-279<00240035>47<0022002F>-277<0057>7<004600530054004A0050004F>-277<004A0054>-278<0A21000F0A20000F0A25000D>-287<0053>7<0046004D0046004200540046>-6<0045>-278<0027004600430053005600420053>-15<005A>]TJ +1.02 0 0 1 72 473.227 Tm [<0A220A28000D>-252<0A220A200A210A27000F>-344<0023004200540046>-7<0045>-251<0050004F>-250<00470046>-7<0046>-7<0045004300420044004C000D>-252<0057>7<004600530054004A0050004F>-250<0A21000F0A20000F0A25>-251<005800420054>-251<0056005100480053004200450046>-7<0045>-251<00550050>-251<0057>7<004600530054004A0050004F>-250<0A21000F0A20000F0A26>-250<0030004F>-251<002E00420053>7<00440049>-250<0A21000D>-253<0A220A200A210A27000D>-252<004700500053>]TJ +1 0 0 1 72 457.72 Tm [<0046004F00490042004F00440046>-7<0045>-250<00440050004E005100420055004A0043004A004D004A0055005A>-250<0058004A00550049>-250<0035>63<00460039002D004A0057>8<0046>-250<00540055005300560044005500560053>8<0046>10<000F>]TJ +/F38 10.99873 Tf 1 0 0 1 303.443 46.787 Tm [<0013>]TJ +ET + +endstream +endobj +14 0 obj +<</Type/Page/Contents 15 0 R/Resources 13 0 R/MediaBox[0 0 612 792]/CropBox[0 0 612 792] +/TrimBox[0 0 612 792]/Parent 12 0 R>> +endobj +13 0 obj +<< /ColorSpace 3 0 R /Pattern 2 0 R /ExtGState 1 0 R /Font<</F38 9 0 R/F40 11 0 R>>/ProcSet[/PDF/Text]>> +endobj +1 0 obj +<<>> +endobj +2 0 obj +<<>> +endobj +3 0 obj +<< /pgfprgb [/Pattern /DeviceRGB] >> +endobj +16 0 obj +[15[219]42[280]66[486]69[489 401]72[477 519 276]76[486 266 783 518 447]83[357 353 307]87[472 688]90[503]] +endobj +17 0 obj +<</Length 12 >> +stream + +endstream +endobj +18 0 obj +<</Subtype/CIDFontType0C/Length 5508 >> +stream + +€ +€ +ÌÌÿÿìšÿ +€ +² +²××
+endstream +endobj +19 0 obj +<</Type/FontDescriptor/FontName/SHEQYH+LibertinusSerif-Italic/Flags 4/FontBBox[-634 -312 6171 893]/Ascent 894/CapHeight 647/Descent -246/ItalicAngle -12/StemV 73/XHeight 429/FontFile3 18 0 R/CIDSet 17 0 R>> +endobj +20 0 obj +<</Length 970 >> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: ProcSet (CIDInit) +%%IncludeResource: ProcSet (CIDInit) +%%BeginResource: CMap (TeX-SHEQYH-LibertinusSerif-Italic-0) +%%Title: (TeX-SHEQYH-LibertinusSerif-Italic-0 TeX SHEQYH-LibertinusSerif-Italic 0) +%%Version: 1.000 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo +<< /Registry (TeX) +/Ordering (SHEQYH-LibertinusSerif-Italic) +/Supplement 0 +>> def +/CMapName /TeX-Identity-SHEQYH-LibertinusSerif-Italic def +/CMapType 2 def +1 begincodespacerange +<0000> <FFFF> +endcodespacerange +0 beginbfrange +endbfrange +19 beginbfchar +<000F> <002E> +<002A> <0049> +<0042> <0061> +<0045> <0064> +<0046> <0065> +<0048> <0067> +<0049> <0068> +<004A> <0069> +<004C> <006B> +<004D> <006C> +<004E> <006D> +<004F> <006E> +<0050> <006F> +<0053> <0072> +<0054> <0073> +<0055> <0074> +<0057> <0076> +<0058> <0077> +<005A> <0079> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF + +endstream +endobj +11 0 obj +<</Type/Font/Subtype/Type0/Encoding/Identity-H/BaseFont/SHEQYH+LibertinusSerif-Italic/DescendantFonts[21 0 R]/ToUnicode 20 0 R>> +endobj +21 0 obj +<</Type/Font/Subtype/CIDFontType0/BaseFont/SHEQYH+LibertinusSerif-Italic/FontDescriptor 19 0 R/W 16 0 R/CIDSystemInfo<</Registry (Adobe)/Ordering (Identity)/Supplement 0>>>> +endobj +22 0 obj +[376[404]] +endobj +23 0 obj +<</Length 48 >> +stream + +endstream +endobj +24 0 obj +<</Subtype/CIDFontType0C/Length 507 >> +stream + +¯ +¯ÚÚ’
l/ +endstream +endobj +25 0 obj +<</Type/FontDescriptor/FontName/RVBPVV+NovelDeco/Flags 4/FontBBox[-392 -234 1985 781]/Ascent 894/CapHeight 537/Descent -246/ItalicAngle 0/StemV 61/XHeight 429/FontFile3 24 0 R/CIDSet 23 0 R>> +endobj +26 0 obj +<</Length 652 >> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: ProcSet (CIDInit) +%%IncludeResource: ProcSet (CIDInit) +%%BeginResource: CMap (TeX-RVBPVV-NovelDeco-0) +%%Title: (TeX-RVBPVV-NovelDeco-0 TeX RVBPVV-NovelDeco 0) +%%Version: 1.000 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo +<< /Registry (TeX) +/Ordering (RVBPVV-NovelDeco) +/Supplement 0 +>> def +/CMapName /TeX-Identity-RVBPVV-NovelDeco def +/CMapType 2 def +1 begincodespacerange +<0000> <FFFF> +endcodespacerange +0 beginbfrange +endbfrange +1 beginbfchar +<0178> <2552> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF + +endstream +endobj +10 0 obj +<</Type/Font/Subtype/Type0/Encoding/Identity-H/BaseFont/RVBPVV+NovelDeco/DescendantFonts[27 0 R]/ToUnicode 26 0 R>> +endobj +27 0 obj +<</Type/Font/Subtype/CIDFontType0/BaseFont/RVBPVV+NovelDeco/FontDescriptor 25 0 R/W 22 0 R/CIDSystemInfo<</Registry (Adobe)/Ordering (Identity)/Supplement 0>>>> +endobj +28 0 obj +[2[288]9[298 298]13[220 338 220 323]18[465 465 465 465 465]27[236 236]34[695 588 646 701 557 485 685 730 297]45[528 839 699 702 541]51[587 485 597 661 652 951 660]66[457 493 428 506 447 310 500 538 271 272 512 264 790 542 504 519 503 372 390 316 531 497 747 490 515 424]1760[375 375]2443[560]2475[1048]2589[614]2592[465 465 465 465]2597[465 465 465 465]] +endobj +29 0 obj +<</Length 326 >> +stream + g¾?çßÀ?ÿÿð +endstream +endobj +30 0 obj +<</Subtype/CIDFontType0C/Length 16013 >> +stream + +)" + + + +! +" +# +% +& +' +( +ñÕ¼
=
ðßd0ðÒ‘ˆod·¹0¾Í ¦!." "÷$‹%ˆ&'{(Š)k*.*ú+Ñ,Á./½0÷222û46797}88»9Ÿ::Ö;H<,‹½ø龋½ø$½½øï÷>û’û>û’©^÷>÷’÷>û’û ÷¿÷>÷’‹üû\÷¿û>÷‘÷è‹ü8ýøˆùNüˆûÇõøÆwæõ÷$ù&snxU‹E™h”3“=‘1vŒ…Ž„•‹•‹Ž”Œ–™‹Ç˜÷ +÷«¯ÿÿü™šÿ +LÍÿÿùÌÌÿ +ûkgÿ +LÍÿ +ÌÍÿ +‹è¤ÏÅ€”†“‹–÷‹ÿ +ffÿ +ûDo*[÷y¨—®Ò8ü„÷=ß‹ÿ +€ +eŽ‰‹‰‰‹Š‡^W€[•‡—Š—‹¼ŸÛ¹¥Í‹¼°•eNü‹8z†;ˆ……‹v‘…¼Œÿ +ffÿ +™špÿ +LÍ—‘‹–ÿÿöÌÍÿ +€ +LÍÿÿýæfÿ +LÍÿÿýæfÿ +LÍÿÿýæfÿ +33ÿÿûÌÍÿ +LÍÿÿýæfÿ +³3u¢€·…¤…‘xŠ……û«Â÷í²äÚ¶øA}‡ƒ~†ŒŠÆûÁDªo¹¹‹½¡²·‰ÿ +LÍ…ÿ +æfÿ +æfÿÿõÌÍÿ +²÷£øª¡ §‹ÿ +²ôùNluvo‹ÿÿà€ +eŽ‰‹‰‰‹Š‡^W€[•‡—Š—‹ï€ŸÛ¹¥Í‹¼°•eNü‹8z†;ˆ……‹v‘…¼Œÿ +LÍ…ÿ +±ÎÓ®û22ûû'á9÷÷ÞÞ÷&÷BÝûû‰¬÷檵w÷jØ÷j÷‹8p†Eˆ……‹v‘…¼Œÿ +æfÿÿüæfÿ +šÿÿþÌÍ–ÿ +¯ +¯ÚÚ’
+endstream +endobj +31 0 obj +<</Type/FontDescriptor/FontName/SXNZIU+LibertinusSerif/Flags 4/FontBBox[-1082 -256 6171 1125]/Ascent 894/CapHeight 647/Descent -246/ItalicAngle 0/StemV 73/XHeight 429/FontFile3 30 0 R/CIDSet 29 0 R>> +endobj +32 0 obj +<</Length 1717 >> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: ProcSet (CIDInit) +%%IncludeResource: ProcSet (CIDInit) +%%BeginResource: CMap (TeX-SXNZIU-LibertinusSerif-0) +%%Title: (TeX-SXNZIU-LibertinusSerif-0 TeX SXNZIU-LibertinusSerif 0) +%%Version: 1.000 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo +<< /Registry (TeX) +/Ordering (SXNZIU-LibertinusSerif) +/Supplement 0 +>> def +/CMapName /TeX-Identity-SXNZIU-LibertinusSerif def +/CMapType 2 def +1 begincodespacerange +<0000> <FFFF> +endcodespacerange +0 beginbfrange +endbfrange +74 beginbfchar +<0002> <0021> +<0009> <0028> +<000A> <0029> +<000D> <002C> +<000E> <002D> +<000F> <002E> +<0010> <002F> +<0012> <0031> +<0013> <0032> +<0014> <0033> +<0015> <0034> +<0016> <0035> +<001B> <003A> +<001C> <003B> +<0022> <0041> +<0023> <0042> +<0024> <0043> +<0025> <0044> +<0026> <0045> +<0027> <0046> +<0028> <0047> +<0029> <0048> +<002A> <0049> +<002D> <004C> +<002E> <004D> +<002F> <004E> +<0030> <004F> +<0031> <0050> +<0033> <0052> +<0034> <0053> +<0035> <0054> +<0036> <0055> +<0037> <0056> +<0038> <0057> +<0039> <0058> +<0042> <0061> +<0043> <0062> +<0044> <0063> +<0045> <0064> +<0046> <0065> +<0047> <0066> +<0048> <0067> +<0049> <0068> +<004A> <0069> +<004B> <006A> +<004C> <006B> +<004D> <006C> +<004E> <006D> +<004F> <006E> +<0050> <006F> +<0051> <0070> +<0052> <0071> +<0053> <0072> +<0054> <0073> +<0055> <0074> +<0056> <0075> +<0057> <0076> +<0058> <0077> +<0059> <0078> +<005A> <0079> +<005B> <007A> +<06E0> <201C> +<06E1> <201D> +<098B> <00660069> +<09AB> <00540068> +<0A1D> <00740074> +<0A20> <0030> +<0A21> <0031> +<0A22> <0032> +<0A23> <0033> +<0A25> <0035> +<0A26> <0036> +<0A27> <0037> +<0A28> <0038> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF + +endstream +endobj +9 0 obj +<</Type/Font/Subtype/Type0/Encoding/Identity-H/BaseFont/SXNZIU+LibertinusSerif/DescendantFonts[33 0 R]/ToUnicode 32 0 R>> +endobj +33 0 obj +<</Type/Font/Subtype/CIDFontType0/BaseFont/SXNZIU+LibertinusSerif/FontDescriptor 31 0 R/W 28 0 R/CIDSystemInfo<</Registry (Adobe)/Ordering (Identity)/Supplement 0>>>> +endobj +34 0 obj +[38[562]45[538]47[710 730]55[636]] +endobj +35 0 obj +<</Length 7 >> +stream + +endstream +endobj +36 0 obj +<</Subtype/CIDFontType0C/Length 1177 >> +stream + +)÷÷P÷`íàà÷ëû´÷[û.÷ûEûRûû+ûXûZ÷%û÷J÷^÷÷÷\ì”vù¬ø?øùÌ‹’‚{aûûño€ªû÷ø€ªž•Ê‹ŽŽ‹£‰Œ‹û + +¡ŽŽŽŽ÷÷’•
+endstream +endobj +37 0 obj +<</Type/FontDescriptor/FontName/JHZTLF+LibertinusSerif-Semibold/Flags 4/FontBBox[-446 -328 6171 900]/Ascent 894/CapHeight 647/Descent -246/ItalicAngle 0/StemV 81/XHeight 463/FontFile3 36 0 R/CIDSet 35 0 R>> +endobj +38 0 obj +<</Length 783 >> +stream +%!PS-Adobe-3.0 Resource-CMap +%%DocumentNeededResources: ProcSet (CIDInit) +%%IncludeResource: ProcSet (CIDInit) +%%BeginResource: CMap (TeX-JHZTLF-LibertinusSerif-Semibold-0) +%%Title: (TeX-JHZTLF-LibertinusSerif-Semibold-0 TeX JHZTLF-LibertinusSerif-Semibold 0) +%%Version: 1.000 +%%EndComments +/CIDInit /ProcSet findresource begin +12 dict begin +begincmap +/CIDSystemInfo +<< /Registry (TeX) +/Ordering (JHZTLF-LibertinusSerif-Semibold) +/Supplement 0 +>> def +/CMapName /TeX-Identity-JHZTLF-LibertinusSerif-Semibold def +/CMapType 2 def +1 begincodespacerange +<0000> <FFFF> +endcodespacerange +0 beginbfrange +endbfrange +5 beginbfchar +<0026> <0045> +<002D> <004C> +<002F> <004E> +<0030> <004F> +<0037> <0056> +endbfchar +endcmap +CMapName currentdict /CMap defineresource pop +end +end +%%EndResource +%%EOF + +endstream +endobj +8 0 obj +<</Type/Font/Subtype/Type0/Encoding/Identity-H/BaseFont/JHZTLF+LibertinusSerif-Semibold/DescendantFonts[39 0 R]/ToUnicode 38 0 R>> +endobj +39 0 obj +<</Type/Font/Subtype/CIDFontType0/BaseFont/JHZTLF+LibertinusSerif-Semibold/FontDescriptor 37 0 R/W 34 0 R/CIDSystemInfo<</Registry (Adobe)/Ordering (Identity)/Supplement 0>>>> +endobj +12 0 obj +<</Type/Pages /Count 2/Kids[6 0 R 14 0 R]>> +endobj +40 0 obj +<</Type/Catalog/Pages 12 0 R /Metadata 4 0 R/OutputIntents [ <</Type/OutputIntent/S/GTS_PDFX/OutputCondition (SWOP (Publication) printing in USA (Printing process definition: ANSI CGATS.6).)/OutputConditionIdentifier (CGATS TR 001)/Info (U.S. Web Coated (SWOP) v2)/RegistryName (http://www.color.org)>> ]>> +endobj +41 0 obj +<< + /Title(Novel\040Document\040Class)/Author(Robert\040Allgeyer)/Creator(LaTeX\040with\040novel\040and\040microtype)/CreationDate(D:20170301204907-08'00')/ModDate(D:20170301204907-08'00')/Producer(LuaTeX\040with\040novel-pdfx\040and\040hyperref)/Trapped/False/GTS_PDFXVersion(PDF/X-1a:2001)/GTS_PDFXConformance(PDF/X-1a:2001) +>> +endobj +xref +0 42 +0000000000 65535 f +0000044601 00000 n +0000044621 00000 n +0000044641 00000 n +0000000015 00000 n +0000027095 00000 n +0000026955 00000 n +0000006851 00000 n +0000075591 00000 n +0000072837 00000 n +0000053692 00000 n +0000051722 00000 n +0000075929 00000 n +0000044480 00000 n +0000044337 00000 n +0000027236 00000 n +0000044694 00000 n +0000044816 00000 n +0000044885 00000 n +0000050472 00000 n +0000050695 00000 n +0000051867 00000 n +0000052057 00000 n +0000052084 00000 n +0000052189 00000 n +0000052775 00000 n +0000052983 00000 n +0000053824 00000 n +0000054001 00000 n +0000054372 00000 n +0000054755 00000 n +0000070847 00000 n +0000071063 00000 n +0000072974 00000 n +0000073157 00000 n +0000073208 00000 n +0000073272 00000 n +0000074528 00000 n +0000074751 00000 n +0000075737 00000 n +0000075989 00000 n +0000076312 00000 n +trailer +<</Size 42/Root 40 0 R/Info 41 0 R/ID[<11EEA5F4B6A7B7E9055B574FBEDB0E70> <11EEA5F4B6A7B7E9055B574FBEDB0E70>]>> +startxref +76658 +%%EOF diff --git a/Master/texmf-dist/doc/lualatex/novel/novel.tex b/Master/texmf-dist/doc/lualatex/novel/novel.tex new file mode 100644 index 00000000000..2bcee68306c --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/novel.tex @@ -0,0 +1,76 @@ +% !TeX program = LuaLaTeX +% !TeX encoding = UTF-8 +\documentclass{novel} % v. 1.0.6 or later +% This is the source code for file `novel.pdf'. +\SetTitle{Novel Document Class} +\SetAuthor{Robert Allgeyer} +\SetTrimSize{8.5in}{11in} +\SetMargins{0.6in}{1in}{0.6in}{1in} +\SetFontSize{12pt} +\SetHeadFootStyle{3} +\SetPDFX[CGATSTR001]{X-1a:2001} + +\begin{document} + +\begin{ChapterDisplay}[14] +\null +\ChapterTitle{\textbf{NOVEL}} +\ChapterSubtitle{A Document Class for the Rest of Us} +\null\null +\ChapterDeco[4]{\decoglyph{r9554}} +\null +{\centering\emph{It was a dark and stormy night.}\par} +\end{ChapterDisplay} + +The \emph{novel} document class is for writers of original fiction, to be printed to paper, with particular attention to the requirements of the print-on-demand market. + +If your work is an E-book, or uses color other than gray, or is academic writing, then this document class is not for you. Images are supported, but only as they might be used in fiction; so if your work is a picture book, this class is not for you. + +But if you are writing a detective novel, or science fiction, or a collection of short stories, then read on! + + +\QuickChapter[5em]{1. Features} + +Throughout, it is assumed that the purpose of your writing is a commercially printed book. + +Unlike the PDF you are reading now, \emph{novel} is pre-configured to produce a standard trade book size of 5.5in W x 8.5in H, with layout margins that are likely to be acceptable to the most widely-used print services. But if that is not the size or layout you want, then there are commands that configure just about anything, using standard terminology and understandable purpose. Best of all, the HTML documentation comes with images and examples, so you know what you are +doing. + +Almost everything is pre-configured to “just work,†even the choice of fonts. The chosen compiler is LuaLaTeX, and Open Type fonts are loaded using fontspec technology. If you have a professional font that you prefer to the defaults, it will be easy to load and use in UTF-8. + +Many standard LaTeX commands are disabled. This may surprise you at first. But \emph{novel} is focused on one thing only. Anything that might interfere with that purpose may have been tossed aside. So, be sure that you read the documentation! If you take an existing LaTeX document and just change the class to \emph{novel}, it is very unlikely to work as expected. + +Many new commands are provided. They are focused on the needs of print fiction writers, period. Best of all, \emph{novel} has built-in PDF/X technology that exceeds the capabilities currently available via other LaTeX packages. + + +\QuickChapter[5em]{2. Complete Documentation} + +The complete documentation is in HTML format, directly written and validated in HTML rather than extracted from code. There are numerous examples and images, too detailed to be presented as PDF. + + +\QuickChapter[5em]{3. Project Page} + +The \emph{novel} code is hosted by GitHub: + +{\centering https://github.com/RobtAll/novel\par} + +There, you will find a complete novel (public domain text) in its source code and finished print-ready PDF. There may also be extras that are not part of the LaTeX code. + +A predecessor of this document class has actually been used for a commercially marketed print-on-demand novel. + + +\QuickChapter[5em]{4. License} + +The LaTeX code, and accompanying documentation, is released under the terms of the LateX Project Public License, version 1.3c or later. + +The companion font NovelDeco.otf is licensed under the SIL Open Font License, version 1.1. + + +\QuickChapter[5em]{5. Version} + +The initial release of novel via GitHub was on February 20,2017. A number of minor but useful changes were made in the following week. The first CTAN version is 1.0.5, released February 28, 2017. Based on feedback, version 1.0.5 was upgraded to version 1.0.6 On March 1, 2017, +for enhanced compatibility with TeXLive structure. + + +\end{document} + diff --git a/Master/texmf-dist/doc/lualatex/novel/noveldocs-01-overview.html b/Master/texmf-dist/doc/lualatex/novel/noveldocs-01-overview.html new file mode 100644 index 00000000000..12c328abff7 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/noveldocs-01-overview.html @@ -0,0 +1,873 @@ +<!DOCTYPE html> +<html lang="en"> +<head> +<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> +<title>Class novel - 1 - Overview</title> +<link rel="stylesheet" type="text/css" href="html-resources/novel-doc.css"/> +</head> + +<body> +<div id="master"> + + +<div id="toc"> + +<p>Document class "novel"</p> + +<p><a href="#a1">1. Overview</a></p> + +<ul> +<li><a href="#a1.1">1.1 Description</a> + <ul> + <li><a href="#a1.1.1">1.1.1 Licensing</a></li> + <li><a href="#a1.1.2">1.1.2 Installation</a></li> + <li><a href="#a1.1.3">1.1.3 Credits</a></li> + </ul></li><!-- end 1.1 --> +<li><a href="#a1.2">1.2 Differences. Important!</a> + <ul> + <li><a href="#a1.2.1">1.2.1 LuaLaTeX, fontspec,<br/><span style="visibility:hidden">1.2.1 </span>utf-8, Open Type</a></li> + <li><a href="#a1.2.2">1.2.2 $ = dollar, not math mode</a></li> + <li><a href="#a1.2.3">1.2.3 TeX Size Commands<br/><span style="visibility:hidden">1.2.3 </span>Are Disabled</a></li> + <li><a href="#a1.2.4">1.2.4 Raster Images Only</a></li> + <li><a href="#a1.2.5">1.2.5 Academic Structure Disabled</a></li> + <li><a href="#a1.2.6">1.2.6 Think for Yourself</a></li> + </ul></li><!-- end 1.2 --> +<li><a href="#a1.3">1.3 Book Design Terminology</a> + <ul> + <li><a href="#a1.3.1">1.3.1 Sheet, Page, Leaf, Folio</a></li> + <li><a href="#a1.3.2">1.3.2 Page Spread, Recto, Verso, Line Grid</a></li> + <li><a href="#a1.3.3">1.3.3 Perfect Binding, Spine Signature</a></li> + <li><a href="#a1.3.4">1.3.4 Gutter</a></li> + <li><a href="#a1.3.5">1.3.5 Trim Size</a></li> + <li><a href="#a1.3.6">1.3.6 Media Size, TrimBox</a></li> + <li><a href="#a1.3.7">1.3.7 Setting Layout Dimensions</a></li> + </ul></li><!-- end 1.3 --> +<li><a href="#a1.4">1.4 Interior Organization</a> + <ul> + <li><a href="#a1.4.1">1.4.1 Front Matter</a></li> + <li><a href="#a1.4.2">1.4.2 Main Matter</a></li> + <li><a href="#a1.4.3">1.4.3 Back Matter</a></li> + </ul></li><!-- end 1.4 --> +<li><hr/></li> +<li><a href="#a1.5">1.5 Command Summary: Preamble</a> + <ul> + <li><a href="#a1.5.1">1.5.1 Class Options</a><br/> + <ul> + <li>draft, graytext, shademargins, cropmarks, cropview, closecrop, xml</li> + </ul> + </li> + <li><a href="#a1.5.2">1.5.2 Metadata (File Data)</a> + <ul> + <li>\SetTitle, \SetAuthor, \SetSubtitle, \SetApplication, \SetProducer, \SetPDFX</li> + </ul> + </li> + <li><a href="#a1.5.3">1.5.3 Page Layout</a> + <ul> + <li>\SetTrimSize, \SetMargins, \SetFontSize, \SetLinesPerPage, \SetHeadFootStyle, \SetHeadJump, \SetFootJump, \SetMediaSize, \SetCropmarkGap, \ReworkTrimSize, \ReworkMargins</li> + </ul> + </li> + <li><a href="#a1.5.4">1.5.4 Font Setup</a> + <ul> + <li>\SetMainFont, \SetHeadFont, \SetChapterFont, \SetSubchFont, \SetDecoFont, \SetSansFont, \SetMonoFont, \NewFontFamily, \NewFontFace</li> + </ul> + </li> + <li><a href="#a1.5.5">1.5.5 Other Configuration</a> + <ul> + <li>\SetRectoheadText, \SetVersoHeadText, \SetEmblems, \SetPageNumberStyle, \SetLooseHead, \SetChapterDisplay, \SetIndentAfterScenebreak, \SetMarkerStyle, \microtypesetup, \setmainlanguage</li> + </ul> + </li> + </ul> +</li> +<li><a href="#a1.6">1.6 Command Summary: Document Body</a> + <ul> + <li><a href="#a1.6.1">1.6.1 Book Divisions</a> + <ul> + <li>\frontmatter, \mainmatter, \backmatter</li> + </ul> + </li> + <li><a href="#a1.6.2">1.6.2 Display Pages</a> + <ul> + <li>\begin{legalese}, \begin{toc}, \tocitem, \begin{ChapterDisplay}, \ChapterTitle, \ChapterSubtitle, \ChapterDeco, \thispagestyle, \FirstLine, \clearpage</li> + </ul> + </li> + <li><a href="#a1.6.3">1.6.3 Block-Level Breaks and Styling</a> + <ul> + <li> \QuickChapter, \scenebreak, \sceneline, \scenestars, \begin{parascale}, \begin{adjustwidth}</li> + </ul> + </li> + <li><a href="#a1.6.4">1.6.4 Footnotes and Endnotes</a> + <ul> + <li>\footnote, \endnote, \endnotetext, \realmarker, \fakemarker</li> + </ul> + </li> + <li><a href="#a1.6.5">1.6.5 Images</a> + <ul> + <li>\InlineImage, \BlockImage</li> + </ul> + </li> + <li><a href="#a1.6.6">1.6.6 General Text Styling</a> + <ul> + <li>\charscale, {\somefont...}, \forceindent, \backindent, \hangindent, \acronym, \decoglyph, \squeeze, \crush, \color, \textcolor, \memo, $, \nfs, \nbs</li> + </ul> + </li> + <li><a href="#a1.6.7">1.6.7 Some other LaTeX Commands</a> + <ul> + <li>A list of selected commands, not specific to this document class, that might be useful. Not comprehensive.</li> + </ul> + </li> + <li><a href="#a1.6.8">1.6.8 Disabled LaTeX Commands</a> + <ul> + <li>In general, commands and environments pertaining to math, font sizes, theses, floats, tables, and images (other than novel's own commands) are entirely disabled.</li> + </ul> + </li> + <li><a href="#a1.6.9">1.6.9 Discouraged LaTeX Commands</a> + <ul> + <li>A short list of commands that you should not use, because of undesired side effects in this document class.</li> + </ul> + </li> + </ul> +</li> +</ul> + +<p> </p> +</div><!-- end toc --> + + + + +<div id="main"> +<a id="thetop"></a> +<h1>Documentation for <code>novel</code> document class</h1> +<p>Documentation version: 1.0.6.</p> + +<div class="pagetopage"> +<p><b>User Guide</b></p> +<p>1. Overview</p> +<p><a href="noveldocs-02-class-options.html">2. Class Options</a></p> +<p><a href="noveldocs-03-metadata-pdfx.html">3. Metadata, PDF/X</a></p> +<p><a href="noveldocs-04-layout.html">4. Page Layout</a></p> +<p><a href="noveldocs-05-fonts.html">5. Choosing Fonts</a></p> +<p><a href="noveldocs-06-header-footer.html">6. Headers, Footers</a><br/> +<p><a href="noveldocs-07-text-size-style.html">7. Text Sizes, Styles</a></p> +<p><a href="noveldocs-08-images.html">8. Using Images</a></p> +<p><a href="noveldocs-09-chapters-displays.html">9. Chapters, Display Pages</a></p> +</div> + + +<a id="a1"></a> +<h2 style="clear:none">1. Overview</h2> + +<p><b>Read This:</b> The novel class has a lot of possible settings, and a command structure that differs from other document classes in many ways. So, there is a lot of documentation. But you probably do not have to read most of it.</p> +<p>Before you panic, look at the <code>borderland.tex</code> demonstration file. It uses default settings, See how easy that can be?</p> + + +<a id="a1.1"></a> +<h3 style="clear:none">1.1 Description</h3> + +<p>The <code>novel</code> document class is intended for writers of original fiction, such as novels and collections of short stories. For this purpose, it provides easy-to-use settings that are pre-configured for the most common book Trim Sizes, according to publishing standards. The class uses the advanced typographic features of LuaTeX, fontspec, and microtype, and has the built-in capability to produce files compliant with PDF/X. All these capabilities are accessed via simple front-end commands that do the work for you, thereby reducing the learning curve.</p> + +<p>PDF/A and other formats pertaining to digital publication (e-books) are not supported, and never will be. If that is what you need, then this is the wrong document class for you.</p> + +<p>Bibliography, Floats, Tables, Math Mode, automatic generation of title page and table of contents... Forget them! Many of the TeX features used for academic work have reduced functionality, or are entirely disabled, in <code>novel</code> class. There is a reason for this. If you need them, find another document class. There is minimal support for page-bottom footnotes, but good support for raster (not vector) images.</p> + +<p>The demonstration file "borderland.tex" was prepared from text in the Public Domain. However, that is an exception. Services that commercially print and distribute books normally will not accept Public Domain works, because such books are already in the marketplace at lower cost.</p> + +<p>The class makes typographic choices that are best suited to <em>original</em> fiction, where you can easily resolve problematic typesetting by re-writing your own work. In particular, there is no effort to control widows and orphans.</p> + +<p>If you are ready to typeset your great detective novel, or your collection of sci-fi short stories, then <code>novel</code> is for you.</p> + + +<h4>1.1.1 Licensing</h4> + +<p>The <code>novel</code> document class, including software, examples, documentation and supporting images, is distributed under the terms of the LaTeX Project Publc License, either version 1.3c of this license or (at your option) any later version. The exception is the included font NovelDeco.otf, which is distributed under terms of the SIL Open Font License, v.1.1. Small portions of the software use code placed on the Internet under terms of Creative Commons 3.0-by-sa license; attributions are provided at the places where such code is used.</p> +<p>To ensure that your book may be sold commercially, be careful to use only fonts that allow commercial usage. That may exclude some of the fonts in the LaTeX font catalog.</p> + + +<h4>1.1.2 Installation</h4> + +<p>Unless and until <code>novel</code> becomes part of TeX distributions, it must be manually installed in a "local" or "home" TeX directory. If obtained as a single compressed archive, the internal folder tree is already in correct configuration.</p> +<p>Fonts from the <code>libertinus</code> package are required. They may be obtained through your TeX distribution. Note that neither <code>\RequirePackage{libertinus}</code> nor <code>\usepackage{libertinus}</code> will be effective. You must obtain and install the fonts yourself, or manually through your distribution's package manager.</p> +<p>Depending on how you obtain the files, you may need to update the file name database. In TeXlive, try command line <code>mktexlsr</code>. In MiKTeX, use the <code>Options > Update FNDB</code> button.</p> +<p>Since you will be using LuaTeX, the font cache will be updated to include the newly-installed fonts, the next time you run this software. However, I recommend that you force a full cache refresh, by locating the <code>luatex-cache</code> directory, and discard its contents. The cache may be anywhere (sadly), so you will have to hunt for it. If you have never used LuaTeX before, it may not exist. If there are any updates to the fonts, then a manual cache refresh is necessary.</p> + + +<h4>1.1.3 Credits</h4> + +<p>My method of "programming" (note the scare quotes) largely involves looking for solutions on the Internet, then using or modifying code provided by others with allowable license terms. Thus, within the TeX code files, you will find places where small or large pieces of code are the work of someone else, released by them for LaTeX purposes. Names or organizations are credited where the code is used.</p> +<p>Various clipart graphics were obtained from openclipart.org. The NovelDeco.otf font is partly derived from [Linux] Libertine O, using FontForge.</p> + + + + + +<a id="a1.2"></a> +<h3>1.2 Differences. Important! Read This!</h3> + +<p>There are several ways that <code>novel</code> is very different from other TeX document classes. Before you wonder why your document doesn't work, you need to understand the differences. All of these are features, not bugs. They are done with the intent of making <code>novel</code> best for its intended purpose.</p> + + +<a id="a1.2.1"></a> +<h4>1.2.1 LuaLaTeX, fontspec, utf-8, and Open Type fonts</h4> + +<p><img class="floatright" src="html-resources/doordie.png" width="279" height="300" alt="Thou Shalt"/> With <code>novel</code>, you will be using the LuaLaTeX engine, whether you like it or not. No pdfTeX, no XeTeX, no dvips. You do not have to understand Lua code, since the heavy lifting is already done for you.</p> +<p>Forget about <code>fontenc</code> and <code>OT1</code> and other TeX exotica that go so far back in time, most folks did not have a cell phone. The built-in <code>fontspec</code> package handles modern Open Type fonts, and is able to access their internal features. The syntax is easy to learn, and very powerful. And, you can directly include text with diacritical marks, Greek, Cyrillic, and most other utf-8 encoded characters in your document. All you need are the fonts. You will wonder why you never did this before. The method for loading fonts is described on Page 5.</p> +<p>You must use utf-8 (Unicode) encoding in all parts of your code and document. No choice. Only utf-8, without BOM. Instead of typing TeX codes such as <code>\`{e}</code> you can simply paste <code>è</code> from a Unicode character map. Other alphabets such as Greek and Cyrillic are directly supported, if your fonts support those character sets.</p> +<p>Be sure that your editor uses utf-8 encoding without BOM. If you are on Linux (and presumably OS/X) then this is the default for your system. If you are on Windows, do not use Notepad! The free Notepad++ program (also Portable version) does the job. Configure it as specified.</p> + + +<a id="a1.2.2"></a> +<h4 style="clear:both">1.2.2 A dollar is a dollar, not math mode</h4> + +<p><img class="floatright" src="html-resources/trdol.png" width="238" height="67" alt="a dollar is a dollar"/> When you type <code>$</code> in the document body, with or without a preceding backslash, <em>you do not enter or leave math mode</em>. What you get is the dollar symbol. This has no effect in the Preamble, where the dollar sign has its usual TeX special meaning.</p> +<p>If you really need math mode, you can use <code>\(</code> ... <code>\)</code>. But, why? You are writing a novel, yes? You shouldn't need math mode.</p> + + +<a id="a1.2.3"></a> +<h4>1.2.3 Standard text size commands are disabled</h4> + +<p>Would you like to size text, using command such as <code>\small</code> or <code>\LARGE</code>? Bah! They will be ignored. Write these commands, and the text will appear at its usual size, just as if the commands did not exist.</p> +<p>There is a reason for this behavior, related to the need for constant line spacing. Thus, <code>novel</code> provides its own capability to size text, using different commands. Read about it, on <a href="noveldocs-07-text-size-style.html">Page 7</a>.</p> + + +<a id="a1.2.4"></a> +<h4>1.2.4 Images must be raster png or jpg</h4> + +<p>You read that correctly. Sometimes fiction uses images, especially for the title page and chapter titles. With <code>novel</code>, do not use vector formats such as <code>eps</code>, <code>svg</code>, or <code>pdf</code> images. Use raster images in <code>png</code> or <code>jpg</code> format.</p> +<p>There is a reason for this, explained on Page 9, where the use of images is discussed in detail. Be sure to read it, as <code>novel</code> has its own way to place images, in a way that is most likely to work well with fiction.</p> + + +<a id="a1.2.5"></a> +<h4>1.2.5 Numerous academic-purpose commands are disabled</h4> + +<p><img class="floatright" src="html-resources/fpaper.png" width="134" height="215" alt="flunked math"/> Commands such as <code>\section</code>, <code>\chapter</code>, <code>\abstract</code>, <code>\index</code>, <code>\tableofcontents</code>, <code>\maketitle</code>, and many other structural commands will not work with <code>novel</code>. Those are for academic papers. The results they would produce (if enabled) would be inappropriate for fiction. If you attempt to use them, you will either get an error message, or they will simply be ignored.</p> +<p>Novelists do not need many ways to distinguish chapters. With <code>novel</code> there are commands specifically created for the needs of fictional works. They are described on <a href="noveldocs-09-chapters-displays.html#a9.5">Page 9</a>.</p> +<p>Also, the <code>float</code> and <code>table</code> environments are ineffective.</p> + + +<a id="a1.2.6"></a> +<h4>1.2.6 Think for yourself</h4> + +<p>When LaTeX processes a document on a paragraph-by-paragraph basis, it chooses the layout that has the least total "penalty." Penalties are assessed based on factors such as word spacing, inter-line spacing, hyphenation, widows, and orphans. You may choose the value of each penalty.</p> + +<p>With <code>novel</code>, inter-line spacing is fixed. No plus-or-minus. Hyphens are allowed, but strongly penalized. A reasonable amount of altered word spacing is allowed, and the built-in <code>microtype</code> package allows reasonable changes to letter spacing and the letters themselves. These choices achieve a high level of visual appeal and readability for flowing text.</p> + +<p>However, there is little penalty for widows or orphans. When you process a document with <code>novel</code> you are likely to find widows and orphans on many pages. This choice was made for several reasons. First, attention to widows and orphans would reduce the effectiveness of the other, more imprtant, layout penalties. Second, fiction often has numerous short paragraphs (especially with dialogue), and it is very difficult for software to deal with all of them. Third, it's your book... Rewrite it!</p> + +<p>If TeX isn't formatting paragraphs in an attractive manner, then rewrite your work. It's that simple.</p> + + +<a id="a1.3"></a> +<h3>1.3 Book Design and Terminology</h3> + +<p>If you are preparing a PDF for the print-on-demand (P.O.D.) market, and I assume you are, then you need to understand how terms are used in the <code>novel</code> document class (and LaTeX in general). The reason is that most authors in P.O.D. use an ordinary word processor, particularly MS Word. For that reason, many print services, and most online user forums, refer to the terminology and settings of MS Word, rather than to the meanings in traditional book publishing. In the case of images, Photoshop settings are often described. And, the more advanced authors may be using InDesign. Yes, there are authors using LaTeX and GIMP (I am among them), but they are not the ones who make the most noise. And, if you visit web sites and forums devoted to LaTeX, they primarily address the concerns of academic writers, particularly mathematicians, because that is the target user base for LaTeX.</p> + +<p>Here, I will present a brief overview of what key terms mean. In some cases, I will also describe how the same terms mean different things, to those who use other software. Pay attention!</p> + + +<a id="a1.3.1"></a> +<h4>1.3.1 Sheet, Page, Leaf, Folio</h4> + +<p>A <b>sheet</b> of paper is a single, physical piece of paper, regardless of whether anything is printed on it, or where. Often, paper starts out as a large sheet that will subsequently be cut into smaller sheets. The size doesn't matter. A sheet of paper is, in ordinary understanding, a piece of paper.</p> + +<p><img class="floatright" src="html-resources/page-leaf.png" width="490" height="155" alt="page, leaf"/> In a finished book, a <b>page</b> is one side of a <b>leaf</b>. Thus, there are always exacttly twice as many pages are there are leaves. From the manufacturer's point of view, a 240-page (double-sided printing) book has 120 leaves, regardless of whether or not anything is printed on the pages, or how they are numbered.</p> + +<p>If you take a sheet of 8.5" x 11" paper, and fold it in half across its width, you create a <b>folio</b>, consisting of one sheet of paper (as before), two leaves (previously one), and four pages (previously two), sized 5.5" x 8.5". Now, think about how those four pages must be numbered. Page 1 and page 4 are printed on the same side of the sheet, with pages 2 and 3 on the opposite side of the sheet. This is not the order they would be printed, if you were merely shrinking the text so that twice as much fit on one side of the sheet. The process of re-arranging the pages, and placing them in the correct positions (often involving rotation) is called <b>imposition</b>. Your home printer can do it, for the simple example described. But in the case of commercial book preparation, the imposition process is much more involved, and uses advanced software.</p> + +<p>Caution, The term "folio" has several different meanings, even in the narrow field of book publishing. It may refer to folded paper, as mentioned above. Or it may refer to a particular sheet size of paper ("foolscap"). Or, it may simply refer to the number printed on a page. This last use of "folio" will be discussed in the context of headers and footers.</p> + + +<a id="a1.3.2"></a> +<h4>1.3.2 Page Spread, Recto, Verso, Line Grid</h4> + +<p><img class="floatright" src="html-resources/linegrid.png" width="303" height="234" alt="line grid"/> When a book is opened somewhere in its middle, you see a <b>page spread</b>. At right is the <b>recto</b> odd-numbered page, and at left is the <b>verso</b> even-numbered page. With continuous text, the lines of text on the verso must be in the same vertical position as the lines of text on the recto, and each line must be equally spaced. This is the <b>line grid</b>. Maintaining a proper line grid is essential to the <code>novel</code> class, and is why some <code>novel</code> commands differ from how they are used in academic works with other document classes.</p> + + +<a id="a1.3.3"></a> +<h4>1.3.3 Perfect Binding, Spine, Signature</h4> + +<p><img class="floatright" src="html-resources/perfectbinding.png" width="160" height="290" alt="perfect binding"/> Most modern softcover books (and some inexpensive hardcovers) are manufactured using a process named <b>Perfect Binding</b>. The finished book has individual foils, glued together at the <b>spine</b>. There are several stages to the process. First, the books is subdivided into a number of <b>signatures</b>, each of which is a group of folios (typically 6). The imposition software calculates which page goes at which position on each folio, and also tweaks the positions to allow for the slight displacement of each folio, due to paper thickness. In each signature, the folios are like nested V. The signatures are clamped together in a block. Then the folded area is removed by a machine, so that there are no longer any signatures or folios, just individual leaves. Finally they are glued together, possibly with a reinforcement, and the cover is attached.</p> + +<p>If you order your book in hardcover, it is likely to use the same production method, but with harder covers. So, don't think that your hadcover book will be like the expensive reference books you see in the library. Those books use a different, and much more expensive, binding method.</p> + + +<a id="a1.3.4"></a> +<h4>1.3.4 Gutter</h4> + +<p><img class="floatright" src="html-resources/whichgutter.png" width="276" height="219" alt="perfect binding"/> To allow for the fact that most binding cannot be opened flat, the spine edge of each page must have an allowance for the loss of visible area there. The word <b>gutter</b> is used in this context.</p> +<p>Alas, some folks use <em>gutter</em> to mean the extra allowance for each page; others use it to mean the combined allowance for a two-page spread; and others use it to mean the full spine-side margin from the text, which is a larger value. So if you read about the gutter from different sources, the numbers may not make sense, because the word is being used with different meanings. It could be any of A, B, C, or D in the accompanying diagram. I won't be using the term, except indirectly.</p> + + +<a id="a1.3.5"></a> +<h4>1.3.5 Trim Size</h4> + +<p><img class="floatright" src="html-resources/tbrectomar.png" width="144" height="223" alt="trim size recto"/> <b>Trim Size</b> is the finished size of your book, width and height (but not thickness). In the case of hardcover books, where the cover is larger than the contents, it is (usually) the cover size that is measured, with the internal trim size being slightly smaller than nominal</p> + +<p>In the USA, 5.5" x 8.5" is often used for softcover fiction. This is the default setting in <code>novel</code>. It seems to be the case that nonfiction prefers the slightly larger 6" x 9" trim size. Both of these are known as "trade" sizes.</p> + +<p><b>Margins</b> are required on all four edges of the page. They do not have to be the same width. Generally the margin at the spine edge (inside margin) is wider. The above illustration shows a typical recto page on a layout with header and footer. The margins have been shaded gray in the picture (but, not in the book).</p> + +<p>Normally, your TeX document will be compiled to a PDF that is electronically at the exact Trim Size. And normally, print services want it to be that way. When you view your PDF, the text will shift from side to side as you move through the pages, due to the slightly increased margin at the spine edge. Note that in the above image, the spine margin (at its left) is a little larger than the outside margin (at its right).</p> + + +<a id="a1.3.6"></a> +<h4>1.3.6 Media Size, TrimBox</h4> + +<p style="clear:both"><img class="floatright" src="html-resources/mbcrectomar.png" width="202" height="264" alt="media size recto"/> In a few cases, the commercial printer will request that the PDF page size be something larger than the Trim Size of your book. In PDF terminology, the larger dimensions are the <b>Media Size</b>. Typically, the Media Size will be U.S. Letter, or A4, and the Trim Size must be floated in the center, horizontally and vertically. As an alternative, the Trim Size will be at the edge. Something of the sort happens when you print a copy of your PDF at home, where your printer's paper tray has letter or A4, not the Trim Size.</p> +<p>Do not use a Media Size larger than the Trim Size, unless the commercial printer requests it.</p> +<p>Since your PDF is being prepared for commercial print production, it will have an invisible <code>TrimBox</code> automatically encoded. This information tell the printer where the Trim Size is located. If (as usual) the Trim Size and Media Size are identical, then the TrimBox is the full size of the PDF page. But when the Trim Size is smaller than the Media Size, the TrimBox defines where the paper will be trimmed. Although it is not normally marked on the PDF page and never appears in print, some PDF viewers allow you make the TrimBox visible.</p> +<p>In the accompanying diagram, the TrimBox is shown as a green line. The margins, shaded gray, are measured relative to the Trim Size, not relative to the Media Size. The excess area beyond the Trim Size is "wasted paper" that will not become part of the book.</p> +<p>Caution: If you are following someone else's instructions about setting margins, the odds are that the instructions apply to MS Word or maybe InDesign, not to TeX. In those other programs, the margin settings may include the wasted area beyond the Trim Size, because they are referring to margins <em>within the program</em> rather than the physical margins <em>of your book</em>.</p> + + +<a id="a1.3.7"></a> +<h4>1.3.7 Setting Layout Dimensions</h4> + +<p>Now that you know what the terms mean, how do you set them? This is described in detail on Page 4.</p> +<p>In <code>novel</code> class, everything is pre-configured according to "likely" layout, for the specified book Trim Size. And, if you don't choose the Trim Size, the popular 5.5"W x 8.5"H size will be chosen for you.</p> + + + +<a id="a1.4"></a> +<h3>1.4 Interior Organization</h3> + +<p>Now let us examine how a book is structured from front to back, in terms of internal organization of its content.</p> + + +<a id="a1.4.1"></a> +<h4>1.4.1 Front Matter</h4> + +<p>Roughly speaking, front matter identifies and describes the book, but is not the story itself.</p> +<p>There is some wiggle room regarding what constitutes the story. In a genre where the book is supposed to be a lost manuscript written by someone else, or the translation of a (nonexistent) ancient book, the author may have introductory material describing how the book was discovered or translated. Of course, that is also a fictional part of the story. But the author may choose to place such an introduction in front matter, pretending that it is a factual description. Or, in any genre, a real or imaginary map of the locale may be in front matter, if it improves the book's overall appearance.</p> +<p>Front matter begins with the <code>\frontmatter</code> command, which should be the first thing in the body of your document. This command sets the page numbering to lowercase roman. Most or all of the front matter page numbers will not appear in print, but they will appear in lowercase roman when viewed with most PDF readers.</p> +<p>Front matter often contains only blank pages and "display" pages that stand by themselves. For each such page, use <code>\thispagestyle{empty}</code> to ensure that the page has no heading or printed page number.</p> +<p>If you ever need to "drop folio," commands for that purpose are described on <a href="noveldocs-06-header-footer.html#a6.2.2">Page 6</a>. If you need a Table of Contents, see <a href="noveldocs-09-chapters-displays.html#a9.3">Page 9</a>. Note that the standard TeX methods do not work in <code>novel</code>.</p> +<p><b>Page i.</b> As a matter of tradition, the very first page (i) recto, is the Half Title. This page contains only the book's title (not even subtitle). It may be stylized or in the form of an image, but is less prominent than the subsequent full title.</p> +<p><b>Page ii.</b> The following page (ii) verso, is most often blank. Sometimes, a list of books by the same author can be placed here. Or, if the book is part of a series of related books, that can be mentioned. However, be aware that your print and distribution service may not allow such a list, unless they also carry all of the works listed. Another possibility is an illustration (professional artwork, not clip art). If your story has a map, and you don't know where else to put it, then the map can go here.</p> +<p><b>Page iii.</b> The next page (iii) recto, is the Full Title Page. This contains the title (preferably decorative image), subtitle if any, author's name, and publisher's imprint (if any). Note that in the self-pbulishing market, your print and distribution service is not the publisher, <em>you are</em>. Some authors take the trouble to establish a publishing business name and logo. If so, put it at the bottom of this page. Your service <em>might</em> permit you to write something such as "Available from CremateSparks and Other Booksellers," as long as it does not imply that they are the publisher or sole distributor. The contract you have with them will say what you may or may not do.</p> +<p><b>Page iv.</b> Next (iv) verso is the Copyright Page. It contains a number of elements. Look at other books for models. Special note: Do not use a "copyleft" notice, even if you are feeling generous.</p> + +<p><b>Page v.</b> If your book has a Dedication, it must appear on page (v) recto. Not all books have one. Nowadays, dedications are best put on a web site, where you can delete or change them with circumstances. Although there are some famous authors who write silly dedications, you are not famous, so don't do it.<p> +<p>Consider using a generic dedication, if you feel that one is necessary. For example, if your book is combat fiction, you might write "To our Armed Forces." If it is a murder mystery, "To all those who wish that crimes could be solved so easily." + +<p>If you do not have a Dedication, then place a Table of Contents on Page (v), if your book has one. Not all books do. In fiction, a Table of Contents is most often used when chapters are distinctive, with their own chapter titles.</p> + +<p>Proceed to whatever else ought to go in front matter. But what if there is nothing else? This is quite possible in fiction. You don't always need a Dedication or Table of Contents, and you probably do not need a Preface or Introduction. It is bad practice to go directly from the Copyright page to the beginning of the story, because the page spread (legalese at left, story at right) looks awkward and unprofessional. So, what can you put on page (v) as a filler?</p> +<p>Epigraph to the rescue! A book doesn't need one, but they look good. An epigraph is a short quotation from someone else's book or sayings, which sets the tone or theme of your own book. It can also imply that your book is in that genre. Copyright law applies, so be sure that the quotation is Public Domain. Permission from an author may not be good enough, since many authors transferred copyright to someone else. You can also use a fictional epigraph, from a book that does not exist. For example, if your book is sword-and-sorcery, you might provide an "Incantation from the Grimoire of Doh-Beer." In desperation, you can pick something from your own book. Keep it short.</p> + +<p><b>Page vi.</b> If you have nothing else in front matter, then page (vi) verso is blank. Then the following recto is page (1), the beginning of your story.</p> + +<p>When there is more to front matter, consult references on book design, to see what goes where.</p> + + + + + +<a id="a1.4.2"></a> +<h4>1.4.2 Main Matter</h4> + +<p>The <code>\mainmatter</code> command marks the beginning of your story. It goes at the top of a recto page, immediately following the <code>\clearpage</code> commands that ends the front matter.</p> +<p><code>\mainmatter</code> changes page numbering to arabic, and sets its count to 1. It also remembers the past-used page number in front matter, for possible later use.</p> +<p>The question is: Where does main matter actually begin?</p> +<p>Traditionally, main matter is the beginning of the story text. Non-text items, such as maps, are placed in front matter unless they are introduced later in the story.</p> +<p>If the front matter is long (no particular length), then it is customary to place another Half Title recto page separating front matter from the story. Then, this second Half Title is page 1, its verso 2 is blank, and the text of the story actually starts on page 3. Or, if the story is broken into distinct Parts (not just chapters), then the cover for Part One would be page 1, its verso 2 blank, and again the story would begin on page 3.</p> +<p>One genre is the "recently discovered manuscript" or "translation from ancient writings" tale. There is usually an introduction to the story from the fictional archaeologist, discoverer, or translator. Even though the introduction is fiction by a fictional person, it is customary to include it in front matter, just as if it were real. But it could be placed as the start of the story in main matter, instead.</p> +<p>If you need footnotes and/or endnotes, they can be done. See <a href="noveldocs-09-chapters-displays.html#a9.7">Page 9</a>. But be aware that <code>novel</code> has only minimal provisions for such things, and will not automatically compile them as an addendum.</p> +<p>In <code>novel</code>, you do not mark new chapters using a <code>\chapter</code> command. Instead you use special commands, specifically created to meet the needs of fiction. These are described on <a href="noveldocs-09-chapters-displays.html#a9.5">Page 9</a>.</p> +<p>If your book has distinct parts (say, it is two novelettes in one), you should separate them with their own internal "cover" pages (recto), followed by a verso that is often blank, then the start of the part-story on the next recto. There is no particular <code>novel</code> command for this purpose. You have to design those pages yourself.</p> + + +<a id="a1.4.3"></a> +<h4>1.4.3 Back Matter</h4> + +<p>Fiction almost never needs back matter. Closing remarks by the author, or by a fictional character who introduced the story, can be treated as just another form of chapter. Even endnotes (which are themselves fictional) are treated as a continuation of main matter.</p> +<p>If you wish to provide a separator, you can use one of four commands, immediately following <code>\clearpage</code>:</p> + +<p><code>\backmatter</code> is a do-nothing command. It merely informs you that what follows is considered back matter, in case someone is looking into your TeX code. Page numbers continue as arabic.</p> + +<p><code>\backmatter*</code> (with asterisk) puts page numbers in lowercase roman, continued from where the front matter left off.</p> + +<p><code>\Backmatter</code> (capital B) uses uppercase Roman, beginning at I.</p> + +<p><code>\Backmatter*</code> (capital B, asterisk) uses uppercase Roman, continued from where the front matter left off.</p> + +<p>In <code>novel</code>, you cannot automatically construct a bibliography or index, they way you can do it with other TeX document classes.</p> + + + + + + + + + + + + + + + + +<a id="a1.5"></a> +<h3>1.5 Command Summary: Preamble</h3> + +<p style="clear:none;">Here is a list of commands created by <code>novel</code> class, plus a few of the many <code>LaTeX</code> commands that are likely to be most useful in fiction. Commands are sorted according to where they would be used.</p> + +<p style="clear:none;">Do not let the many Preamble settings intimidate you. All of them are pre-configured with default values that were carefully chosen for use in fiction. You may not need to write many settings.</p> + +<p style="clear:none;">Since <code>novel</code> is specifically intended for fiction, such as novels and collections of short stories, it does not implement many of the commands familiar to academic writers. In some cases, where such commands would interfere with <code>novel</code> commands, the academic commands have been entirely disabled. In particular, the dollar symbol <code>$</code> means a dollar, not math mode, once the document body begins.</p> + + +<a id="a1.5.1"></a> +<h4>1.5.1 Preamble: Class Options</h4> + +<p>These commands are further explained on <a href="noveldocs-02-class-options.html">Page 2</a>.</p> + +<p>Unlike other document classes, <code>novel</code> does not use class options to set layout dimensions or font point size.</p> + +<pre class="noindentcmd">draft</pre> +<p>Sets draft mode. Marks horizontal overflow. Enables some other options.</p> + +<pre class="noindentcmd">graytext</pre> +<p>Allows text in gray, not just pure K black.</p> + +<pre class="noindentcmd">shademargins</pre> +<p>Only in draft mode. Applies gray background in page margins.</p> + +<pre class="noindentcmd">cropmarks</pre> +<p>Adds basic cropmarks. Do not use unless required!</p> + +<pre class="noindentcmd">cropview</pre> +<p>Only in draft mode. Removes excess area surrounding TrimBox.</p> + +<pre class="noindentcmd">closecrop</pre> +<p>Only in draft mode. Crops to just clear the live text area.</p> + +<pre class="noindentcmd">xml</pre> +<p>Exports XMP Metadata as an xml file.</p> + + +<a id="a1.5.2"></a> +<h4>1.5.2 Preamble: Metadata (File Data)</h4> + +<p>These commands are further explained on <a href="noveldocs-03-metadata-pdfx.html">Page 3</a>.</p> + +<p>Metadata can be seen by PDF viewers. Some of it can only be seen by professional software. The data identifies your file and describes some of its properties. In the case of PDF/X, choosing a compliance standard will also affect how LaTeX compiles your document.</p> +<p>You may <em>not</em> apply styling to metadata!</p> + +<pre class="noindentcmd">\SetTitle{<em>title of your book</em>}</pre> +<p>Default: empty</p> +<p>The value of this setting is available as <code>\thetitle</code> everywhere.</p> + +<pre class="noindentcmd">\SetSubtitle{<em>subtitle of your book, if any</em>}</pre> +<p>Default: empty</p> +<p>The value of this setting is available as <code>\thesubtitle</code> everywhere.</p> + +<pre class="noindentcmd">\SetAuthor{<em>author of your book</em>}</pre> +<p>Default: empty</p> +<p>The value of this setting is available as <code>\theauthor</code> everywhere.</p> + +<pre class="noindentcmd">\SetPDFX[<em>embed-icc or no-embed</em>]{<em>compliance standard</em>}{<em>output intent</em>}</pre> +<p>Default: off (no compliance set)</p> +<p>PDF/X describes a set of industry standards for print-ready PDF files. Your print service will probably require you to use it.</p> + +<pre class="noindentcmd">Advanced:<br/>\SetApplication{<em>software that created the source document</em>}</pre> +<p>Default: an identifying string, automatically inserted by TeX.</p> + +<pre class="noindentcmd">Advanced:<br/>\SetProducer{<em>software that compiled the PDF</em>}</pre> +<p>Default: an identifying string, automatically inserted by TeX.</p> + + +<a id="a1.5.3"></a> +<h4>1.5.3 Preamble: Layout</h4> + +<p>These commands are further explained on <a href="noveldocs-04-layout.html">Page 4</a>.</p> + +<p>The <code>novel</code> class provides improved alternatives to papersize, offset, and other layout commands used by other document classes. These commands have been carefully chosen to do what you need to do.<p> + +<pre class="noindentcmd">\SetTrimSize{width}{height}</pre> +<p>Default: <code>{5.5in}{8.5in}</code></p> +<p>Fundamental! This is the finished size of your book.</p> + +<pre class="noindentcmd">\SetMargins{top}{outside}{bottom}{inside}</pre> +<p>Default: <code>{0.5in}{0.5in}{0.5in}{0.75in}</code></p> +<p>Relative to Trim Size. Inside means the spine edge.</p> + +<pre class="noindentcmd">\SetHeadFootStyle{number}</pre> +<p>Default: <code>1</code> (header, but no footer)</p> +<p>Chooses whether header, footer, or both. Also chooses the general content of headers/footers. Available choices are pre-defined styles, labeled by number.</p> + +<pre class="noindentcmd">\SetHeadJump{number}</pre> +<p>Default: <code>1.5</code> (corresponds to 1.5 baseline skip)</p> +<p>Controls gap between header and main text, if style uses header.</p> + +<pre class="noindentcmd">\SetFootJump{number}</pre> +<p>Default: <code>1.5</code> (corresponds to 1.5 baseline skip)</p> +<p>Controls gap between main text and footer, if style uses footer.</p> + +<pre class="noindentcmd">\SetFontSize{<em>size</em>}</pre> +<p>Default: <code>11.4pt</code></p> +<p>Sets the normal font size. May be measured in <code>pt</code> or <code>bp</code>, decimals allowed.</p> + +<pre class="noindentcmd">\SetLinesPerPage{<em>integer</em>}</pre> +<p>Default: Calculated automatically from other layout settings.</p> +<p>Main text, not including header/footer. Note than baseline skip (leading) is always calculated, not set by user.</p> + +<pre class="noindentcmd">Advanced:<br/>\SetMediaSize[alignment]{width}{height}</pre> +<p>Default: Identical to Trim Size.</p> +<p>When Trim Size is on larger Media Size.</p> + +<pre class="noindentcmd">Advanced:<br/>\SetCropmarkGap{<em>size of gap</em>}</pre> +<p>Default: <code>0.125in</code> (only effective with cropmarks class option)</p> +<p>Sets gap between TrimBox and cropmarks, when cropmarks are used.</p> + +<pre class="noindentcmd">Advanced:<br/>\ReworkTrimSize{width}{height}</pre> +<p>For emergency use only.</p> +<p>Re-sizes an already-finished layout.</p> + +<pre class="noindentcmd">Advanced:<br/>\ReworkMargins{top}{outside}{bottom}{inside}</pre> +<p>For emergency use only.</p> +<p>Re-sizes an already-finished layout.</p> + + +<a id="a1.5.4"></a> +<h4>1.5.4 Preamble: Choosing Fonts</h4> + +<p>These commands are further explained on <a href="noveldocs-05-fonts.html">Page 5</a>.</p> + +<p>In <code>novel</code>, you will be using Open Type fonts loaded with features by the <code>fontspec</code> package. This permits much more flexibility than can be achieved using ancient <code>TeX</code> font methods. In particular, you never need <code>\usepackage{<em>fontname</em>}</code>, because available Open Type fonts can be loaded without LaTeX support files. If you are not already familiar with <code>LuaLaTeX</code> and <code>fontspec</code> with Open Type fonts, then forget <em>everything</em> you ever learned about <code>TeX</code> fonts, and start fresh.</p> +<p><code>TeX</code> ligatures, such as subtituting <code>“</code> for <code>``</code>, are always enabled. Kerning (Open Type feature <code>kern</code>) is always enabled. Standard ligatures (Open Type feature <code>liga</code>) is enabled for fonts described in this section, including new fonts that you define. However, <code>liga</code> is <em>not</em> enabled by default for specialty fonts that will be described in later sections.</p> + +<pre class="noindentcmd">\SetMainFont[features]{font family}</pre> +<p>Default: <code>Libertinus Serif</code></p> +<p>Alternate: <code>Linux Libertine O</code></p> +<p>Emergency Last Choice: <code>Latin Modern Roman</code></p> +<p>Essential! Denoted <code>{*}</code> when used to define other fonts.</p> +<p>If you permit the default or alternate font family to be chosen automatically, then the Semibold weights will be used in place of Bold. This is not automatically done for any others, becuase most font families do not have Semibold.</p> + +<pre class="noindentcmd">\SetHeadFont[features]{font family}</pre> +<p>Default: <code>[Numbers=Lining, Scale=0.92]{*}</code></p> +<p>Used in each element of headers and footers, unless overridden by other font commands.</p> + +<pre class="noindentcmd">\SetChapterFont[features]{font family}</pre> +<p>Default: <code>[Numbers=Lining, Scale=1.6]{*}</code></p> +<p>Used in <code>\ChapterTitle{}</code> command</p> + +<pre class="noindentcmd">\SetSubchFont[features]{font family}</pre> +<p>Default: <code>[Numbers=Lining, Scale=1.2]{*}</code></p> +<p>Used in <code>\ChapterSubtitle{}</code> command.</p> + +<pre class="noindentcmd">Advanced:<br/>\SetDecoFont[features]{font}</pre> +<p>Default: <code>NovelDeco</code> (any setting must used a derivative of NovelDeco)</p> +<p>Automatically applied as <code>{\decofont...}</code> by certain other commands.</p> + +<pre class="noindentcmd">Advanced:<br/>\SetSansFont[features]{font family}</pre> +<p>Default: <code>Libertinus Sans</code></p> +<p>Alternate: <code>Linux Biolinum O</code></p> +<p>Rarely used in fiction.</p> + +<pre class="noindentcmd">Advanced:<br/>\SetMonoFont[features]{font family}</pre> +<p>Default: <code>Libertinus Mono</code></p> +<p>Alternate: <code>Linux Libertine Mono O</code></p> +<p>Rarely used in fiction.</p> + +<pre class="noindentcmd">Advanced:<br/>\NewFontFamily\<i>yourfontcommand</i>[features]{font family}</pre> +<pre class="noindentcmd2">\NewFontFace\<i>yourfontcommand</i>[features]{font}</pre> +<p>These use <em>fontspec</em> to define your own font commands.</p> + + +<a id="a1.5.5"></a> +<h4>1.5.5 Preamble: Other Configuration</h4> + +<p>These commands are further explained in file <a href="noveldocs-06-otherconfiguration.html">noveldocs-06-otherconfiguration.html</a>.</p> + +<pre class="noindentcmd">\SetRectoHeadText{<em>text</em>}</pre> +<p>Default: Adjusted title, in small caps</p> +<p>The text appears in recto headers, if the page style has headers. This command may also be used from time to time in the document body.</p> + +<pre class="noindentcmd">\SetVersoHeadText{<em>text</em>}</pre> +<p>Default: Adjusted author, in small caps</p> +<p>The text appears in verso headers, if the page style has headers. This command may also be used from time to time in the document body.</p> + +<pre class="noindentcmd">Advanced:<br/>\SetEmblems{<em>verso</em>}{<em>recto</em>}</pre> +<p>Default: both empty</p> +<p>Applies a decoration (emblem) near the page number. Only for selected header/footer styles.</p> + +<pre class="noindentcmd">Advanced:<br/>\SetPageNumberStyle{<em>code using \thepage</em>}</pre> +<p>Default: <code>\thepage</code></p> +<p>Allows page number to be styled (such as italics).</p> + +<pre class="noindentcmd">Advanced:<br/>\SetLooseHead{number}</pre> +<p>Default: <code>50</code></p> +<p>Tweaks tracking of header text, 0 to 200.</p> + +<pre class="noindentcmd">\SetChapterDisplay{<em>choice</em>}</pre> +<p>Default: <code>footer</code> (no header, footer only if used)</p> +<p>Sets the default page style for the start of new chapters. May be locally changed.</p> + +<pre class="noindentcmd">Advanced:<br/>\SetIndentAfterScenebreak</pre> +<p>Default: unset (new scenes do not begin with indent)</p> +<p>If set, new scenes start with paragraph indent.</p> + +<pre class="noindentcmd">Advanced:<br/>\SetMarkerStyle[real/fake]{asterisk/dagger/number}</pre> +<p>Default: <code>[real]{asterisk}</code> +<p>Used for superscripts, subscripts, footnote markers.</p> + +<pre class="noindentcmd">Advanced:<br/>\microtypesetup{<em>see microtype package docs</em>}</pre> +<p>Default: <code>config=novel-microtype,stretch=20,shrink=20,final,tracking</code></p> +<p>Defaults are set for moderate typography suited to fiction. Options <code>final,tracking</code> will always be in effect.</p> + +<pre class="noindentcmd">Advanced:<br/>\setmainlanguage{<em>language</em>} and related commands</pre> +<p>Default: <code>english</code></p> +<p>Several commands from the <code>polyglossia</code> package may be used for language choices.</p> + + + +<a id="a1.6"></a> +<h3>1.6 Document Body</h3> + +<p>These commands are further explained in file <a href="noveldocs-07-documentbody.html">noveldocs-07-documentbody.html</a>.</p> + +<p>Note that standard font size commands, such as \small and \Large, are disabled. Also, the dollar sign is a dollar, not math mode.</p> + + +<a id="a1.6.1"></a> +<h4>1.6.1 Book Divisions</h4> + +<pre class="noindentcmd">\frontmatter</pre> +<p>Page numbering (if shown) is lowercase roman. This division contains title page, copyright page, and usually several other pages that are not the story itself.</p> + +<pre class="noindentcmd2">\mainmatter</pre> +<p>Page numbering re-starts at 1, and is arabic. This division contains the story itself.</p> + +<pre class="noindentcmd2">\backmatter, \backmatter*, \Backmatter, \Backmatter*</pre> +<p>Backmatter typically contains things such as critical notes, bibliography, and appendix. Its use is very rare in fiction, because "fictional backmatter" (fake commentary, for example) is generally regarded as mainmatter. If you need to use backmatter, these commands provide a variety of options regarding page numbering.</p> + + +<a id="a1.6.2"></a> +<h4>1.6.2 Display Pages</h4> + +<p>A <em>display page</em> is one that either stands by itself (such as the book's copyright page), or provides a distinctive opening to new content (such as a chapter title page). In other words, a display page is one that does not merely contain the continuation of flowing text.</p> + +<pre class="noindentcmd">\begin{legalese} <em>...</em> \end{legalese}</pre> +<p>Changes text alignment to left (ragged right), and disables hyphenation. Useful for copyright page. See also <code>parascale</code> environment.</p> + +<pre class="noindentcmd">\begin{toc} <em>...</em> \end{toc}</pre> +<p>Specifically designed for a Table of Contents in fiction.</p> + +<pre class="noindentcmd">\tocitem[<em>number</em>]{<em>title</em>}{<em>page</em>}</pre> +<p>Item, such as chapter, in the toc environment.</p> + +<pre class="noindentcmd">\begin{ChapterDisplay}[<em>line count</em>] <em>...</em> \end{ChapterDisplay}</pre> +<p>Creates an area of fixed height, into which items such as <code>\ChapterTitle</code> may be placed.</p> + +<pre class="noindentcmd">\ChapterTitle{<em>text</em>}</pre> +<p>Used for chapter titles. One line only. May be used more than once.</p> + +<pre class="noindentcmd">\ChapterSubtitle{<em>text</em>}</pre> +<p>Used for chapter subtitles. One line only. May be used more than once.</p> + +<pre class="noindentcmd">\ChapterDeco[]{<em>deco code</em>}</pre> +<p>Used for chapter decorations. One line only. May be used more than once.</p> + +<pre class="noindentcmd">\QuickChapter[<em>dash size</em>]{<em>chapter title</em>}</pre> +<p>Insertwo two blank lines, places the chapter title in the gap using subch font, followed on the same line with an optional, variable-length em dash.</p> + +<pre class="noindentcmd">\thispagestyle{<em>choose</em>}</pre> +<p>Changes whether header/footer appears, for just the current page. This <code>fancyhdr</code> command is re-defined to accept a greater variety of pre-defined styles.</p> + +<pre class="noindentcmd">\FirstLine{<em>text</em>}</pre> +<p>From the <code>magaz</code> package. Places first line of text in small caps. See also <code>\charscale \hangindent</code> commands.</p> + +<pre class="noindentcmd">\clearpage</pre> +<p>Standard LaTeX command for a new full page. In <code>novel</code> you must do it yourself. For a blank page, use <code>\clearpage\thispagestyle{empty}\null</code>.</p> + + +<a id="a1.6.3"></a> +<h4>1.6.3 Block-Level Breaks and Styling</h4> + +<pre class="noindentcmd">\scenebreak</pre> +<pre class="noindentcmd2">\sceneline</pre> +<pre class="noindentcmd2">\scenestars</pre> +<p>Skips a line. The gap will include nothing, a short line, or some asterisks.</p> + +<pre class="noindentcmd">\begin{parascale}[<em>scale</em>]...\end{parascale}</pre> +<p>For an entire paragraph of scaled text. Will disobey line grid. See also <code>\charscale</code> command.</p> + +<pre class="noindentcmd">\begin{adjustwidth}{<em>left</em>}{<em>right</em>} <em>...</em> \end{adjustwidth}</pre> +<p>General-purpose environment for block indenting text, at left and/or right.</p> + + +<a id="a1.6.4"></a> +<h4>1.6.4 Footnotes and Endnotes</h4> + +<pre class="noindentcmd">\footnote[<em>option</em>]{<em>note text</em>}</pre> +<p>Creates a footnote at the bottom of the page.</p> + +<pre class="noindentcmd">\endnote</pre> +<p>Places an endnote marker. See also <code>\memo</code> command.</p> + +<pre class="noindentcmd">\endnotetext{<em>number</em>}{<em>note text</em>}</pre> +<p>Write the endnote text.</p> + +<pre class="noindentcmd">\realmarker<br/>\fakemarker</pre> +<p>Changes whether marker style is real or fake.</p> + + +<a id="a1.6.5"></a> +<h4>1.6.5 Images</h4> + +<pre class="noindentcmd">\InlineImage[<em>hoffset</em>][<em>voffset</em>]{<em>filename.ext</em>}<br/>\InlineImage*[<em>hoffset</em>][<em>voffset</em>]{<em>filename.ext</em>}</pre> +<p>Places an image that may be mingled in-line with text.</p> + +<pre class="noindentcmd">\BlockImage[<em>alignment,hoffset,voffset</em>]{<em>filename.ext</em>}[<em>accompanying text</em>]</pre> +<p>Places an image as a block element, in its own space. May share the space with accompanying text.</p> + + +<a id="a1.6.6"></a> +<h4>1.6.6 General Text Styling</h4> + +<p>Note that standard LaTeX font size commands, such as <code>\small</code> and <code>\Large</code>, have no effect in <code>novel</code> class. This is because those commands would conflict with the emphasis on maintaining a constant baseline grid.</p> + +<pre class="noindentcmd">\charscale[<em>scale,x,y</em>]{<em>text</em>}</pre> +<p>Versatile. Scales the text (at most one line), and moves it anywhere, even overlying. See also <code>parascale</code> environment.</p> + +<pre class="noindentcmd">{\somefontcommand <em>text</em>}</pre> +<p>Applies the font defined as <code>\somefontcommand</code> to the included text.</p> +<p>Example: <code>{\headfont <em>text</em>}</code> is automatically used for headers/footers.</p> + +<pre class="noindentcmd">\forceindent<br/>\backindent</pre> +<p>May be used in situations where ordinary <code>\indent</code> or <code>\noindent</code> fail.</p> + +<pre class="noindentcmd">\hangindent{<em>text</em>}</pre> +<p>Place the text to the left of the command insertion point. Sometimes used to move an opening quoation mark, at the start of chapter or lines of poetry.</p> + +<pre class="noindentcmd">\acronym{<em>text</em>}</pre> +<p>Requires NovelDeco font. Caps become "medium" caps, between regular and small.<p> + +<pre class="noindentcmd">\decoglyph{}</pre> +<p>Selects a decorative glyph from the decofont. Glyphs are chosen from a code table.</p> + +<pre class="noindentcmd">\squeeze{<em>text</em>}<br/>\crush{<em>text</em>}</pre> +<p>Horizontally shrinks text by 1% or 2%, respectively.</p> + +<pre class="noindentcmd">\color[<em>gray</em>]{<em>name or code</em>} <em>... until group ends</em><br/>\textcolor[<em>gray</em>]{<em>name or code</em>}{<em>text</em>}</pre> +<p>These commands from package <code>xcolor</code> have been modified so that they will only accept grayscale, and only when the <code>graytext</code> class option is used. Otherwise, K black is produced. Images are unaffected.</p> + +<pre class="noindentcmd">\memo{<em>text</em>}</pre> +<p>Ignores its argument, which does not print.</p> + +<pre class="noindentcmd">$ (dollar symbol)</pre> +<p>In document body: <code>$</code> means dollar, not math mode.</p> + +<pre class="noindentcmd">\nfs<br/>\nbs</pre> +<p>These are abbreviations for the lengths <em>normal font size</em> and <em>normal baseline skip</em>.</p> + + +<a id="a1.6.7"></a> +<h4>1.6.7 Some Other LaTeX Commands</h4> + +<p>These commands are defined by LaTeX or by a package that is automatically loaded with <code>novel</code>, or are standard commands given an alias for convenience. There are many other LaTeX commands that may be used, but these are most likely to be useful. Most of these are not documented by <code>novel</code>, since their usage is well-known.</p> + +<pre class="noindentcmd">\textsc{<em>text</em>}, \smcp{<em>text</em>}</pre> +<p>Lowercase to small caps. Novel uses the <code>smcp</code> Open Type feature, and does not fake small caps.</p> + +<pre class="noindentcmd">\allsmcp{<em>text</em>}</pre> +<p>Both uppercase and lowercase to small caps.</p> + +<pre class="noindentcmd">\sups{<em>text</em>}</pre> +<p>Superscripts. Result depends on whether marker style is real or fake.</p> + +<pre class="noindentcmd">\subs{<em>text</em>}</pre> +<p>Subscripts (scientific inferiors). Result depends on whether marker style is real or fake.</p> + +<pre class="noindentcmd">\null</pre> +<p>Inserts a blank line. Use <code>\clearpage\thispagestyle{empty}\null</code> to create a blank page.</p> + +<pre class="noindentcmd">\mbox{<em>text</em>}</pre> +<p>Puts its contents in a box. Useful for preventing hyphenation.</p> + +<pre class="noindentcmd">\makebox[<em>width</em>][<em>alignment</em>]{<em>text</em>}</pre> +<p>Boxes its contents at defined width and alignment. Useful for horizontal control of contents.</p> + +<pre class="noindentcmd">\hspace{<em>length</em>}</pre> +<p>Creates a horizontal space. Sometimes requires <code>\strut</code> in front.</p> + +<pre class="noindentcmd">\vspace{<em>length</em>}</pre> +<p>Creates a vertical space. Use only with caution, to avoid disturbing baseline grid.</p> + +<pre class="noindentcmd">\kern<em>length</em></pre> +<p>Tweaks the kerning between characters.</p> + +<pre class="noindentcmd">\strut</pre> +<p>Sometimes used to ensure that a line of text maintains its proper height.</p> + +<pre class="noindentcmd">\smash{<em>text</em>}</pre> +<p>The smashed text may overlie other text.</p> + +<pre class="noindentcmd">{\centering <em>text</em>\par}</pre> +<p>Use instead of <code>center</code> environment.</p> + +<pre class="noindentcmd">\hfill</pre> +<p>Inserts as much horizontal space as needed (generally, preceding right-aligned text).</p> + +<pre class="noindentcmd">\vfill</pre> +<p>Inserts as much vertical space as needed (generally, to force text downward on page).</p> + +<pre class="noindentcmd">\linebreak</pre> +<p>Maintains justification of line break. Use with caution.</p> + +<pre class="noindentcmd">\enlargethispage{<em>usually -\nbs</em>}</pre> +<p>Changes height of textblock for one page. Use with caution. Argument typically <code>-\nbs</code>.</p> + +<pre class="noindentcmd">\bigemdash[<em>voffset,thickness</em>]</pre> +<p>Fills a a box with a simulated emdash of variable width.</p> + + +<a id="a1.6.8"></a> +<h4>1.6.8 Disabled LaTeX Commands</h4> + +<p>These commands are disabled or ineffective. Depending on the command, it may silently do nothing, or simply echo its argument, or generate a Warning or Error. Some of these commands are part of standard LaTeX document classes, but others are part of widely-used packages.</p> +<p>There are other commands that <em>should</em> be disabled, but it is difficult to keep track of all of them. This list only includes some popular commands.</p> + +<pre class="noindentcmd">$ (dollar symbol)</pre> +<p>A dollar is a dollar, not math mode.</p> + +<pre class="noindentcmd">\small \LARGE and other font sizes</pre> +<p>You may use <code>\charscale</code> or the <code>parascale</code> environment.</p> + +<pre class="noindentcmd">\includegraphics</pre> +<p>Use <code>\InsertImage</code> or <code>\BlockImage</code> instead.</p> + +<pre class="noindentcmd">\maketitle</pre> +<p>Sorry, but you have to do it yourself.</p> + +<pre class="noindentcmd">bibliography, index, etc.<br/>part, chapter, section, etc.<br/>floats, captions, tables</pre> +<p>This ain't no stinking thesis. LaTeX "academic layout" commands don't work.</p> + + +<a id="a1.6.9"></a> +<h4>1.6.9 Discouraged LaTeX Commands</h4> + +<p>These commands may be used, but are likely to interfere with other commands defined by <code>novel</code>, or are likely to disturb the constant baseline grid. Only use them when you are willing to carefully inspect the output at magnification. These are less likely to be problematic when used on a display-only page, such as the book's title page.</p> +<p>This is not a comprehensive list. It includes only popular commands.</p> + +<pre class="noindentcmd">\parbox<br/>\minipage</pre> +<p>Perhaps the <code>adjustwidth</code> environment will sui your needs.</p> + +<pre class="noindentcmd">center environment</pre> +<p>You may use <code>{\centering...\par}</code> instead.</p> + +<pre class="noindentcmd">\raisebox</pre> +<p>You may use <code>\charscale</code> instead.</p> + + + +</div><!-- end main --> + +<div id="finish"></div> + +</div><!-- end master --> + +</body> +</html> + diff --git a/Master/texmf-dist/doc/lualatex/novel/noveldocs-02-class-options.html b/Master/texmf-dist/doc/lualatex/novel/noveldocs-02-class-options.html new file mode 100644 index 00000000000..08b33fdeae5 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/noveldocs-02-class-options.html @@ -0,0 +1,169 @@ +<!DOCTYPE html> +<html lang="en"> +<head> +<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> +<title>Class novel - 2 - Class Options</title> +<link rel="stylesheet" type="text/css" href="html-resources/novel-doc.css"/> +</head> + +<body> +<div id="master"> + + +<div id="toc"> + +<p>Document class "novel"</p> + +<p><a href="#a2">2. Document Class Options</a></p> + +<ul> + <li><a href="#a2.1">2.1 draft</a></li> + <li><a href="#a2.2">2.2 graytext</a></li> + <li><a href="#a2.3">2.3 shademargins</a></li> + <li><a href="#a2.4">2.4 cropmarks</a></li> + <li><a href="#a2.5">2.5 cropview</a></li> + <li><a href="#a2.6">2.6 closecrop</a></li> + <li><a href="#a2.7">2.7 xml</a></li> + +</ul> + +<p> </p> + +</div><!-- end toc --> + + + +<div id="main"> +<a id="thetop"></a> + +<h1>Documentation for <code>novel</code> document class</h1> +<p>Documentation version: 1.0.6.</p> + + +<div class="pagetopage"> +<p><b>User Guide</b></p> +<p><a href="noveldocs-01-overview.html">1. Overview</a></p> +<p>2. Class Options</p> +<p><a href="noveldocs-03-metadata-pdfx.html">3. Metadata, PDF/X</a></p> +<p><a href="noveldocs-04-layout.html">4. Page Layout</a></p> +<p><a href="noveldocs-05-fonts.html">5. Choosing Fonts</a></p> +<p><a href="noveldocs-06-header-footer.html">6. Headers, Footers</a><br/> +<p><a href="noveldocs-07-text-size-style.html">7. Text Sizes, Styles</a></p> +<p><a href="noveldocs-08-images.html">8. Using Images</a></p> +<p><a href="noveldocs-09-chapters-displays.html">9. Chapters, Display Pages</a></p> +</div> + + +<a id="a2"></a> +<h2 style="clear:none">2. Document Class Options</h2> + + +<p>As with other LaTeX classes, <code>novel</code> is called this way:</p> +<p><code>\documentclass[options]{novel}</code></p> + +<p>As with other document classes, <code>novel</code> chooses a default paper size, and font size, if you do not make the choice. But there, the similarity ends. The default paper size in <code>novel</code> is 5.5" wide by 8.5" high, which is a popular book Trim Size for softcover fiction in the US, and close to the Demy Octavo (C novel) British size. And, the default font size is not an integer point size!</p> + +<p>In fact, you <em>cannot</em> set either the paper size or font size in the class options. You set them via other commands, in the Preamble. The commands are explained on other pages of this documentation.</p> + +<p>Still, there are a number of class options. As usual, options must be enclosed in braces and be separated by commas.</p> + + + +<a id="a2.1"></a> +<h4>2.1 draft</h4> + +<p>The word DRAFT will appear at the upper left of each page.</p> + +<p>In draft mode, a little black bar will be placed at the right side of text that didn't quite fit on the line. These locations are reported in the log file as "overfull hbox" warnings. The black bar is called an "overflow rule".</p> + +<p class="centerimg"><img src="html-resources/overflowrule.png" width="525" height="115" title="draft mode, overflow rule" alt="overflow rule"/></p> + +<p>Some packages take note of whether or not the document is in draft mode, and change their behavior accordingly. However, the included <code>microtype</code> package will always be in final mode, and the included <code>hyperref</code> package will always be in draft mode.</p> + +<p>In draft mode, PDF/X compliance is turned off, no matter what you specify.</p> + + +<a id="a2.2"></a> +<h4>2.2 graytext</h4> + +<p>The <code>novel</code> document class is intended for black/white book interiors. Normally, any color command, even gray, will be ignored, and the text will be rendered black. This does not affect images.</p> + +<p>The <code>graytext</code> option over-rides this restriction, and obeys grayscale color commands from the <code>xcolor</code> package, which is already loaded with the class. Non-grayscale colors will be converted to shades of gray. The color commands are discussed on <a href="noveldocs-07-text-size-style.html#a7.2.8">Page 7</a>.</p> + +<p class="centerimg"><img src="html-resources/graytext.png" width="512" height="54" title="graytext" alt="graytext"/></p> + +<p>Your book will not be printed with "gray ink." Instead, anything other than pure black will be emulated by a pattern of black dots. This is known as "halftone." It causes a reduction in resolution, so your gray text will appear somewhat fuzzy. In addition, the halftone operation may extend to nearby text that is not gray. So: Unlike the example shown above, it is a bad idea to mingle gray with the ordinary flow of black text. The most appropriate use of gray text is for special items such as chapter titles.</p> + +<p>With this option enabled, you may place light-shaded text (even white) over a darker background, but this is not recommended. Even though the resulting PDF meets standards, it may not produce an acceptable result when printed, particularly if the text is small. It is better to place dark over light.</p> + + +<a id="a2.3"></a> +<h4>2.3 shademargins</h4> + +<p>This option is ignored unless using draft mode. It is not necessary to use the <code>graytext</code> option.</p> +<p><img class="floatright" style="margin-top:6px" src="html-resources/shademargins.png" width="132" height="205" title="shademargins" alt="shademargins"/> The <code>shademargins</code> option is simple: The margins will have a light gray background. Note that <em>margins</em> refers to the area between the live text area (including head/foot, if any) and the TrimBox, which is the finished size of your book. If you are using <code>\SetMediaSize</code> to request paper larger than your book's Trim Size, the excess area is <em>not</em> considered to be margins; it is discarded paper, so it is not gray.</p> +<p>Some commands (in particular, images) allow their content to overflow the textblock area. With <code>shademargins</code> you can see where such object intrude into the margins.</p> +<p>Sometimes it is hard to see whether a centered object is really centered, because the left-right margins are not the same width. With <code>shademargins</code> you can more easily see centering.</p> +<p>Note that headers and footers are not part of the margins.</p> + + + + + + +<a id="a2.4"></a> +<h4>2.4 cropmarks</h4> + +<p><img class="floatright" style="margin-top:6px" src="html-resources/cropmarks.png" width="205" height="265" title="cropmarks" alt="cropmarks"/> This option is ignored if the TrimSize is the same as the MediaSize (the usual situation). It works whether or not in draft mode.</p> + +<p>If the PDF Media Size is larger than its finished TrimSize, you can place crop marks (also known as trim marks) to indicate where the paper will be cut. The <code>cropmarks</code> option makes the marks visible. If this option is not used, then no marks are placed, regardless of any other commands.</p> + +<p>Note that most print-on-demand book printers <em>do not want crop marks</em>. The process flow is automated, and trim data is read from within the PDF. Crop marks may actually interfere with proper layout, if your PDF is re-formatted to share a large sheet of paper along with other pages. So, do not use <code>cropmarks</code> unless you must. For this reason, the built-in capability for cropmarks is very basic.</p> + +<p><img class="floatright" style="margin-top:6px" src="html-resources/cropmarkgap.png" width="140" height="141" title="cropmark gap" alt="cropmark gap"/> There is only one configurable setting, which may be used in the Preamble:</p> + +<p class="code"><code>\SetCropmarkGap{<em>length</em>}</code></p> + +<p>The cropmark gap is the distance between the Trim Box and where the crop lines begin. The purpose of the gap is so that the marks do not show on the trimmed paper, if the cut is a little bit off. In all cases, the far end of the cropmarks is 0.5in from the Trim Area. The gap is marked G in this diagram. The length must be least 0pt, and is more typically 0.125in or 0.250in. The default is 0.125in. </p> + +<p>If your Trim is placed off-center in the Media, then only one pair of cropmarks will be visible.</p> + + +<a id="a2.5"></a> +<h4>2.5 cropview</h4> + +<p><img class="floatright" style="margin-top:6px" src="html-resources/cropview.png" width="132" height="203" title="cropview" alt="cropview"/> This option is ignored if the TrimSize is the same as the MediaSize (the usual situation), because it is unnecessary. Also, it is ignored unless using draft mode.</p> + +<p>With <code>cropview</code>, there is an internal instruction to PDF viewers, requesting that only the Trim Size be displayed on the screen, rather than the whole Media Size. This is useful during the layout phase, because it is hard to visualize layout when you have a small finished size floating in a much larger paper size. Nothing else is changed.</p> + +<p>The accompanying image is the <code>cropview</code> display of the same page that was used to illustrate the <code>cropmarks</code> command. However, you do not need to have cropmarks.</p> + + +<a id="a2.6"></a> +<h4>2.6 closecrop</h4> + +<p><img class="floatright" style="margin-top:6px" src="html-resources/closecrop.png" width="110" height="186" title="closecrop" alt="closecrop"/> This option is only effective in draft mode. When used, the layout of your text is unchanged, but the surrounding margins are shrunk so that they just clear the live text area (which includes header and footer, if present). Also, the TrimSize is shrunk accordingly. Left and right margins are the same. The resulting PDF will be easier to read on a handheld device.</p> + +<p>This does <em>not</em> produce an E-book, since the file will be missing some things that an E-book ought to have. The sole purpose of this option is to create a conveniently-sized file that you can carry around while you are thinking about edits and revisions.</p> + + +<a id="a2.7"></a> +<h4>2.7 xml</h4> + +<p>If you request your PDF to comply with PDF/X standards, it will automatically include XMP Metadata that can be seen as document properties in some (mostly professional) PDF reader software. The <code>xml</code> option exports this data with an xml header added, so that it can be independently viewed in software such as a browser.</p> + +<p>This option is only for your information; the exported xml file is not necessary. Whether or not you choose this option will not affect the structure or content of your PDF. If you set PDF/X compliance to <code>off</code>, then there will be no exported xml file.</p> + +<p>The exported file will be named <code>jobname-XMPasXML.xml</code>, where <code>jobname</code> is the file name of your *.tex document. If you wish to obtain the XMP packet, without the xml header, you can easily do that with a Unicode-compatible text editor. The necessary editing is obvious.</p> + + + +</div><!-- end main --> + +<div id="finish"></div> + +</div><!-- end master --> + +</body> +</html> + diff --git a/Master/texmf-dist/doc/lualatex/novel/noveldocs-03-metadata-pdfx.html b/Master/texmf-dist/doc/lualatex/novel/noveldocs-03-metadata-pdfx.html new file mode 100644 index 00000000000..555e9acb112 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/noveldocs-03-metadata-pdfx.html @@ -0,0 +1,291 @@ +<!DOCTYPE html> +<html lang="en"> +<head> +<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> +<title>Class novel - 3 - Metadata, PDFX</title> +<link rel="stylesheet" type="text/css" href="html-resources/novel-doc.css"/> +</head> + +<body> +<div id="master"> + + +<div id="toc"> + +<p>Document class "novel"</p> + +<p><a href="#a3">3. Metadata, File Data, PDF/X</a></p> + +<ul> +<li><a href="#a3.1">3.1 Definitions of Terms</a> + <ul> + <li><a href="#a3.1.1">3.1.1 ISBN Metadata</a></li> + <li><a href="#a3.1.2">3.1.2 Printed Metadata</a></li> + <li><a href="#a3.1.3">3.1.3 File (PDF) Data</a></li> + </ul></li><!-- end 3.1 --> +<li><a href="#a3.2">3.2 Rules for File Data</a> + <ul> + <li><a href="#a3.2.1">3.2.1 Required, Prohibited?</a></li> + <li><a href="#a3.2.2">3.2.2 Latin-1?</a></li> + <li><a href="#a3.2.3">3.2.3 TeX Escapes</a></li> + <li><a href="#a3.2.4">3.2.4 Forbidden Characters</a></li> + </ul></li><!-- end 3.2 --> +<li><a href="#a3.3">3.3 File Data Commands</a> + <ul> + <li><a href="#a3.3.1">3.3.1 \SetTitle{}</a></li> + <li><a href="#a3.3.2">3.3.2 \SetAuthor{}</a></li> + <li><a href="#a3.3.3">3.3.3 \SetSubtitle{}</a></li> + <li><a href="#a3.3.4">3.3.4 \SetApplication{}<br/> + <span style="visibility:hidden">3.3.4 </span>\SetProducer{}</a></li> + </ul></li><!-- end 3.3 --> +<li><a href="#a3.4">3.4 \SetPDFX[]{}</a> + <ul> + <li><a href="#a3.4.1">3.4.1 Compliance Standards</a></li> + <li><a href="#a3.4.2">3.4.2 Output Intents</a></li> + <li><a href="#a3.4.3">3.4.3 Built-IN OI Codes</a></li> + <li><a href="#a3.4.4">3.4.4 Other Output Intents</a></li> + <li><a href="#a3.4.5">3.4.5 Embed *.icc or Not?</a></li> + <li><a href="#a3.4.6">3.4.6 Finding *.icc Files</a></li> + </ul></li><!-- end 3.4 --> +</ul> + +<p> </p> + +</div><!-- end toc --> + + + +<div id="main"> +<a id="thetop"></a> +<h1>Documentation for <code>novel</code> document class</h1> +<p>Documentation version: 1.0.6.</p> + + +<div class="pagetopage"> +<p><b>User Guide</b></p> +<p><a href="noveldocs-01-overview.html">1. Overview</a></p> +<p><a href="noveldocs-02-class-options.html">2. Class Options</a></p> +<p>3. Metadata, PDF/X</p> +<p><a href="noveldocs-04-layout.html">4. Page Layout</a></p> +<p><a href="noveldocs-05-fonts.html">5. Choosing Fonts</a></p> +<p><a href="noveldocs-06-header-footer.html">6. Headers, Footers</a><br/> +<p><a href="noveldocs-07-text-size-style.html">7. Text Sizes, Styles</a></p> +<p><a href="noveldocs-08-images.html">8. Using Images</a></p> +<p><a href="noveldocs-09-chapters-displays.html">9. Chapters, Display Pages</a></p> +</div> + +<a id="a3"></a> +<h2 style="clear:none">3. Metadata, File Data, and PDF/X</h2> + +<p>The commands described on this page are used only in the Preamble. </p> + +<p>These commands write non-printing information to the PDF file. Some of the information is used to identify and classify the file. Other information is read by the printer, to assist it with printing choices.</p> + +<p>Unfortunately, some of the terms have slightly different meaning, depending on whether they are used in the context of printing, book distribution, or E-books. To avoid confusion <em>within this documentation</em> I will use different terms when they mean different things. When you are communicating with your printing and distribution service, take care to ensure that your understanding of terminology is what they really mean.</p> + + +<a id="a3.1"></a> +<h3 style="clear:none">3.1 Definition of Terms</h3> + +<p>This section is more detailed than it needs to be, because my review of various online forums (unrelated to TeX) shows a lot of user confusion.</p> + + +<a id="a3.1.1"></a> +<h4 style="clear:none">3.1.1 ISBN Metadata</h4> + +<p><img class="floatright" src="html-resources/bookmanglerdashboard.png" width="500" height="309" alt="online form for ISBN metadata"/> When you obtain the ISBN for your book, either directly through the issuing agency or via your chosen print service, you will enter <em>ISBN Metadata</em> in an online form. This metadata will go into a database, and identify your printed book in distribution and sales channels. It neither knows nor cares about PDF. (If you were marketing an e-book, instead of print, that would be a different story.)</p> + +<p>ISBN Metadata includes title, author(s), subtitle if any, ISBN, other identifying information, and a description. The description is by way of advertising, and can usually be changed later; it need not appear anywhere in your book or PDF file, although some authors might use the description on the book's rear cover or cover flap.</p> + +<p>Note: The ISBN refers to your <em>printed book</em>, not to the PDF file. You are not selling copies of the PDF.</p> + + +<a id="a3.1.2"></a> +<h4>3.1.2 Printed Metadata</h4> + +<p><img class="floatright" src="html-resources/megatitlepagesm.png" width="165" height="256" alt="printed metadata, cover page"/> <em>Printed Metadata</em> refers to the information that can be seen on paper, in expected places: the book cover, the title page, and the copyright page. Whether your book was printed from a PDF file, or by some other method, is not relevant.</p> + +<p>Your print service will insist that the title, subtitle (if any), author, and ISBN in these places exactly match what appears in the ISBN database. Of course, you can (and usually will) use styling or images to make the Printed Metadata more attractive than the plain-text ISBN Metadata.</p> + +<p>Some print services may object to artwork that is too fancy, on the grounds that it is difficult to discern the title and author. Although this is very unlikely, it is better to ask before committing resources.</p> + + +<a id="a3.1.3"></a> +<h4>3.1.3 File Data (PDF Metadata)</h4> + +<p><img class="floatright" src="html-resources/megadocprops.png" width="298" height="215" alt="PDF metadata"/> When your PDF file is produced, internal metadata will be automatically created for the benefit of PDF reader software. <em>To avoid confusion, this documentation uses the term "File Data" to mean this internal PDF metadata.</em> You can see some of the File Data when you open the PDF in any reader, and go to File>Properties. To see all of it, you need professional software (such as Adobe Acrobat Pro).</p> + +<p>Be sure to read the rules for File Data, below. Some of it is generic, and some is particular to TeX or to the <code>novel</code> class.</p> + + +<a id="a3.2"></a> +<h3>3.2 Rules for File Data</h3> + +<p>File Data must conform to several specifications, in terms of what you may or may not write. Some of the limitations are imposed by the book distribution industry, which stores information in its databases a certain way.</p> + + +<a id="a3.2.1"></a> +<h4>3.2.1 Required, Prohibited, Optional?</h4> + +<p>If PDF/X compliance is required, then you <em>must</em> at least set the title in File Data, using the <code>\SetTitle{}</code> command. Note that this title is not styled in any way.</p> + +<p>Some print services require a minimum amount of file data, particularly title and author, which must match the printed and ISBN metadata for these fields. Other services may require that the book's ISBN number, with something like <code>_text</code> added, be used in place of the title (remember that underscore is a special character in LaTeX). Yet other services (for myserious reasons) may require that most or all File Data be omitted! You will have to communicate with your service, and determine their requirements.</p> + +<p>Caution: Whether or not you must omit File Data, be sure that any included images are stripped of their own metadata. The procedure is described on <a href="noveldocs-08-images.html#a8.2.2">Page 8</a> of this documentation.</p> + +<p>Many print services do not care about File Data, one way or the other. Your PDF is passed through production according to its file name, not its internals. In such a case, assume that title and author are required.</p> + + +<a id="a3.2.2"></a> +<h4>3.2.2 Limited to Latin-1?</h4> + +<p>At least in the USA, your print service may require that File Data be limited to characters in the Latin-1 set. This is because their production and distribution software uses Latin-1 for the database. Note that Latin-1 does not include curly quotes or em dash. You will still be using utf-8 encoding in your document files, but your choice of characters is restricted.</p> + +<p>If it were not for the database limitation to Latin-1, you could give your book a Greek or Cyrillic title, because <code>novel</code> can do it, and so can the PDF.</p> + +<p>You can still use any printable Unicode character in the text of your book, as long as you use fonts with those characters. In <code>novel</code> there is no <code>\maketitle</code> command, so you may (and should) apply styling to the printed title, even though the File Data title cannot be styled.</p> + + +<a id="a3.2.3"></a> +<h4>3.2.3 TeX escapes</h4> + +<p>In File Data, you must obey the same TeX rules that apply everywhere: Certain characters have special meaning, and must be preceded by a backslash, if you wish to use them as ordinary characters. These are:</p> + +<p><code># $ % & _ { }</code> (hash, dollar, percent, ampersand, underscore, left and right curly brackets)</p> + +<p>Example: The title <em>Doing 9% & Gone</em> is coded: <code>\SetTitle{Doing 9\% \& Gone}</code></p> + +<p>The above characters are rarely needed in File Data. Sometimes they must be spelled out, in order to agree with your book's ISBN Metadata. For example, you may need to write "and" rather than the ampersand.</p> + + +<a id="a3.2.4"></a> +<h4>3.2.4 Forbidden Characters</h4> + +<p>• Do not use the backslash <code>\</code> except to escape the above-listed characters.</p> + +<p>• Do not use the tilde <code>~</code> or the circumflex <code>^</code>.</p> + +<p>• Do not use TeX code, such as <code>\`e</code> for e with grave; instead paste è directly from a character map.</p> + +<p>• Do not use styling, such as {\small text}.</p> + +<p>You should not need any kind of quotation marks in File Data. But if you do, use ordinary straight quotes, and ensure that your TeX editor does not automatically substitute curly quotes or TeX code as you type it. Use a straight apostrophe if needed, and ensure that a curly apostrophe is not automatically substituted in your TeX editor. Do not use <code>`</code> or <code>``</code> for left quotes. Do not use two apostrophes for a double quote. Do not use endash or emdash (and do not type multiple hyphens).</p> + + +<a id="a3.3"></a> +<h3>3.3 File Data Commands</h3> + +<p>Now that you understand what File Data means, and how it may be written, you can use commands to write it.</p> + + +<a id="a3.3.1"></a> +<h4>3.3.1 \SetTitle{}</h4> + +<p>If you do not use the <code>\SetTitle{}</code> command, or leave it empty or blank, then the resulting PDF cannot comply with PDF/X standards. In very rare cases, that is desirable. Note that this information is not automatically transferred to your book's title page. It will be used as default in certain page heading styles, but you can over-ride it. The information can be retrieved as <code>\theTitle</code> anywhere in your document.</p> + + +<a id="a3.3.2"></a> +<h4>3.3.2 \SetAuthor{}</h4> + +<p>This information is not automatically transferred to your book's title page. It will be used as default in certain page heading styles, but you can over-ride it. The information can be retrieved as <code>\theAuthor</code> anywhere in your document.</p> + + +<a id="a3.3.3"></a> +<h4>3.3.3 \SetSubtitle{}</h4> + +<p>There is no file data for subtitle! The only reason for using this command is if you wish to later retrieve the information as <code>\theSubtitle</code> in your document.</p> + + +<a id="a3.3.4"></a> +<h4>3.3.4 Advanced: \SetApplication{} and \SetProducer{}</h4> + +<p>The Application, also known as CreatorTool, is the program used to create your source document. Text editors, word processors, and page layout programs are the most common Applications (not particular to TeX). The PDF Producer is the program that converts the source document to PDF. In many cases, the Producer is a back-end, directly linked to the Application.</p> + +<p>These details are automatically created when you compile your document, without any input from you. However, if you have the need to provide a custom text string for the Application or Producer, these commands will do it.</p> + + +<a id="a3.4"></a> +<h3>3.4 \SetPDFX[<em>output intent</em>]{<em>compliance standard</em>} and starred version</h3> + +<p>Commercial printers are very likely to require PDF/X compliance. This ensures that your PDF meets a variety of criteria, by containing those things it must contain, and omitting those things it must not contain. Most perfectly valid PDF files are <em>not</em> PDF/X compliant, simply because they are not intended for commercial printing.</p> + +<p>If the <code>\SetPDFX</code> command is not used, it is <code>off</code> by default. Note that a non-compliant file is not a defective file! It complies with PDF standards, but not PDF/X standards. Some print services insist on PDF/X, and others don't care as long as the fonts are embedded (which they always are).</p> + + +<a id="a3.4.1"></a> +<h4>3.4.1 Compliance Standard</h4> + +<p>The following choices are available:</p> +<p><code>X-1a:2001</code></p> +<p><code>X-1a:2003</code></p> +<p><code>X-3:2002</code></p> +<p><code>X-3:2003</code></p> +<p><code>off</code></p> + +<p>The first of these is the one that is most widely accepted in commercial printing. Anything meeting <code>X-1a:2001</code> necessarily meets the other standards. If your book involved complicated color artwork, then the correct choice might be crucial. But for a black and white book block, <code>X-1a:2001</code> is the preferred choice unless your print service says otherwise.</p> + + +<a id="a3.4.2"></a> +<h4>3.4.2 Output Intent</h4> + +<p>Unless compliance is <code>off</code>, an Output Intent is always required. However, <code>novel</code> treats this as an optional argument, because it will automatically use <code>CGATSTR001</code> as default Output Intent. Technically the name is CGATS TR 001 (with spaces), and it is known as "US Web Coated SWOP v2" in the U.S.A., where it is the most commonly-accepted Output Intent standard.</p> + +<p>Output Intent informs the printer that you "intend" your PDF to be printed according to certain printer capabilities. If you took the trouble to soft-proof your PDF on a color-controlled monitor using color managed software, and if the printer's capabilities actually correspond to the intent, then you can expect that the printed result will closely match what you expected. This is very important in commercial color printing, but nearly irrelevant for a black and white book block. Nevertheless, an Output Intent is required to meet PDF/X compliance.</p> + + +<a id="a3.4.3"></a> +<h4>3.4.3 Built-in Output Intent Codes</h4> + +<p>There are three pre-defined choices:</p> +<p><code>CGATSTR001</code> (default)</p> +<p><code>FOGRA39</code></p> +<p><code>JC200103</code></p> +<p>The first of these, more properly named "CGATS TR 001" with spaces, is also known as "US Web Coated SWOP v2" in the USA, and is the most commonly-used American print standard for this kind of book. The second is widely used in Europe, the third in Japan.</p> + + +<a id="a3.4.4"></a> +<h4>3.4.4 Other Output Intents</h4> + +<p>If you are required to use an Output Intent that is not one of the above three, then you have to code it yourself. Have a look at the three pre-configured Output Intents (files novel-CGATSTR001.clo, novel-FOGRA39.clo, and -novel-JC200103.clo). Instructions are inside the files. There are several places where you can find the necessary data; the most comprehensive is at www.color.org.</p> +<p>In essence: If you create a custom Output Intent file named <em>novel-MyFunkyPrinter.clo</em>, then you request <code>MyFunkyPrinter</code> (without the preceding novel- or the .clo extension) as Output Intent, and that file will be loaded.</p> + + +<a id="a3.4.5"></a> +<h4>3.4.5 Whether or Not to Embed *.icc</h4> + +<p>Each Output Intent has a corresponding color profile, in the form of a file with extension <code>*.icc</code>. You usually do not need it. In fact, unless your print service specifically asks you to embed the file, don't do it. When you use <code>\SetPDFX</code> in its un-starred form, the *.icc file will not be embedded.</p> + +<p>If your print service demands that you embed the *.icc color profile, then use <code>\SetPDFX*</code> (with the asterisk).</p> + +<p>Repeat: Do not embed the *.icc color profile unless specifically requested by your print service, for a non-color book block.</p> + +<p>If your printer requests "US Web Coated SWOP v2" and, as usual, requests that you <em>not</em> embed the corresponding *.icc color profile, then some software will read the Output Intent as "CGATS TR 001" instead of "US Web Coated SWOP v2". This is compliant. But not everyone knows this.</p> + + +<a id="a3.4.6"></a> +<h4>3.4.6 Where to Find *.icc Files</h4> + +<p>Although many *.icc files are freely available, they usually cannot be distributed within an open-source project. You might already have them in your system, wherever such files are stored. Note that TeX uses forward slash in file paths, not backslash, even if the platform is Windows:</p> +<p class="isolate"> +Windows: <code>C:/Windows/System32/spool/drivers/color/</code> [older Windows: system32 instead of System32]<br/> +Linux: <code>/usr/share/color</code> or hidden <code>~/.local/share/icc/</code> or other places<br/> +OSX: <code>/Library/Colorsync/Profiles/</code> or hidden <code>(username)/Library/Colorsync/Profiles/</code> +</p> +<p>If you do not have the files, look on the Internet <a href="https://www.adobe.com/support/downloads/iccprofiles/icc_eula_win_end.html" target="new">here</a> and <a href="http://www.color.org/profiles.xalter" target="new">here</a>. These links also have many other profiles, beyond the basic three. In a few cases, your print service may provide the necessary file.</p> +<p>You want printer profiles, usually CMYK. Don't worry about the files being "for Windows," as they are actually cross-platform.</p> +<p>If your system has the necessary <code>*.icc</code> file for your Output Intent, but <code>novel</code> cannot find it, then copy the file to the same folder as your TeX document.</p> +<p>Again: Do not embed the file unless the printer requests it.</p> + + + + + + +</div><!-- end main --> + + +</div><!-- end master --> + +</body> +</html> + diff --git a/Master/texmf-dist/doc/lualatex/novel/noveldocs-04-layout.html b/Master/texmf-dist/doc/lualatex/novel/noveldocs-04-layout.html new file mode 100644 index 00000000000..448a0701d0e --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/noveldocs-04-layout.html @@ -0,0 +1,375 @@ +<!DOCTYPE html> +<html lang="en"> +<head> +<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> +<title>Class novel - 4 - Book Size and Page Layout</title> +<link rel="stylesheet" type="text/css" href="html-resources/novel-doc.css"/> +</head> + +<body> +<div id="master"> + + +<div id="toc"> + +<p>Document class "novel"</p> + +<p><a href="#a4">4. Book Size and Page Layout</a></p> + +<ul> + + <li><a href="#a4.1">4.1 Book Design Terminology</a> + <ul> + <li><a href="#a4.1.1">4.1.1 Sheet, Page, Leaf, Folio</a></li> + <li><a href="#a4.1.2">4.1.2 Spread, Recto, Verso, Line Grid</a></li> + <li><a href="#a4.1.3">4.1.3 Perfect Binding, Spine, Signature</a></li> + <li><a href="#a4.1.4">4.1.4 Gutter</a></li> + <li><a href="#a4.1.5">4.1.5 Trim Size, Margins, Live Area</a></li> + <li><a href="#a4.1.6">4.1.6 Media Size, TrimBox</a></li> + <li><a href="#a4.1.7">4.1.7 Arrrgh... Word Processors</a></li> + </ul> + </li><!-- end 4.1 --> + + + <li><a href="#a4.2">4.2 Layout Commands</a> + <ul> + <li><a href="#a4.2.1">4.2.1 \SetTrimSize{}{}</a></li> + <li><a href="#a4.2.2">4.2.2 \SetMargins{}{}{}{}</a></li> + <li><a href="#a4.2.3">4.2.3 \SetFontSize{}</a></li> + <li><a href="#a4.2.4">4.2.4 \SetLinesPerPage{}</a></li> + <li><a href="#a4.2.5">4.2.5 \SetHeadFootStyle{}</a></li> + <li><a href="#a4.2.6">4.2.6 \SetHeadJump{}<br/><span style="visibility:hidden">4.2.6 </span>\SetFootJump{}</a></li> + <li><a href="#a4.2.7">4.2.7 \SetMediaSize[]{}{}</a></li> + <li><a href="#a4.2.8">4.2.8 \SetCropmarkGap{}</a></li> + </ul> + </li><!-- end 4.2 --> + + + <li><a href="#a4.3">4.3 Emergency Clinic: Rework</a> + <ul> + <li><a href="#a4.3.1">4.3.1 \ReworkTrimSize{}{}</a></li> + <li><a href="#a4.3.2">4.3.2 \ReworkMargins{}{}{}{}</a></li> + <li><a href="#a4.3.3">4.3.3 Example of Rework</a></li> + <li><a href="#a4.3.4">4.3.4 Limitations of Rework</a></li> + </ul> + </li><!-- end 4.3 --> + +</ul> + +<p> </p> + +</div><!-- end toc --> + + + +<div id="main"> +<a id="thetop"></a> +<h1>Documentation for <code>novel</code> document class</h1> +<p>Documentation version: 1.0.6.</p> + + +<div class="pagetopage"> +<p><b>User Guide</b></p> +<p><a href="noveldocs-01-overview.html">1. Overview</a></p> +<p><a href="noveldocs-02-class-options.html">2. Class Options</a></p> +<p><a href="noveldocs-03-metadata-pdfx.html">3. Metadata, PDF/X</a></p> +<p>4. Page Layout</p> +<p><a href="noveldocs-05-fonts.html">5. Choosing Fonts</a></p> +<p><a href="noveldocs-06-header-footer.html">6. Headers, Footers</a><br/> +<p><a href="noveldocs-07-text-size-style.html">7. Text Sizes, Styles</a></p> +<p><a href="noveldocs-08-images.html">8. Using Images</a></p> +<p><a href="noveldocs-09-chapters-displays.html">9. Chapters, Display Pages</a></p> +</div> + + +<a id="a4"></a> +<h2 style="clear:none">4. Book Size and Page Layout</h2> + +<p><b>Overview</b></p> + +<p>There are many layout settings available, but you do not have to use them all. In fact, you may not need to use any of them! Your <code>novel</code> is pre-configured with settings that will often be suitable for the 5.5"W x 8.5"H Trim Size that is widely used in the American softcover fiction market.</p> + +<p>If you choose a different Trim Size, then some of the other defaults will be tweaked, so that your starting point is reasonable for the requested size.</p> + +<p>This page begins with a review of phyysical book design, then continues to the <code>novel</code> commands that set the dimensions.</p> + + + +<a id="a4.1"></a> +<h3>4.1 Book Design Terminology</h3> + +<p>If you are preparing a PDF for the print-on-demand (P.O.D.) market, and I assume you are, then you need to understand how terms are used in the <code>novel</code> document class (and LaTeX in general). Sadly, most authors in P.O.D. use an ordinary word processor, particularly MS Word. For that reason, many print services, and most online user forums, refer to the terminology and settings of MS Word, rather than to the meanings in traditional book publishing. In the case of images, Photoshop settings are often described. And, the more advanced authors may be using InDesign. Yes, there are authors using LaTeX and GIMP (I am among them), but they are not the ones who make the most noise. If you visit web sites and forums devoted to LaTeX, they primarily address the concerns of academic writers, particularly mathematicians, because that is the target user base for LaTeX.</p> + +<p>Here, I will present a brief overview of what key terms mean. In some cases, I will also describe how the same terms mean different things, to those who use other software. Pay attention!</p> + + +<a id="a4.1.1"></a> +<h4>4.1.1 Sheet, Page, Leaf, Folio, Imposition</h4> + +<p>A <b>sheet</b> of paper is a single, physical piece of paper, regardless of whether anything is printed on it, or where. Often, paper starts out as a large sheet that will subsequently be cut into smaller sheets. The size doesn't matter. A sheet of paper is, in ordinary understanding, a piece of paper.</p> + +<p><img class="floatright" src="html-resources/page-leaf.png" width="490" height="155" alt="page, leaf"/> In a finished book, a <b>page</b> is one side of a <b>leaf</b>. Thus, there are always exactly twice as many pages are there are leaves. From the manufacturer's point of view, a 240-page (double-sided printing) book has 120 leaves, regardless of whether or not anything is printed on the pages, or how they are numbered.</p> + +<p>If you take a sheet of 8.5" x 11" paper, and fold it in half across its width, you create a <b>folio</b>, consisting of one sheet of paper (as before), two leaves (previously one), and four pages (previously two), sized 5.5" x 8.5". Now, think about how those four pages must be numbered. Page 1 and page 4 are printed on the same side of the sheet, with pages 2 and 3 on the opposite side of the sheet. This is not the order they would be printed, if you were merely shrinking the text so that twice as much fit on one side of the sheet. The process of re-arranging the pages, and placing them in the correct positions (often involving rotation) is called <b>imposition</b>. Your home printer can do it, for the simple example described. But in the case of commercial book preparation, the imposition process is much more involved, and uses advanced software.</p> + +<p>Caution, The term "folio" has several different meanings, even in the narrow field of book publishing. It may refer to folded paper, as mentioned above. Or it may refer to a particular sheet size of paper ("foolscap"). Or, it may simply refer to the number printed on a page. This last use of "folio" will be discussed in the context of headers and footers.</p> + + +<a id="a4.1.2"></a> +<h4>4.1.2 Page Spread, Recto, Verso, Line Grid</h4> + +<p><img class="floatright" src="html-resources/linegrid.png" width="303" height="234" alt="line grid"/> When a book is opened somewhere in its middle, you see a <b>page spread</b>. At right is the <b>recto</b> odd-numbered page, and at left is the <b>verso</b> even-numbered page. With continuous text, the lines of text on the verso must be in the same vertical position as the lines of text on the recto, and each line must be equally spaced. This is the <b>line grid</b>. Maintaining a proper line grid is essential to the <code>novel</code> class, and is why some <code>novel</code> commands differ from how they are used in academic works with other document classes.</p> + + +<a id="a4.1.3"></a> +<h4>4.1.3 Perfect Binding, Spine, Signature</h4> + +<p><img class="floatright" src="html-resources/perfectbinding.png" width="160" height="290" alt="perfect binding"/> Most modern softcover books (and some inexpensive hardcovers) are manufactured using a process named <b>Perfect Binding</b>. The finished book has individual foils, glued together at the <b>spine</b>. There are several stages to the process. First, the books is subdivided into a number of <b>signatures</b>, each of which is a group of folios (typically 1 or 6 folios per signature). The imposition software calculates which page goes at which position on each folio, and also tweaks the positions to allow for the slight displacement of each folio, due to paper thickness. In each signature, the folios are like nested V. The signatures are clamped together in a block. Then the folded area is removed by a machine, so that there are no longer any signatures or folios, just individual leaves. Finally they are glued together, possibly with a reinforcement, and the cover is attached.</p> + +<p>If you order your book in hardcover, it is likely to use a similar production method, but with harder covers. So, don't think that your hadcover book will be like the expensive reference books you see in the library. Those books use a different, and much more expensive, binding method.</p> + + +<a id="a4.1.4"></a> +<h4>4.1.4 Gutter</h4> + +<p><img class="floatright" src="html-resources/whichgutter.png" width="276" height="219" alt="Which gutter?"/> To allow for the fact that most binding cannot be opened flat, the spine edge of each page must have an allowance for the loss of visible area there. The word <b>gutter</b> is used in this context.</p> +<p>Alas, some folks use <em>gutter</em> to mean the extra allowance for each page; others use it to mean the combined allowance for a two-page spread; and others use it to mean the full spine-side margin from the text, which is a larger value. So if you read about the gutter from different sources, the numbers may not make sense, because the word is being used with different meanings. It could be any of A, B, C, or D in the accompanying diagram. I won't be using the term, except indirectly.</p> + + +<a id="a4.1.5"></a> +<h4>4.1.5 Trim Size, Margins, Live Area</h4> + +<p><img class="floatright" src="html-resources/tbrectomar.png" width="144" height="223" alt="trim size recto"/> <b>Trim Size</b> is the finished size of your book, width and height (but not thickness). In the case of hardcover books, where the cover is larger than the contents, it is (usually) the cover size that is measured, with the internal trim size being slightly smaller than nominal</p> + +<p>In the USA, 5.5" x 8.5" is often used for softcover fiction. This is the default setting in <code>novel</code>. It seems to be the case that nonfiction prefers the slightly larger 6" x 9" trim size. Both of these are known as "trade" sizes.</p> + +<p><b>Margins</b> are required on all four edges of the page. They do not have to be the same width. Generally the margin at the spine edge (inside margin) is wider.</p> +<p>The accompanying illustration shows a typical recto page, on a layout with header and footer. The margins have been shaded gray in the picture (but, not in the book). The inside (spine) margin is at the left of this page. In the case of fiction, where there are no marginal notes, it is typically the case that the inside margin is the widest. But this is not a rule for all books. All that is required is that each margin be "wide enough" for the printing process.</p> + +<p>Keep in mind that the print services are not used to seeing books with exotic margins (such as bottom margin twice the size of top margin). They may think that there is a mistake in your PDF, or in the print job, if you do that.</p> + +<p>The header and footer, along with the textblock, are in the <b>live area</b> bounded by the margins.</p> + +<p>Normally, your TeX document will be compiled to a PDF that is electronically at the exact Trim Size. And normally, print services want it to be that way. When you view your PDF, the text will shift from side to side as you move through the pages, due to the slightly increased margin at the spine edge.</p> + + +<a id="a4.1.6"></a> +<h4>4.1.6 Media Size, TrimBox</h4> + +<p style="clear:both"><img class="floatright" src="html-resources/mbcrectomar.png" width="202" height="264" alt="media size recto"/> In a few cases, the commercial printer will request that the PDF page size be something larger than the Trim Size of your book. In PDF terminology, the larger dimensions are the <b>Media Size</b>. Typically, the Media Size will be U.S. Letter, or A4, and the Trim Size must be floated in the center, horizontally and vertically. As an alternative, the Trim Size will be at the edge. Something of the sort happens when you print a copy of your PDF at home, where your printer's paper tray has letter or A4, not the Trim Size.</p> +<p>Unless you explicitly set it to a different value, Media Size will automatically be set at Trim Size. Do not use a different Media Size, unless the commercial printer requests it.</p> +<p>Since your PDF is being prepared for commercial print production, it will have an invisible <code>TrimBox</code> automatically encoded. This information tells the printer where the Trim Size is located. If (as usual) the Trim Size and Media Size are identical, then the TrimBox is the full size of the PDF page. But when the Trim Size is smaller than the Media Size, the TrimBox defines where the paper will be trimmed. Although it is not normally marked on the PDF page and never appears in print, some PDF viewers allow you make the TrimBox visible.</p> +<p>In the accompanying diagram, the TrimBox is shown as a faint green line. The margins, shaded gray, are measured relative to the Trim Size, not relative to the Media Size. The excess area beyond the Trim Size is "wasted paper" that will not become part of the book.</p> + + +<a id="a4.1.7"></a> +<h4>4.1.7 Arrrgh... Word Processors</h4> + +<p>Alas, it seems to be the case that in the print-on-demand market, most PDF files come straight from MS Word or some other word processor. The authors have little understanding of the technology, so the print services provide them with instructions that specifically pertain to a word processor. It gets worse: If you communicate with the print service, your question may be answered by someone who has never used any software other than MS Word, and does not know much beyond how to make menu choices in that program (which are different for each new version of the software, of course). Or, a more informed advisor might know InDesign.</p> +<p>In such a case, for a 5.5" x 8.5" book Trim Size with 0.5" margins at top, outside, and bottom, and 0.75" at the spine edge, you might be offered advice like this: <em>On page size 8.5" x 11" with mirror-margins layout, set the top and bottom margins to 1.75", the outside margin to 2", and the inside margin to 2.25".</em> That advice means: Media Size 8.5" x 11". Unspecified Trim Size, but the printer knows you want 5.5" x 8.5" because you signed up for it; someone at the receiving end will add that instruction to your PDF file. The MS Word "margins" are the actual TeX book margins <em>plus</em> the trimmed-away paper that surrounds the Trim Size.</p> +<p>So, be alert. And remember that even if you are reading advice on a TeX-oriented forum, the advice is likely to pertain to some other document class. The way that dimensions are set in <code>novel</code> may not be the same as the way they are set in other classes.</p> + + + +<a id="a4.2"></a> +<h3>4.2 Layout Commands</h3> + +<p>Now that you understand how the terms are used, you are ready to use <code>novel</code> layout commands.</p> + +<p>Remember that everything is pre-configured, specifically for the purpose of fiction. You only need to write a layout command if you don't like the defaults.</p> + + + +<a id="a4.2.1"></a> +<h4 style="clear:none">4.2.1 \SetTrimSize{<em>width</em>}{<em>height</em>}</h4> + +<p>Command <code>\SetTrimSize{}{}</code> sets the size of your book. Both values must be written, using units such as <code>in</code> or <code>mm</code>. If you do not use this command, the default Trim Size will be the widely-used 5.5in wide x 8.5in high.</p> + +<p>This setting is most crucial. Unless your book is very exceptional, its Trim Size will be one of several standard sizes available from the print service. Among those sizes, only one or two will be "standard" for your genre.</p> + +<p>Do not request a <em>mass-market paperback</em> size unless you really, truly, know what you are doing. Since you are not a major writer for a major publishing house, you don't know; so, don't do it.</p> + +<p>In the U.S.A., a Trim Size of 5.5"W x 8.5"H is widely used for print-on-demand fiction, with a slightly smaller size being a second choice. The larger 6"W x 9"H is more often used for non-fiction. If you also intend to have a hardcover edition, then that may affect your choice for softcover as well (but see the <code>\Rework</code> commands, below). Be aware that in your market, hardcover books are not like the ones you see in the library, which use a more expensive binding method.</p> + + +<a id="a4.2.2"></a> +<h4 style="clear:none">4.2.2 \SetMargins{<em>top</em>}{<em>outside</em>}{<em>bottom</em>}{<em>inside</em>}</h4> + +<p><img class="floatright" src="html-resources/margins.png" width="303" height="234" alt="margins"/> Mnemonic: "TOBI, or not TOBI, that is the question."</p> + +<p>When you choose your book's Trim Size, margins are pre-configured. In most cases, the top, outside, and bottom margins are 0.5", and the inside (spine) margin is 0.75" to allow 0.25" binding clearance. These values are acceptable to most American printers, unless your book is very thick. The largest Trim Sizes have slightly larger margins.</p> + +<p>Command <code>\SetMargins</code> lets you choose your own margins. If you use it, all four must be written, using units such as <code>in</code> or <code>mm</code>.</p> + +<p><img class="floatright" src="html-resources/whichgutter.png" width="276" height="219" alt="Which gutter?"/> If your book has headers and/or footers, they sit inside the rectangle bounded by the margins. That is, they do not sit inside the peripheral areas cleared by the margins.</p> + +<p>Be aware that there is a lot of confusion regarding the word "gutter." In the accompanying diagram, it might mean any of A, B, C, or D, depending on who is doing the talking and which software is in use. The <code>novel</code> class uses <em>inside margin</em>, also known as <em>spine margin</em>, to mean C.</p> + + +<a id="a4.2.3"></a> +<h4>4.2.3 \SetFontSize{<em>length</em>}</h4> + +<p>In the <code>novel</code> document class, you do not set point size as a class option. Instead you use <code>\SetFontSize</code> in the Preamble.</p> +<p>The size may be any units TeX understands, including decimal values. So, <code>11.8bp</code> and <code>12.1pt</code> are acceptable. This is because you will be using scalable, Open Type and TrueType fonts throughout your document. They do not need TeX metrics.<p> +<p>If you insist on using ancient TeX fonts, then you may need to specify a convenient integer font size such as 11pt or 12pt. But why? Forget those fonts! Welcome to the Twenty-First Century.</p> +<p>The minimum normal font size is 8pt, and the maximum is 18bp. On a local basis, text may be larger or smaller than this.</p> + + +<a id="a4.2.4"></a> +<h4>4.2.4 \SetLinesPerPage{<em>integer</em>}</h4> + +<p>Lines per page refers only to the textblock, and does <em>not</em> include header/footer. Lines are not stretched to fill short pages.</p> + +<p>By default, a suitable number of lines per page are set, based on other dimemsions. You can change the default with this command. Any non-integer will be rounded. There is no direct command to set the <em>leading</em>, also known as line-to-line spacing or <em>baselineskip</em>. Instead, is is calculated from the textblock height and number of lines.</p> + +<p>If the calculated leading is less than 1.2x the font size, an error will result. It is difficult for TeX to honor all layout settings with such a small leading, which would normally be unacceptable for fiction in any case. If the calculated leading is at least 1.2x the font size, but less than 1.25x the font size, then the log file will have an Alert message, suggesting that you should consider using fewer lines per page. If the leading exceeds 1.4x the font size, then the log will have an Alert, suggesting more lines per page. The Alert messages are friendly; you do not necessarily have to do anything.</p> + + +<a id="a4.2.5"></a> +<h4>4.2.5 \SetHeadStyle{<em>number</em>}</h4> + +<p><img class="floatright" src="html-resources/headfoot.png" width="276" height="219" title="head foot style 1" alt="head foot style 1"/> The use of this command is described on <a href="noveldocs-06-header-footer.html#a6.1.2">Page 6</a>. It is mentioned here, because whether or not your book has headers and/or footers will affect the overall layout. The default is style 1, which has header but no footer (shown here).</p> + +<p>The pre-defined styles are comprehensive, for use in fiction. It is hard to imagine a header/footer style that is not identical to, or a variation from, one of those styles. But if you do wish to create your own style, you must use <code>\SetHeadStyle</code> to choose the closest available style, then use <code>fancyhdr</code> commands for your custom style. The reason is that <code>\SetHeadStyle</code> tells the layout engine how much space it needs to reserve.</p> + + +<a id="a4.2.6"></a> +<h4>4.2.6 \SetHeadJump{<em>number</em>} and \SetFootJump{<em>number</em>}</h4> + +<p>Puzzled by TeX terms such as <em>headsep</em> and <em>footskip</em>? Me too! That's why I rewrote the way that the positions of headers and footers are calculated. Now, you can use easy-to-understand commands that do what you think they ought to be doing.</p> + +<p class="floatright" style="text-indent:0px"><img src="html-resources/headjump1.png" width="158" height="125" alt="headjump 1"/><br/><img src="html-resources/footjump2.png" width="130" height="116" alt="footjump 2"/></p> +<p>The head and/or foot "jump" is a multiple of the normal baseline skip. When the jumps are set to 1, the header (if used) will be where the textblock would be, if it had one more line on top. The footer will be where the textblock would be, if it had one more line at the bottom. Values of 2 would skip a line at top and bottom. In other words, integer jumps maintain the line grid.</p> + +<p>Actually, the header and/or footer do not need to be on line grid. The defaults are 1.5 for each, which balances the need to separate the header/footer from the text, with the need to avoid wasting vertical space.</p> + +<p>The maximum is 3, minimum 1. The two jumps do not need to be identical. If your layout does not have a header and/or footer, then the corresponding setting does not matter.</p> + +<p>Don't worry about <em>headheight</em>. Whether you like it or not, headers (if used) will have only one line, and footers (if used) will have only one line. The necessary heights are calculated automatically.</p> + + +<a id="a4.2.7"></a> +<h4>4.2.7 Advanced: \SetMediaSize[<em>alignment</em>]{<em>width</em>}{<em>height</em>}</h4> + +<p>Normally, the book Trim Size will also set the same size for the PDF pages. What you see is what you get.</p> + +<p>Some print services prefer that the Trim Size be floated in a standard paper size, such as US Letter or A4. That's not a technical necessity, but "the way things are done around here." If you must do that, use the <code>\SetMediaSize</code> command.</p> + +<p>The width and height must be specified with units, such as <code>in</code> or <code>mm</code>. If the optional <em>alignment</em> is not specified, then The Trim Size will be centered horizontally and vertically in the Media Size. That is the preferred method.</p> + +<p>If you write <code>edge</code> for the optional alignment, then the Trim Size will be off-center in the Media Size. Do not do this unless your print service specifically wants it that way. If you are making a hand-made book with a home printer, then this option might be convenient.</p> + +<p>Note that margins are measured relative to the Trim Size, not the Media Size. The extra white space between Trim Size and Media Size is just that: extra white space, unrelated to the margins of your book.</p> + +<p>For PDF/X compliance, an invisible PDF TrimBox is automatically calculated and written into the PDF file.</p> + +<p><img class="floatright" src="html-resources/mbcrectomar.png" width="202" height="264" alt="media size larger than trim size"/> The accompanying image shows how this works. Here is the code:</p> + +<p class="code"><code>\documentclass[draft,shademargins]{novel}<br/> +\SetTrimSize{5.5in}{8.5in}<br/> +\SetMediaSize{8.5in}{11in}<br/> +\SetMargins{0.5in}{0.5in}{0.5in}{0.75in}</code></p> + +<p>Trim Size 5.5"x8.5" is centered in Media Size 8.5"x11". The <code>shademargins</code> option was used, so that the page margins can be seen. Whether verso or recto, the Trim is centered in the Media. This image is a recto page, which has its slightly-larger inside margin at left of the text. For purposes of illustration, I have drawn the invisible TrimBox with a green line.</p> + + +<a id="a4.2.8"></a> +<h4>4.2.8 Advanced: \SetCropmarkGap{<em>length</em>}</h4> + +<p><img class="floatright" src="html-resources/cropmarkgap.png" width="140" height="141" alt="media size larger than trim size"/> This command is only effective if you use the <code>cropmarks</code> class option. Note that user-provided cropmarks are <em>very unusual</em> in the print-on demand market. Do not use them unless your print service specifically requests them. The built-in cropmark capability is very elementary, and cannot be easily enhanced by adding other LaTeX packages.</p> +<p>In the accompanying image with cropmarks, a corner of the Trim Size is at lower right. The invisible TrimBox has been drawn with a green line. The cropmark gap is G.</p> + + + +<a id="a4.3"></a> +<h3>4.3 <img src="html-resources/amb.png" width="30" height="22" alt="emergency icon"/> Emergency Clinic: Rework</h3> + +<div style="padding: 6px 0px 6px 0px; margin:0px 32px 6px 16px; background:#ffe7e7 none"><p class="noindent">Situation: Your book is designed for Trim Size 5.25x8, one of several widely-used American sizes. You have put many hours of work into getting just the right line breaks within paragraphs, and just the right pagination. It looks beautiful. But then you get an e-mail from a British distributor. Could you change to British size B novel format, essentially 5.06x7.81 Trim Size?</p> +<p>Sure, you say. Just needs a little math. Knock 0.095" off each margin. What could be easier? So you try that, but the printer rejects your file. It seems that your original margins were as narrow as they could be, per the printer's specifications. You cannot make them any narrower.</p> +<p>But if you re-size the book and don't knock the margins down, then the text width and height won't be the same. Your text doesn't fit the way it used to. All your lines re-flow, the page breaks are different, and all that work you put into getting just the right appearance must be re-done.</p> +<p><em>Oh, nooooo ...</em></p></div> + +<p>Relax. Here is all you need to do: add <code>\ReworkTrimSize{5.06in}{7.81in}</code>. That's it. Your existing margins will be preserved. The font size, and line skip, will be cleverly re-scaled to fit the new dimensions. Paragraphs and pagination are the same as before.</p> + +<p>There are two Rework commands available. One changes the Trim Size without changing the margins. The other changes the margins without changing the Trim Size. If you wish to change both Trim Size and margins, you may use both commands.</p> + + +<a id="a4.3.1"></a> +<h4>4.3.1 \ReworkTrimSize{<em>width</em>}{<em>height</em>}</h4> + +<p>This command changes the <em>existing</em> Trim Size. If you do not use the <code>\SetTrimSize</code> command, then the existing Trim Size is the default. But if you do use <code>\SetTrimSize</code>, then you must leave that command as-is, and place <code>\ReworkTrimSize</code> later in the Preamble.</p> +<p>If you used <code>\SetMediaSize</code>, you may leave that command as-is, or change it if you wish; the Trim Size does not care.</p> + + +<a id="a4.3.2"></a> +<h4>4.3.2 \ReworkMargins{<em>top</em>}{<em>outside</em>}{<em>bottom</em>}{<em>inside</em>}</h4> + +<p>This command changes the <em>existing</em> margins. If you do not use the <code>\SetMargins</code> command, then the existing margins are the defaults. But if you do use <code>\SetMargins</code>, then you must leave that command as-is, and place <code>\ReworkMargins</code> later in the Preamble.</p> + + +<a id="a4.3.3"></a> +<h4>4.3.3 Example of Rework</h4> + +<p>Here is an example of the Rework commands in use. When the layout is reworked, the font size and (if necessary) baseline skip is scaled to fit the new dimensions, in a way that preserves the original paragraphs and pagination. This is done in a single pass: The method simultaneously works and re-works the layout.</p> +<p>In the following example, the original font size is 11pt, and the baselineskip (calculated based on other factors) is 14.377pt. After rework, the font size is automatically re-calculated to 10.468pt, with lineskip 13.883pt.</p> + +<p class="code"> +<code>\documentclass{novel}<br/> +\SetTrimSize{5.25in}{8in} % Original. American.<br/> +\SetMargins{0.36in}{0.4in}{0.38in}{0.65in} % Original. American<br/> +\ReworkTrimSize{5.06in}{7.81in} % New. Equivalent to British 129mmW x 198mmH.<br/> +\ReworkMargins{12mm}{12mm}{12mm}{15mm} % New. British. +</code></p> + +<p>Result with original layout (above Rework commands commented out):</p> + +<p class="centerimg"><img src="html-resources/originalspread.png" width="726" height="544" alt="original spread, before rework"/></p> + +<p>Result after Rework:</p> + +<p class="centerimg"><img src="html-resources/reworkedspread.png" width="700" height="531" alt="spread after rework"/></p> + + +<a id="a4.3.4"></a> +<h4>4.3.4 Limitations of Rework</h4> + +<p>• The technique has been tested, but it might not always work. Be sure to inspect the result carefully.</p> + +<p>• If you use Rework to make a radical size change, then the resulting font size or line skip might be unattractive.</p> + +<p>• If the reworked pages have one less line than expected (or one more), this is due to roundoff in the calculations. It can usually be fixed by adding or substracting as little as <code>0.001\nbs</code> from the top or bottom rework margin.</p> + +<p>• The biggest obstacle occurs when you specify some internal length in terms of absolute units (such as pt). It is always best to use relative units (such as <code>em</code>, or sometimes <code>\nbs</code>), so that they can be scaled along with the text:</p> + +<p class="code"> +Bad: <code>\hspace{6pt}</code> Good: <code>\hspace{0.5em}</code><br/> +Bad: <code>\kern1pt</code> Good: <code>\kern.08em</code><br/> +Bad: <code>\vspace{0.5in}</code> Good: <code>\vspace{2.4\nbs}</code> +</p> + +<p>• When you use <code>\Rework</code>, images are <em>not</em> scaled. Thus, they will have a different relationship to the surrounding text than they did before. In many cases, this is not a problem. However, an un-scaled image may disrupt the flow of text, or the number of lines in a page, or overlap text that was previously cleared. Look in the log file for an Alert message, which suggests an appropriate image scale, depending on how an image was placed. Problem areas can often be fixed be scaling the related image(s) in an external graphics program (see <a href="noveldocs-08-images.html#a8.3.3">Page 8</a>) then re-compiling with the scaled image(s).</p> +<p>• Note that you may see the Alert whether or not there are problem images, so scaling images will not make the Alert go away. It is a friendly message.</p> + + +<div style="clear:both"></div> + + + + + + + + + + + + +</div><!-- end main --> + +<div id="finish"></div> + +</div><!-- end master --> + +</body> +</html> + diff --git a/Master/texmf-dist/doc/lualatex/novel/noveldocs-05-fonts.html b/Master/texmf-dist/doc/lualatex/novel/noveldocs-05-fonts.html new file mode 100644 index 00000000000..dfeeb50fe1b --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/noveldocs-05-fonts.html @@ -0,0 +1,549 @@ +<!DOCTYPE html> +<html lang="en"> +<head> +<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> +<title>Class novel - 5 - Fonts</title> +<link rel="stylesheet" type="text/css" href="html-resources/novel-doc.css"/> +</head> + +<body> +<div id="master"> + + +<div id="toc"> + +<p>Document class "novel"</p> + +<p><a href="#a5">5. Fonts</a></p> + + +<ul> +<li><a href="#a5.1">5.1 General Considerations</a> + <ul> + <li><a href="#a5.1.1">5.1.1 Licensing</a></li> + <li><a href="#a5.1.2">5.1.2 Technical</a></li> + <li><a href="#a5.1.3">5.1.3 Appearance</a></li> + <li style="margin-bottom:0px;"><a href="#a5.1.4">5.1.4 The Default Fonts</a><br/> + <span style="visibility:hidden">5.1.4 </span>Libertinus and NovelDeco</li> + </ul></li><!-- end 5.1 --> +<li><a href="#a5.2">5.2 Font Names, Files, Features</a> + <ul> + <li><a href="#a5.2.1">5.2.1 Font Family vs. File Name</a></li> + <li><a href="#a5.2.2">5.2.2 Set/New by Family/Filename</a></li> + <li><a href="#a5.2.3">5.2.3 Open Type Features</a><br/> + <span style="visibility:hidden">5.2.3 </span>kerning, ligatures, numbers,<br/> + <span style="visibility:hidden">5.2.3 </span>letters, and many others</li> + <li><a href="#a5.2.4">5.2.4 Scale Pseudo-Feature</a></li> + <li><a href="#a5.2.5">5.2.5 Color and Opacity</a></li> + <li><a href="#a5.2.6">5.2.6 \CreateFeature{}</a></li> + </ul></li><!-- end 5.2 --> +<li><a href="#a5.3">5.3 Setting and Defining Fonts</a> + <ul> + <li><a href="#a5.3.1">5.3.1 General-Purpose Fonts</a><br/> + <span style="visibility:hidden">5.3.1 </span>main, sans, mono</li> + <li style="margin-bottom:0px;"><a href="#a5.3.2">5.3.2 Novel-Specific Fonts</a><br/> + <span style="visibility:hidden">5.3.2 </span>chapter, header, and others</li> + <li style="margin-bottom:0px;"><a href="#a5.3.3">5.3.3 New Font Commands</a></li> + <li><a href="#a5.3.4">5.3.4 Which Font Features?</a></li> + <li><a href="#a5.3.5">5.3.5 Local Feature Modifications</a></li> + </ul></li><!-- end 5.3 --> +<li><a href="#a5.4">5.4 Microtype Setup</a></li> + +</ul> + + + + +<p> </p> + + +</div><!-- end toc --> + + + +<div id="main"> +<a id="thetop"></a> + + +<h1>Documentation for <code>novel</code> document class</h1> +<p>Documentation version: 1.0.6.</p> + +<div class="pagetopage"> +<p><b>User Guide</b></p> +<p><a href="noveldocs-01-overview.html">1. Overview</a></p> +<p><a href="noveldocs-02-class-options.html">2. Class Options</a></p> +<p><a href="noveldocs-03-metadata-pdfx.html">3. Metadata, PDF/X</a></p> +<p><a href="noveldocs-04-layout.html">4. Page Layout</a></p> +<p>5. Choosing Fonts</p> +<p><a href="noveldocs-06-header-footer.html">6. Headers, Footers</a><br/> +<p><a href="noveldocs-07-text-size-style.html">7. Text Sizes, Styles</a></p> +<p><a href="noveldocs-08-images.html">8. Using Images</a></p> +<p><a href="noveldocs-09-chapters-displays.html">9. Chapters, Display Pages</a></p> +</div> + +<a id="a5"></a> +<h2 style="clear:none">5. Fonts</h2> + +<p>This page describes how to choose fonts and font features, and how to apply fonts within your document. If you are looking for information about how to specify the master text point size, see <a href="noveldocs-04-layout.html#a4.2.3">Page 4</a>. If you are looking for information about how to change the size of text within the body of your document, or about how to style text (such as italics), then see <a href="noveldocs-07-text-size-style.html">Page 7</a>.</p> +<p>Forget TeX PostScript fonts such as <code>cmr</code> and encodings such as <code>T1</code>. This is the Twenty-First Century. You will be using Unicode, Open Type fonts, and font features.</p> +<p>You may not have to choose or configure any fonts. The <code>novel</code> class is pre-configured with fonts carefully chosen for print fiction. They come with the SIL Open Font License, and can be used for commercial purposes. So, before you panic about having to learn a new way to handle fonts, try some test documents using the defaults.</p> + + +<a id="a5.1"></a> +<h3>5.1 General Considerations</h3> + +<p>Many TeX fonts are only available in older Type 1 format (PostScript) or even as bitmap metafonts. Do not use them.</p> + +<p>In some other cases, a TeX font package provides both the older format, and a newer Open Type (*.otf or *.ttf) format. The different formats will have different font names. Sometimes the difference is very slight. Carefully look at the font name for the Open Type format. Remember that most on-line discussions will refer to the older fonts, simply because they have been around longer.</p> + +<p>Do not attempt to load a font by the <code>\RequirePackage</code> or <code>\usepackage</code> commands. That will cause TeX to look for the older PostScript fonts, which will probably fail with an eror message about being unable to find metrics. And, even if the fonts happen to load, they will be the wrong ones. Instead, if you choose to use fonts other than the defaults, load them via the font setting commands described on this page.</p> + +<a id="a5.1.1"></a> +<h4>5.1.1 Licensing Issues</h4> + +<p>Presumably, you are writing your novel for commercial value, and do not intend to give anything away for free. For that reason, avoid fonts licensed under the GPL (GNU Public License) unless it has the font exception clause. Some TeX fonts are licensed under GPL, so watch out.</p> + +<p>Beware of fonts "free for personal use" from download sites. Your commercial application is not "personal use." Of course, if you like the font, you may purchase its commercial license.</p> + +<p>Also beware of fonts generically labeled as "freeware" with no particular designer name. If you don't know who created the font, then how do you know that it can be given away for free? Even if there is a designer name, some of them had second thoughts about "freeware." They intended the fonts to be free only if you give your own work away for free. But they didn't mention it. Maybe they have no legal recourse, but you don't want them making anonymous negative reviews of your book.</p> + +<p>You have numerous fonts already installed in your operating system, and perhaps others that came bundled with a particular application. If you intend to use those fonts, carefully read their licenses. It is often the case that fonts bundled with an application may <em>only</em> be used for documents created within, or processed by, that application.</p> + +<p>Always look for a Copyright notice, which can be identified with a particular person or organization. Copyright is good! It means that someone is claiming authorship of the font software. Only the Copyright owner has the right to give the font away for free, or license it to you after payment (often through an intermediary).</p> + +<p>If you prefer free fonts, the most widely accepted license is the <em>SIL Open Font License</em>. This allows you to use the font for commercial purposes, embed it in PDF, modify it to suit your needs (if you change the font name), and even re-distribute the modifications. The default fonts chosen for <code>novel</code> use this license.</p> + + +<a id="a5.1.2"></a> +<h4>5.1.2 Technical Issues</h4> + +<p>Many fonts have technical errors, even among professional fonts. Some of the errors are so minor that they are not worth fixing. This is particularly true for glyphs that are missing extrema.</p> + +<p>However, beware of fonts that are based on traced artwork. The late 1990s had an explosion of amateur dingbat and decorative fonts produced this way, by scanning images from old books and digitizing the scan. The resulting vector glyphs rarely meet standards, and often are quite awful. The problem is that when a commercial printer renders your PDF to print, the printer's software is very different from what you have on your home computer. A technically erroneous glyph might look OK at home, but be rejected commercially.</p> + +<p>If you have the knowledge, you can open a font in font editor software (such as FontForge) and ask it for validation. Missing extrema are rarely a problem, even if a lot of them are missing. Self-intersecting glyphs are not a problem if the the glyph is composed of two elements stuck together, such as Ç composed of C with separate cedilla. However, a self-intersecting glyph may be a problem if its lines criss-cross each other. Open paths, and outer paths drawn the wrong way, are often a problem. If the errors are confined to glyphs that you will not be using, then it can pass.</p> + + +<a id="a5.1.3"></a> +<h4>5.1.3 Appearance Issues</h4> + +<p>There are general expectations for book fonts, in terms of character sizes and shapes, and weights. Many of the widely-used TeX fonts, including Latin Modern, are unacceptable in fiction for this reason. The most commonly-used font in word processors, Times New Roman, is only marginally acceptable for fiction, and only because it is so often used by amateur writers who don't know how to change the font (but write books advising you to change your lifestyle).</p> + +<p>The best way to assess a font is to print it to paper. Computer screens rarely show details, except at large magnification. Depending on whom you ask for an opinion, fiction is most easily read when there are about 60 to 66 characters (including spaces) per line. To evaluate a font for the main text, print out some paragraphs about 4" to 4.25" wide, and scale the font's point size so that you get an average number of characters per line in that range. Be sure to do that: Adobe Garamond Pro at 12pt, Libertinus Serif at 11.4pt, and Libre Caslon Text at 9.6pt (!) provide about the same number of characters per line of text. At the proper point size, some fonts will look too dark, and others will look too light.</p> + +<p>Things to look for: Are the lowercase letters too tall? If they are, then it is hard for readers in many Western languages to find where sentences start, by looking for capital letters. Also, there is less white space between lines, which makes the text appear dense and harder to read. Is the shape of the characters so natural that you don't notice them? That's good! It is your writing, not the font, that is to be noticed. Remember that some fonts are designed for use at large size, in posters; such fonts tend to look mechanical in fiction. Other fonts are designed for computer screens; the letters will be too widely-spaced in fiction. Nearly all modern fonts have decent kerning and important ligatures, so that's not usually a decisive factor.</p> + +<p>The prevailing rule: If you notice the font, it's wrong.</p> + + +<a id="a5.1.4"></a> +<h4>5.1.4 The Default Fonts</h4> + +<p>After considerable examination of fonts, both within and without TeX, I settled on the <em>Libertinus</em> font family. This is a fork of the well-known <em>[Linux] Libertine</em> and <em>Biolinum</em> fonts. Libertinus is available only as Open Type, and can be installed as TeX package <code>libertinus</code>, or downloaded separately. Note that <code>\RequirePackage{libertinus}</code> and <code>\usepackage{libertinus}</code> <em>do not work</em>. You have to get the fonts yourself.</p> + +<p>Libertinus Serif has a favorable combination of quality, character set, Open Type features, glyph design, and licensing. Its character shapes are very good for flowing text, as in fiction. Do not confuse [Linux] Libertine or Libertinus with <em>Liberation</em>, which is a font resembling Times New Roman with a "word processor" look about it.</p> + +<p>If you don't have Libertinus, then <code>novel</code> will look for [Linux] Libertine and Biolinum. If you don't have those either, then solely for the purpose of providing minimal working examples, the Latin Modern fonts will be used as a last resort. But don't rely on Latin Modern for an actual book! Set your own Open Type fonts, or install Libertinus or Libertine/Biolinum.</p> + +<p>Class <code>novel</code> is bundled with its own custom font, NovelDeco. This font provides some hard-to-find capabilities that you might find useful.</p> + +<p>Libertinus, Libertine/Biolinum, and NovelDeco are licensed under the SIL Open Font License.</p> + +<p>Remember: You do not have to use TeX fonts. If you have the license for a font such as Adobe Garamond Pro, and wish to use it, you can easily do so.</p> + + + +<a id="a5.2"></a> +<h3>5.2 Font Names, Files, and Features</h3> + +<p>If you have used Open Type fonts before, then much of this will be familiar to you. But do glance through it. The use of exotic and context-dependent features will not be discussed, partly because they are rarely used in fiction, and partly because I lack experience in using them.</p> + +<p>You will be using <code>fontspec</code> syntax to select your own fonts. Much of what follows is a digested portion of the full <code>fontspec</code> documentation. There are many more features, and ways to use them, than will be described below.</p> + + +<a id="a5.2.1"></a> +<h4>5.2.1 Font (Family) Name vs. Font File Name</h4> + +<p>A <em>font file</em> is an individual file, with its own <em>file name</em>, including file extension. For example, libertinusserif-regular.otf and libertinusserif-italic.otf are two different font files. This much is obvious.</p> + +<p>A <em>font family name</em>, often merely called <em>font name</em>, refers to one or more font files that are variations of the same basic font. Some fonts are so unique that the family consists of just one file. For example, the NovelDeco font family consists of the one file NovelDeco.otf. Typically, a font family has four files, consisting of Regular, Italic, Bold, and BoldItalic variants. Even though there are four font files, there is a single font family name. Many font families have more than four files, including Semibold and Light weights, and Condensed tracking. It is up to the font designer to decide whether a Condensed variation of the "Bubble Turble" font should be treated as a member of the "Burble Turble" family, or as a separate "Burble Turble Condensed" family.</p> + +<p>The font (family) name can be learned by opening font files in your system font viewer. Currently, the Windows 10 font viewer uses "Font name" and the Ubuntu font viewer puts the font name in more prominent type. A font (family) name may contain more than one word, with or without spaces, and may contain a general classification such as <em>serif</em>, <em>sans</em>, or <em>mono</em>, because those are actually different families. But it will not contain words such as <em>regular</em>, <em>medium</em>, <em>semibold</em>, <em>bold</em>, or <em>italic</em>; those are for individual members of the same family. Within TeX, some of the older PostScript fonts have been re-worked as newer TrueType and Open Type fonts. The family names are slightly different, so pay attention.</p> + + +<p class="centerimg"> +<img src="html-resources/win10libser.png" width="268" height="184" alt="Windows 10 font viewer"/> +<img src="html-resources/ublibser.png" width="431" height="176" alt="Ubuntu font viewer"/> +</p> + + + +<a id="a5.2.2"></a> +<h4>5.2.2 Set/New by Font Name vs. File Name</h4> + +<p>When you set an existing font, or create a new font command, you can use either the font (family) name, or the specific font file name. However, there may be a big difference in results!</p> + +<p style="margin-top:10px"><b>By family name:</b></p> +<p><img class="floatright" style="padding-top:12px" src="html-resources/fontbyfamily.png" width="338" height="42" alt="font family defined"/> When you use the <em>font family name</em>, you configure all of the Regular, Italic, Bold, and BoldItalic variants. The usual TeX commands will be applied:</p> +<p>Preamble:</p> +<p class="code" style="clear:both"><code>\NewFontFamily\rway{Raleway}</code></p> +<p>Document Body:</p> +<p class="code"><code>{\rway I came, \textbf{I saw}, \emph{I conquered}, \textsc{I left}.}</code></p> + + +<p style="margin-top:10px"><b>By file names:</b></p> +<p><img class="floatright" style="padding-top:12px" src="html-resources/fontbyfilenamei.png" width="335" height="44" alt="font file defined"/> However, if you specify the <em>font file name</em>, then <em>only</em> that font file will be used, regardless of requests for bold or italic. Small caps will be honored, if the specific file has them:</p> +<p>Preamble:</p> +<p class="code" style="clear:both"><code>\NewFontFamily\rwayi{Raleway-Regular-Italic.otf}</code></p> +<p>Document Body:</p> +<p class="code"><code>{\rwayi I came, \textbf{I saw}, \emph{I conquered}, \textsc{I left}.}</code></p> + + +<p style="margin-top:10px"><b>File Name Combinations:</b></p> +<p><img class="floatright" style="padding-top:12px" src="html-resources/frankenfont.png" width="312" height="41" alt="frankenfont"/> What you write is what you get. You can customize a font family by individually selecting its members. Here is the syntax.</p> + +<p>Preamble:</p> +<p class="code" style="clear:both"><code>\NewFontFamily\frankenfont[% note the % at linebreaks<br/> + ItalicFont=BaskervilleF-Italic.otf,%<br/> + BoldFont=libertinusserif-semibold.otf,%<br/> + BoldItalicFont=texgyrepagella-bolditalic.otf,%<br/> +]{Raleway-Medium.otf}</code></p> + +<p>Document Body:</p> +<p class="code"><code>{\frankenfont I came, \textbf{I saw}, \emph{I conquered}, \textsc{I left}.}</code></p> + + +<p style="margin-top:10px"><b>Semibold, Light, etc.:</b> The above syntax is especially useful when you wish to specify semibold (if available), rather than bold. It is also a way to select something such as light versions:</p> + +<p class="code"><code>\NewFontFamily\rwlight[% note the % at linebreaks<br/> + ItalicFont=Raleway-Light-Italic.otf,%<br/> + BoldFont=Raleway-Medium.otf,%<br/> + BoldItalicFont=Raleway-Medium-Italic.otf,%<br/> +]{Raleway-Light.otf}</code></p> + +<p>Note that the font file in braces is the one used as the "regular" font, in this definition.</p> + + +<a id="a5.2.3"></a> +<h4>5.2.3 Open Type Features</h4> + +<p>Features are variations, contained within a single font file. In the bad old days, when you wanted true small caps, you had to load a separate font file that had them (and did not have ordinary lowercase letters). Now, if an Open Type font file has the "smcp" feature, you obtain the small caps from within the same file, by asking for them. Requests for the feature may be made on-the-fly, or pre-loaded for global use.</p> + +<p>Here are several of the most frequently-used features, relevant to fiction writing. There are many more, and most fonts have only a few of them. Even when a font has a feature, it may be limited to some portion of the characters. For example, it is common for small caps to be available only for Latin-1 letters, even though the font also contains Greek and Cyrillic. To put this another way: The availability of a feature does not tell you its breadth of coverage. Unless the font has documentation showing coverage of its features, the only way to find out is to create and print a test page.</p> + + +<table class="preconf"> +<caption> +Some Frequently-Used Open Type Features +</caption> +<thead> +<tr> +<th>Description</th> +<th>Open Type code </th> +<th>fontspec code</th> +</tr> +</thead> +<tbody> +<tr> +<td><p>kerning</p></td> +<td><p>kern</p></td> +<td><p>Kerning=On<br/><em>enabled by default</em></p></td> +</tr> +<tr> +<td><p>common ligatures</p></td> +<td><p>liga</p></td> +<td><p>Ligatures=Common<br/><em>enabled: mainfont, sansfont</em></p></td> +</tr> +<tr> +<td><p>Tex ligatures</p></td> +<td><p>tlig</p></td> +<td><p>Ligatures=TeX<br/><em>enabled by default</em></p></td> +</tr> +<tr> +<td><p>lowercase letters to small caps</p></td> +<td><p>smcp</p></td> +<td><p>Letters=SmallCaps</p></td> +</tr> +<tr> +<td><p>uppercase letters to small caps</p></td> +<td><p>c2sc</p></td> +<td><p>Letters=UppercaseSmallCaps</p></td> +</tr> +<tr> +<td><p>lining numerals</p></td> +<td><p>lnum</p></td> +<td><p>Numbers=Lining</p></td> +</tr> +<tr> +<td><p>oldstyle numerals</p></td> +<td><p>onum</p></td> +<td><p>Numbers=OldStyle<br/><em>enabled: mainfont, sansfont</em></p></td> +</tr> +</tbody> +</table> + +<p>• Kerning is the automatic adjustment of spacing between letters, so that they fit together nicely. Common ligatures are substitutions, such as a combined <code>ff</code> character for two consecutive <code>f</code> characters. It is up to the font designer to determine which ligatures, if any, are common.</p> + +<p>• TeX ligatures (such as replacing <code>``</code> with <code>“</code> and <code>---</code> with <code>—</code>) are not actually an Open Type feature, but they are treated that way by the software. All of these are enabled by default. The <code>fontspec</code> manual explains how to disable them, if necessary.</p> + +<p>• The SmallCaps feature applies only to lowercase letters; ordinary capitals remain ordinary capitals. UppercaseSmallCaps deals only with converting ordinary capitals to small caps. If you want both, use both. In most fonts that have them, small caps are slightly taller than lowercase, and slightly more widely spaced. What distinguishes real small caps from fake ones (obtained by scaling ordinary capitals) is that the weight and spacing are more compatible with surrounding text.</p> + +<p class="centerimg"><img src="html-resources/smallcapsrealfake.png" width="478" height="43" alt="real vs fake small caps"/></p> + +<p>• Lining numerals are the ones most familiar to you, from math or accounting. They sit on the baseline and have the height of capital letters. That's just right for doing calculations, and doesn't look bad for things such as page numbers and chapter numbers.</p> +<p>• When lining numerals are mingled with flowing text, they may stand out too much. OldStyle numerals are more like flowing text: Most of the numerals are at lowercase height, with ascenders and descenders. Compare the first number as OldStyle, the second as Lining:</p> + +<p class="centerimg"><img src="html-resources/jollybeers.png" width="499" height="52" alt="oldstyle vs lining numerals"/></p> + +<p>Most fonts use Lining numerals as their default. A few default to OldStyle numerals. Thus, you should explicitly call for the kind of numerals you wish to use.</p> + +<p>• True OldStyle numerals have a flat top on <em>one</em>, and a very round <em>zero</em>: <img src="html-resources/10trueold.png" width="37" height="13" alt="true oldstyle 10"/> This may be a bit distracting. Some fonts use a transitional form, where the one has a tilted top (like big 1) and the zero is not so round: <img src="html-resources/10transold.png" width="37" height="13" alt="transitional oldstyle 10"/> Others offer you a choice, via an Open Type "style set." See the <code>fontspec</code> manual for how to code style sets.</p> + +<p>• There are many more Open Type features, most of which are not useful in ordinary fiction writing. Fonts rarely have more than a few features. Some features (such as the ones shown above) have a specific meaning. Other features, such as "style sets", have whatever meaning the font designer assigns them; Thus the "ss03" feature of one font may do something very different from "ss03" in a different font.</p> + + +<a id="a5.2.4"></a> +<h4>5.2.4 Scale as Pseudo-Feature</h4> + +<p>Although it is not an Open Type feature, <code>Scale=<em>number</em></code> may be written like a feature. <code>Scale</code> globally adjusts the size of the font, relative to what it would otherwise be. If a local font size command is also applied, then the result is the compounded value.</p> +<p>If the font will be mingled with other fonts in the same place, Scale can tweak a font so that it does not stand out. If Scale does not exceed 1, then the baselineskip will not be affected. Over 1 risks spreading lines to accomodate the extra size; this should not be done for fonts that will appear in the flowing main text. But over 1 is acceptable for display fonts that do not wrap lines and do not mingle with main text.</p> +<p>Example: <em>Orbitron</em> is a special-purpose font with a mechanical or futuristic look. Its characters are much larger and heavier than would be found in book fonts. If I wish to mingle Orbitron with ordinary text, I might load the font like this:</p> + +<p class="code"><code>\NewFontFace\orbitron[Scale=0.6]{Orbitron} % Preamble</code></p> + +<p>Then in the document body, I could use it like this, where I have added <code>\textls</code> to spread the letters by a tiny bit:</p> + +<p class="code"><code>The message was brief: \textls{\orbitron DIE, EARTHLING.} Captain Withens smiled as he oiled his ray-gun. But ray-guns don't use oil.\par</code></p> + +<p class="centerimg"><img src="html-resources/charscaletext.png" width="522" height="63" alt="charscale text"/> + +<p>Scale is more often used for fonts that are pre-defined to have a special meaning and location, such as chapter titles or page headers. There, the font is not mingled with ordinary text, and it is OK to use a larger Scale. Then, it is not necessary to use local font scaling commands each time the font is used.</p> + + +<a id="a5.2.5"></a> +<h4>5.2.5 Color and Opacity</h4> + +<p>Even though the <code>fontspec</code> syntax allows you to set <code>Color</code> and <code>Opacity</code> as pseudo-features when you define a font, <em>the novel class blocks these features.</em> If you attempt to set them as features in a font definition, an error will result. The same applies if you attempt to add them, using <code>\addfontfeature</code>. However, you can still make use of grayscale using ordinary, local color commands.</p> +<p>When you use the <code>graytext</code> class option, you may write text in grayscale, using commands from the included <code>xcolor</code> package. You should only do this for text that is in special locations. For example, if you begin each chapter with a number that is very large, you might wish to make that number gray, so that it does not overpower the main text.</p> +<p>To avoid possible conflicts, the color specification should be chosen from a limited list of names. In order from dark to light: black, blue, violet, darkgray, purple, red, teal, olive, magenta, gray, brown, green, orange, cyan, lightgray, lime, pink, yellow, white. They will all be rendered in <em>shades of gray</em> (of course, black and white will be themselves). You may also choose from this more convenient list: black, gray1, gray2, gray3, gray4, gray5, gray6, gray7, gray8, gray9, white.</p> +<p>If <code>graytext</code> is not chosen as class option, then any color (even white) will be rendered as black.</p> + + +<a id="a5.2.6"></a> +<h4>5.2.6 \CreateFeature{<em>code</em>}{<em>substitutions</em>}</h4> + +<p>Once in a while, a font has a glyph that you would like to use, but it is not included in any of the font's Open Type feature sets. So, how to you grab that particular glyph? For example: One well-known font has a glyph named <em>emdash.alt</em>, which is not as long as the font's ordinary <em>emdash</em> glyph, and looks better in text. Unfortunately, <em>emdash.alt</em> is not in any of the font's style sets. Without some trickery, only a program such as InDesign can grab that glyph.</p> +<p>Thanks to the included <code>fontspec</code> 2016 update, <code>novel</code> has the necessary trickery. Command <code>\CreateFeature</code> creates a fake Open Type feature code, and assigns your list of substitutions to that code. Use comma-separated entries if there are multiple substitutions. For the case in question:</p> + +<p class="code"><code>\CreateFeature{myem}{emdash=emdash.alt}</code></p> + +<p>The code <code>myem</code> was randomly chosen as something that is not already defined among Open Type feature codes. Once specified, the fake feature may be used in any font definition, such as this:</p> + +<p class="code"><code>\SetMainFont[RawFeature=+myem]{Adobe Garamond Pro}</code></p> + +<p>Of course, the fake feature has no effect if the font does not have the subsitution. Note that this technique is only used for a list of subtitutions, not for ligatures or any context-dependent features.</p> + + + +<a id="a5.3"></a> +<h3>5.3 Setting and Defining Fonts</h3> + +<p>Some font commands are pre-defined by <code>fontspec</code>, for general purposes. These indicate the kind of font: main (meaning serif), sans, or mono. They may be used wherever you wish, for any purpose. Only the <em>mainfont</em> has a particular meaning, as the standard default font for your book text.</p> + +<p>Other pre-defined font commands are specific to <code>novel</code>. These fonts are used in specific places, or for specific purposes. They are called by other macros, and are not normally available for general purposes.</p> + +<p>Whether the font command is pre-defined by <code>fontspec</code> or by <code>novel</code>, it is "set". But you can also create your own font commands, which are "new". The syntax is explained below.</p> + +<p>When more than one feature is used, they must be separated by commas.</p> + + + +<a id="a5.3.1"></a> +<h4>5.3.1 Setting Pre-Defined, General-Purpose Font Commands</h4> + +<p>As a matter of coding style, I use capital camel case ForImportantSettings. Many commands, such as <code>\SetMainFont</code>, are merely an alias for the lowercase commands such as <code>\setmainfont</code>, and the commands may be used interchangeably.</p> + +<p>Several standard font selection commands are not specific to <code>novel</code>. You may never need them, but here they are:</p> + +<div class="fontcommand"> +<pre><b>mainfont</b></pre> +<p>Intended Usage: serif. Normal text.</p> +<p>Default features: OldStyle numbers, kerning, common ligatures, TeX ligatures.</p> +<p>Preamble: <code>\SetMainFont[<em>features</em>]{<em>font</em>}</code></p> +<p>Document: <code>\rmfamily{<em>text</em>}</code></p> +<p>Pre-Configured Font: Libertinus Serif, using Semibold instead of Bold.</p> +<p>Backup Font: If you do not have Libertinus Serif, then Linux Libertine O will be tried.</p> +</div> + +<div class="fontcommand"> +<pre><b>sansfont</b></pre> +<p>Intended Usage: sans-serif. Rarely used in fiction.</p> +<p>Default features: OldStyle numbers, kerning, common ligatures, TeX ligatures.</p> +<p>Preamble: <code>\SetSansFont[<em>features</em>]{<em>font</em>}</code></p> +<p>Document: <code>\sffamily{<em>text</em>}</code></p> +<p>Pre-Configured Font: Libertinus Sans</p> +<p>Backup Font: If you do not have Libertinus Sans, then Linux Biolinum O will be tried.</p> +</div> + +<div class="fontcommand"> +<pre><b>monofont</b></pre> +<p>Intended Usage: monospaced. Rarely used in fiction.</p> +<p>Default features: TeX ligatures.</p> +<p>Preamble: <code>\SetMonoFont[<em>features</em>]{<em>font</em>}</code></p> +<p>Document: <code>\ttfamily{<em>text</em>}</code></p> +<p>Pre-Configured Font: Libertinus Mono</p> +<p>Backup Font: If you do not have Libertinus Mono, then Linux Libertine Mono O will be tried.</p> +</div> + +<p>In all of the above cases, if neither the default nor backup font is found, and you do not set the font yourself, then Latin Modern (Open Type) fonts will be used, but only because you have them.</p> + +<p>• You should never need math mode in a novel. To prevent the software from loading Computer Modern fonts, package <code>unicode-math</code> is used. Note that in <code>novel</code>, the dollar sign <code>$</code> has its ordinary meaning as dollar, once the Preamble completes. It is <em>not</em> a means to enter or leave math mode.</p> + + + +<a id="a5.3.2"></a> +<h4>5.3.2 Setting Novel-Specific, Pre-Defined Font Commands</h4> + +<p>Class <code>novel</code> comes with a variety of pre-configured header/footer styles and chapter titles. These are described in detail on other documentation pages. You do not have to set these unless you wish to do so, because all of them (except <code>decofont</code> will default to variations on the main font.</p> +<p>Each of these font commands has an "intended" usage, shown in the following map. When you allow <code>novel</code> to style your document, it will automatically choose the right font for the right place. But if you create custom styles, you will have to specify the fonts.</p> + +<p class="centerimg"><img src="html-resources/fonts-in-use.png" width="660" height="530" alt="map of standard font locations"/></p> + +<div class="fontcommand"> +<pre><b>chapterfont</b></pre> +<p>Intended Usage: chapter titles.</p> +<p>Default features: kerning, TeX ligatures.</p> +<p>Preamble: <code>\SetChapterFont[<em>features</em>]{<em>font</em>}</code></p> +<p>Document: <code>{\chapterfont <em>text</em>}</code></p> +<p>Pre-Configured Font: Duplicate of mainfont, but at Scale=1.6.</p> +</div> + +<div class="fontcommand"> +<pre><b>subchfont</b></pre> +<p>Intended Usage: chapter subtitles</p> +<p>Default features: kerning, TeX ligatures.</p> +<p>Preamble: <code>\SetSubchFont[<em>features</em>]{<em>font</em>}</code></p> +<p>Document: <code>{\subchfont <em>text</em>}</code></p> +<p>Pre-Configured Font: Duplicate of mainfont, but at Scale=1.2.</p> +</div> + +<div class="fontcommand"> +<pre><b>headfont</b></pre> +<p>Intended Usage: page header and footer</p> +<p>Default features: kerning, TeX ligatures.</p> +<p>Preamble: <code>\SetHeadFont[<em>features</em>]{<em>font</em>}</code></p> +<p>Document: <code>{\headfont <em>text</em>}</code></p> +<p>Pre-Configured Font: Duplicate of mainfont, but at Scale=0.92.</p> +</div> + +<div class="fontcommand"> +<pre><b>decofont</b></pre> +<p>Intended Usage: special decorations and acronyms</p> +<p>Most usage of <em>decofont</em> is indirect, via <code>\decoglyph</code> and <code>\acronym</code> commands.</p> +<p>Default features: kerning, TeX ligatures.</p> +<p>Preamble: <code>\SetDecoFont[<em>features</em>]{<em>font</em>}</code></p> +<p>Document: <code>{\decofont <em>text</em>}</code></p> +<p>Pre-Configured Default: NovelDeco.otf <em>see explanation below</em></p> +</div> + +<p>• The defaults will automatically track a change to the mainfont. For example, if you choose Adobe Garamond Pro as the mainfont, then the chapterfont (and all the others except decofont) will be variations of Adobe Garamond Pro. You may still manually set them to other fonts or with other features.</p> + +<p>• In <code>novel</code>, certain styles use the fonts according to their descriptive command name. For example, <code>chapterfont</code> is intended for chapter titles. If you use one of the pre-defined chapter title commands, this font will be automatically selected, without the need for you to write <code>{\chapterfont <em>title</em>}</code>. If you choose to create your own chapter styles, you do not have to use <code>chapterfont</code>. But if you do, it will be easier to keep track of things. Similarly, you could use <code>chapterfont</code> outside of chapter titles, but that could lead to confusion if you lose track of your own coding.</p> + +<p>• The same applies to the other pre-defined fonts. Each has a place where it is used by default in pre-defined styles. If you write your own style code, then you should choose the appropriate font (but it is not required). And, the font can be used elsewhere in the document, for other purposes.</p> + +<p>• Most applications of <code>decofont</code> are indirect. Instead of requesting arbitrary text in this font, you use commands such as <code>\decoglyph</code> or <code>\acronym</code> for specific purposes. The <code>decofont</code> is NovelDeco.otf. Its font license allows modification (if you know how), but then you must change its internal font name and file name. In that case, you can use <code>\SetDecoFont</code> to point to your own derivative of NovelDeco. Do not use this command to choose an entirely different font, or macros that depend on it will fail, perhaps without warning. If you need an entirely different font for your own purposes, create a new font using the command shown below.</p> + + +<a id="a5.3.3"></a> +<h4>5.3.3 Creating New Font Commands</h4> + +<p>If you wish to create a new font command, so that you can apply it to text, the syntax differs from the "Set" commands shown above.</p> +<p>Suppose that you wish to create a font command <code>\drabble</code> which will be used like this:</p> +<p class="code"><code>{\drabble This text is in the font selected by the drabble command}</code></p> +<p>Here is how you you define it:</p> +<p class="code"><code>\NewFontFamily\drabble[<em>features</em>]{<em>font family name</em>}</code></p> +<p>The syntax begins with <code>\NewFontFamily</code>, followed by the macro name you wish to create, followed by the optional Open Type features, and finally the font family name.</p> +<p>If the font is in a family by itself, without accompanying italic or bold variants, use this:</p> +<p class="code"><code>\NewFontFace\drabble[<em>features</em>]{<em>font name</em>}</code></p> +<p>Note that the new font command works "inside the braces":</p> +<p class="code"><code>{\drabble text}</code>.</p> +<p>If it is part of a family, then the usual commands for selecting italic and bold will choose the appropriate fonts.</p> +<p>• When you define new fonts, kerning and TeX ligatures are enabled by default. Any other features (such as common ligatures) must be explicitly specified by you.</p> + + + +<a id="a5.3.4"></a> +<h4>5.3.4 Which Open Type Features Are In a Font?</h4> + +<p>You have a font. It has Open Type features. But which features does it have? There are several ways to find out, but the simplest and most reliable way is to request a feature, and see what happens. For example:</p> + +<p class="code"><code> +% !TeX program = LuaLaTeX<br/> +% !TeX encoding = UTF-8<br/> +\documentclass{novel}<br/> +\setlength\parindent{0pt}<br/> +%<br/> +\NewFontFace\testlibserit[VerticalPosition=Superior]{libertinusserif-italic.otf}<br/> +\NewFontFace\testcin[VerticalPosition=Superior]{Cinzel-Regular.otf}<br/> +%<br/> +\begin{document}<br/> +Libertinus Serif, Italic:\\{\testlibserit 0123456789 abcdefghijklmnopqrstuvwxyz \#‡}\par<br/> +\null<br/> +Cinzel, Regular:\\{\testcin 0123456789 abcdefghijklmnopqrstuvwxyz \#‡}\par<br/> +\end{document}\par</code></p> + + +<p>The resulting PDF shows that Libertinus Serif, Italic has numbers and lowercase letters as superiors. Cinzel, Regular does not have this feature (if it doesn't have it for these characters, it is not likely to have it for any others).</p> + +<p>• Sometimes a font has features that you would like to use, but you do not know they are there. For example, the font linlibertine-regular.otf normally has capital W like most fonts, with three peaks. In its feature <code>ss05</code>, it has an alternative W with four peaks, like Garamond fonts. You can find that information in several ways: (1) Does the font come with documentation? Many do. (2) Is it described on a web site that offers the font? (3) Get a font editor, such as the free FontForge, and open the font. Look at the Element > Font Info > Lookups menu. Then you can discover which features it has, and which characters are contained in each feature. You can also look at the glyph drawings.</p> + +<p>• Just remember that there is no specific meaning to a style set, such as <code>ss05</code>. It does whatever the font designer wants it to do, which varies from font to font.</p> + + +<a id="a5.3.5"></a> +<h4>5.3.5 Local Modifications to Open Type Features</h4> + +<p>If you specify a particular Open Type feature, it will always be generally for that font command. So if you define a new font command with <code>Letters=SmallCaps</code> as a feature (and if the font actually has them), then small caps will be used for that font, whether or not you locally request them with a command such as <code>\textsc</code>.</p> + +<p>Often, you can add (or sometimes remove) features on a local basis. For example, suppose that you defined the font without using is <code>ss03</code> style set. You can locally add that feature to some text, using a command that looks like this:</p> + +<p class="code"><code>{\addfontfeature{<em>which feature</em>} <em>applied to this text</em>}</code></p> + +<p>The above code assumes that you are already using the font in that location. You cannot apply <code>ss03</code> from one font to an entirely different font!</p> + +<p>See the <code>fontspec</code> documentation for details of <code>\addfontfeature</code>.</p> + +<p>As an alternative the changing features locally, you can define different font commands to call the same underlying font, but with different features. For example, that is how <code>novel</code> defines the default <code>\chapterfont</code> and <code>\headfont</code>. Unless you manually change them, these fonts are the same as the main font. However, these fonts use Lining numbers instead of OldStyle, do not enable common ligatures, and are at different scales.</p> + +<p>Two ways to accomplish the same thing:</p> + +<p class="code"><code> +\NewFontFamily\baskf{BaskervilleF}<br/> +\NewFontFamily\baskftab[Numbers=Monospaced]{BaskervilleF} % tnum feature<br/> +\begin{document}<br/> +Some text {\baskftab hello 123} is here.<br/> +Some text {\baskf\addfontfeature{Numbers=Monospaced} hello 123} is here. +</code></p> + + +<a id="a5.4"></a> +<h3>5.4 Microtype Setup</h3> + +<p>The included <code>microtype</code> package comes with standard settings that are, in my opinion, too extreme for fiction. Although there are font to font differences, most modern book fonts have similar properties, as far as <code>microtype</code> is concerned. For this reason, a custom configuration file <code>novel-microtype.cfg</code> is included, and automatically used by <code>novel</code>.</p> + +<p>Not all <code>microtype</code> features are available, but the most important ones (protrusion, expansion, tracking) are. The default expansion setting is 20, which corresponds to the ability to tweak for about one character per line of book text. It is large enough to be useful, small enough to be inconspicuous. You may change it using standard <code>\microtypesetup</code> commands, if you wish.</p> + +<p>If you do not explicitly request a configuration file, perhaps by only changing stretch and shrink, then <code>novel-microtype.cfg</code> will still be used.</p> + + + +</div><!-- end main --> + +<div id="finish"></div> + +</div><!-- end master --> + +</body> +</html> + diff --git a/Master/texmf-dist/doc/lualatex/novel/noveldocs-06-header-footer.html b/Master/texmf-dist/doc/lualatex/novel/noveldocs-06-header-footer.html new file mode 100644 index 00000000000..f85d8cad541 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/noveldocs-06-header-footer.html @@ -0,0 +1,297 @@ +<!DOCTYPE html> +<html lang="en"> +<head> +<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> +<title>Class novel - 6 - Headers and Footers</title> +<link rel="stylesheet" type="text/css" href="html-resources/novel-doc.css"/> +</head> + +<body> +<div id="master"> + + +<div id="toc"> + +<p>Document class "novel"</p> + +<p><a href="#a6">6. Headers and Footers</a></p> + +<ul> + <li><a href="#a6.1">6.1 Global Header/Footer Settings</a> + <ul> + <li><a href="#a6.1.1">6.1.1 \SetHeadJump{}<br/><span style="visibility:hidden">6.1.1 </span>\SetFootJump{}</a></li> + <li><a href="#a6.1.2">6.1.2 \SetHeadFootStyle{}</a> + <li><a href="#a6.1.3">6.1.3 \SetEmblems{}{}</a></li> + <li><a href="#a6.1.4">6.1.4 \SetPageNumberStyle{}</a></li> + <li><a href="#a6.1.5">6.1.5 \SetHeadFont[]{}</a></li> + <li><a href="#a6.1.6">6.1.6 \SetLooseHead{}</a></li> + <li><a href="#a6.1.7">6.1.7 \SetChapterDisplay{}</a></li> + </ul> + </li><!-- end 6.1 --> + <li><a href="#a6.2">6.2 Local Header/Footer Settings</a> + <ul> + <li><a href="#a6.2.1">6.2.1 \SetVersoHeadText{}<br/><span style="visibility:hidden">6.2.1 </span>\SetRectoHeadText{}</a></li> + <li><a href="#a6.2.2">6.2.2 \thispagestyle{}</a> + </ul> + </li><!-- end 6.2 --> + +</ul> + +<p> </p> + +</div><!-- end toc --> + + + +<div id="main"> + +<a id="a6"></a> + + +<h1>Documentation for <code>novel</code> document class</h1> +<p>Documentation version: 1.0.6.</p> + + +<div class="pagetopage"> +<p><b>User Guide</b></p> +<p><a href="noveldocs-01-overview.html">1. Overview</a></p> +<p><a href="noveldocs-02-class-options.html">2. Class Options</a></p> +<p><a href="noveldocs-03-metadata-pdfx.html">3. Metadata, PDF/X</a></p> +<p><a href="noveldocs-04-layout.html">4. Page Layout</a></p> +<p><a href="noveldocs-05-fonts.html">5. Choosing Fonts</a></p> +<p>6. Headers, Footers<br/> +<p><a href="noveldocs-07-text-size-style.html">7. Text Sizes, Styles</a></p> +<p><a href="noveldocs-08-images.html">8. Using Images</a></p> +<p><a href="noveldocs-09-chapters-displays.html">9. Chapters, Display Pages</a></p> +</div> + + +<h2 style="clear:none;">6. Headers and Footers</h2> + +<p><b>Overview:</b> The <code>novel</code> class has a default header style. If you like it, then you do not have to use any of the configuration commands. So, before studying these commands, do a test document that uses the defaults.</p> + +<p>You may choose among several pre-configured header/footer styles. Then, you may change the appearance, content, and position. If none of it works for you, then you may define your own headers/footers using <code>fancyhdr</code> syntax. However, just about every style used in fictional works can be obtained using the pre-configured styles and adjustments.</p> + +<p>Individual pages, such as title, copyright, and new chapters, can have the header/footer style changed locally, on a per-page basis.</p> + + + + +<a id="a6.1"></a> +<h3 style="clear:none;">6.1 Global Header/Footer Settings, only in Preamble.</h3> + +<p>These commands determine whether your book will have headers and/or footers, and set the default style that is used for nearly all pages of the text. Per-page exceptions, such as for blank pages, title, copyright, and new chapters, are performed using the local settings commands.</p> + + + +<a id="a6.1.1"></a> +<h4>6.1.1 <code>\SetHeadJump{<em>number of baselines</em>}</code>, <code>\SetFootJump{<em>number of baselines</em>}</code></h4> +<p>These two commands pertain to page layout, rather than style. Their usage is described on <a href="noveldocs-04-layout.html#a4.2.6">Page 4</a>.</p> + + + + +<a id="a6.1.2"></a> +<h4>6.1.2 <code>\SetHeadFootStyle{<em>number</em>}</code></h4> +<p>Command <code>\SetHeadFootStyle{<em>number</em>}</code> chooses among several pre-configured header/footer styles, numbered 1 through 6. The default is style 1. The internals of the configuration can then be changed using a variety of commands.</p> +<p>Some styles support an optional "emblem", which applies a decoration near the page number.</p> +<p>Style 0 means neither header nor footer. Not practical for fiction, but it exists.</p> + +<p> </p> + + +<pre style="clear:both"><img class="floatright" src="html-resources/headfoot1.png" width="276" height="219" alt="style 1" title="style 1"/> +<b>\SetHeadFootStyle{1}</b></pre> +<p>Only header.<br/> +Page number at outside (left verso, right recto).<br/> +Optional emblem adjacent to page number.<br/> +Text centered. Default author verso, title recto.<br/> +<em>This is the default for the novel document class.</em></p> + +<pre style="clear:both"><img class="floatright" src="html-resources/headfoot2.png" width="276" height="219" alt="style 2" title="style 2"/> +<b>\SetHeadFootStyle{2}</b></pre> +<p>Only footer.<br/> +Page number at outside (left verso, right recto).<br/> +Optional emblem adjacent to page number.</p> + +<pre style="clear:both"><img class="floatright" src="html-resources/headfoot3.png" width="276" height="219" alt="style 3" title="style 3"/> +<b>\SetHeadFootStyle{3}</b></pre> +<p>Only footer.<br/> +Page number centered.<br/> +Disregards emblem, if coded.</p> + +<pre style="clear:both"><img class="floatright" src="html-resources/headfoot4.png" width="276" height="219" alt="style 4" title="style 4"/> +<b>\SetHeadFootStyle{4}</b></pre> +<p>Only header.<br/> +Page number at outside (left verso, right recto).<br/> +Optional emblem adjacent to page number.<br/> +Text towards outside, instead of centered.<br/> +Text begins or ends 1em from the emblem.<br/> +Default author verso, title recto.</p> + +<pre style="clear:both"><img class="floatright" src="html-resources/headfoot5.png" width="276" height="219" alt="style 5" title="style 5"/> +<b>\SetHeadFootStyle{5}</b></pre> +<p>Header and Footer.<br/> +Page number centered in footer.<br/> +Disregards emblem, if coded.<br/> +Text centered in header.<br/> +Default author verso, title recto.</p> + +<pre style="clear:both"><img class="floatright" src="html-resources/headfoot6.png" width="276" height="219" alt="style 6" title="style 6"/> +<b>\SetHeadFootStyle{6}</b></pre> +<p>Only header.<br/> +Page number at outside (left verso, right recto).<br/> +Optional emblem adjacent to page number.<br/> +Text towards inside, instead of centered.<br/> +Default author verso, title recto.</p> + +<h5>Custom Style</h5> +<p>Before you think about writing custom header/footer styles, be sure to try the pre-configured choices. I have looked through a lot of fiction of all kinds. The pre-configured choices include every style I have seen, with the exception of the most highly decorative.</p> +<p>If none of the above are satisfactory, then you can write your own headers and footers using the syntax of the <code>fancyhdr</code> package.</p> +<p>• In the Preamble, use one of the above <code>\SetHeadFootStyle{<em>integer</em>}</code> to pick a starting point, in terms of whether or not there is a header and/or footer. <em>This is required, so that the layout engine knows how to calculate space.</em> After that, write the <code>fancyhdr</code> code for your custom header/footer in the Preamble. It will over-ride the numerical style in terms of appearance, but occupy the same space.</p> +<p>• You cannot use a header or footer with more than one line. No exceptions.</p> +<p>• See the file <code>novel-HeadFootStyles.sty</code> for how it is done in the pre-configured styles. In the file, the relevant portion follows <em>Look here for the pre-defined styles, for use as models.</em></p> +<p>• Particularly note that your own style will not automatically use the headfont, or loose tracking, unless you include the necessary code in your own definition.</p> +<p>• No cheating! If you choose a numerical style that does not have a header, then do not attempt to write a custom style that includes a header. Same with footer. Also, if you you choose a numerical style with both header and footer, then you cannot only customize one of them; you must customize both.</p> + + + +<a id="a6.1.3"></a> +<h4>6.1.3 <code>\SetEmblems{<em>verso</em>}{<em>recto</em>}</code></h4> +<p>If the style supports it, you may place an "emblem" that appears at a fixed distance (2.5em} from the outer margin. Thus, it will appear to the right of the page number on verso pages, and to the left of the page number on recto pages. In the case of style <code>4</code>, there will be a clearance of 1em between the emblem and the header text.</p> +<p>The font used for emblems will be the same as the headfont, unless you code the emblem to use a different font (perhaps one you specified with the <code>\NewFontFace</code> command), or unless you use one of the built-in <code>\decoglyph</code> codes.</p> +<p>An emblem is a minor decoration that should not distract the eye from the main text.</p> +<p><img class="floatright" src="html-resources/emblembar.png" width="380" height="104" alt="simple emblems using vertical bar"/>• Most books do not use emblems. When they do, it is typically a vertical bar, or a bullet, like this:</p> +<p class="code"><code>\SetHeadFootStyle{4}</code></p> +<p class="code"><code>\SetEmblems{|}{|}</code></p> +<p>The verso and recto emblems may be different. Whether they are the same or not, you must set them both, if you use emblems. Blanks are allowed.</p> +<p><img class="floatright" src="html-resources/emblemdingbats.png" width="380" height="104" alt="dingbat emblems"/>• Emblems may be styled. For example:</p> +<p>The header emblems shown at right were produced using the code below. Dingbats from the NovelDeco font were specified, adjusted for size and position.</p> +<p style="clear:both" class="code"><code>\SetEmblems{\charscale{1.1}{\raisebox{-0.05em}{\decoglyph{l9825}}}}%</code></p> +<p class="code"><code>{\charscale{1.1}{\raisebox{-0.05em}{\decoglyph{l9826}}}}</code></p> + +<p>• You may also use images, or combined images and text. If you use images, they must be at the exact resolution required by your print service (usually 300dpi for gray, 600dpi for b/w), and at exact size without scaling. The <code>\InlineImage</code> command must be used. See novel's image documentation details. You may find that a vertical offset of <code>\nfs</code> (normal font size) is useful, as this will place the top of the emblem image at the top margin.</p> + +<p class="code" style="text-indent:0px"><img class="floatright" src="html-resources/emblemimg.png" width="295" height="77" alt="emblem image"/> +<code>\SetHeadFootStyle{4}<br/> +\SetEmblems{\InlineImage[0pt,b]{spy.png}}%<br/> +{\InlineImage[0pt,b]{spy.png}} +</code></p> + +<p>• At the small size of an emblem, it is difficult to use detailed artwork. A black/white image at 600dpi will print similarly to a font dingbat. Grayscale at 300dpi will probably not be satisfactory unless the emblem is a single shade of gray. For the above example, a character from the "Fontawesome" font was converted to a png image at mid-gray. It is less distracting than a black character from the font, but hard to discern. Note that there is no "gray ink" for directly writing text in gray.</p> +<p>• Ask your print service whether the presence of a small image in each page header will affect production costs. Probably not, but if there is a different per-page charge when pages have an image... Oops!</p> +<p>• The layout calculation does not care whether emblems intrude into the margins. You will have to inspect your PDF to determine whether a header emblem is too tall, or a footer emblem too deep, for the allowed top and bottm margin clearance. Class option <code>shademargins</code> (in draft mode only) is helpful.</p> + + +<a id="a6.1.4"></a> +<h4>6.1.4 <code>\SetPageNumberStyle{<em>code using \thepage</em>}</code></h4> + +<p>By default, the page number is simply <code>\thepage</code>. In most cases, leave it that way. But if you wish to change how the page number is displayed, you can use this command to style how <code>\thepage</code> is displayed. Examples:</p> +<p class="code" style="text-indent:0px"><code>\SetPageNumberStyle{\emph{thepage}} % Page number in italics.<br/> +\SetPageNumberStyle{-- \thepage --} % En-dash on each side of number, for headstyle 3 or 5.</code></p> +<p>The headfont is applied automatically, unless you over-ride it in your code.</p> +<p>You could also get more involved, using a different font or size. Avoid over-doing it. If you are tempted to use a macro that counts page numbers backwards, be aware that your print service will likely reject it. Anyway, it has already been done in fiction.</p> + + +<a id="a6.1.5"></a> +<h4>6.1.5 <code>\SetHeadFont[<em>features</em>]{<em>font</em>}</code></h4> + +<p>This setting is described on <a href="noveldocs-05-fonts.html#a5.3.2">Page 5</a>, among other fonts.</p> + + +<a id="a6.1.6"></a> +<h4>6.1.6 <code>\SetLooseHead{<em>number</em>}</code></h4> +<p>This command applies to both headers and footers.</p> +<p>If you are using a style that has header text, then for best appearance the characters should appear with a little extra space between them, so that they are more easily distinguished from the main text. This is especially true if you are using small caps. The name for such adjustment is "tracking."</p> +<p class="centerimg"><img src="html-resources/looseheads.png" width="400" height="76" alt="loosehead 50 and 100"/></p> +<p>The argument of <code>\SetLooseHead</code> is a number from 0 to 1000. At <code>0</code> there is no extra space between the letters. Values from <code>50</code> (default) to <code>200</code> are most useful. Higher values are unusual.</p> +<p>Page number tracking will be clamped at a maximum of 50, even when a larger (looser) tracking is applied to text.</p> + + +<a id="a6.1.7"></a> +<h4>6.1.7 <code>\SetChapterDisplay{<em>choice</em>}</code></h4> +<p>This command is only applied if you begin new chapters with the <code>ChapterDisplay</code> environment. You may pick one of the <code>thispagestyle</code> choices, described in the next section. For example:</p> +<p class="code"><code>\SetChapterDisplay{dropfolioinside}</code></p> +<p>Then, that choice will be applied to each page using <code>ChapterDisplay</code>, without you having to write <code>\thispagestyle</code> each time.</p> +<p>The default is <code>footer</code>. This allows a ChapterDisplay page to show its footer (only if it has one), but not header.</p> +<p>If you use this command, you may still over-ride it on a particular page, by using <code>\thispagestyle{<em>choice</em>}</code> <em>before</em> <code>\begin{ChapterDisplay}</code>.</p> + + + +<a id="a6.2"></a> +<h3>6.2 Local Header/Footer Settings, in Document Body</h3> + +<p>These commands are used when a page header/footer style is an exception to the general rule. Examples are blank pages, titles, copyright, and new chapters. You can also dynamically change the header text.</p> + +<a id="a6.2.1"></a> +<h4>6.2.1 <code>\SetVersoHeadText{<em>text</em>}</code>, <code>\SetRectoHeadText{<em>text</em>}</code></h4> +<p>If you are using style <code>1</code>, <code>4</code>, <code>5</code>, or <code>6</code>, the header text can be dynamically changed from page to page. This feature is useful if your wish to include chapter titles in the header. It is also useful if your work is a collection of stories with different titles, perhaps by different authors. But before you use this feature, speak with your print service! Many print-on-demand services will insist that the content of headers must not vary from place to place, because different headers may be confused with portions of different books, during the assembly process.</p> +<p class="code"><code>\SetVersoHeadText{New~Verso~Head}</code> <code>\SetRectoHeadText{New~Recto~Head}</code></p> +<p>Notice that instead of space, a tilde <code>~</code> is used to separate words. <em>This is required.</em> Use only tilde, not both tilde and space.</p> +<p>These two commands may be used at any time, in the Preamble or document body. When a command is used, it stores its argument in <code>\versoheadtext</code> or <code>\rectoheadtext</code>. In turn, the current value of <code>\versoheadtext</code> or <code>\rectoheadtext</code> is immediately used for the header, and will remain in effect until changed again by <code>\SetVersoHeadText</code> or <code>\SetRectoHeadText</code>.<p> +<p>If you do not use these commands in the Preamble, then at the beginning of the document body they will be automatically set to the author (verso) and the title (recto). with tildes automatically substituted for spaces.<p> +<p>You may use ordinary LaTeX styling commands for the text:</p> +<p class="code"><code>\SetRectoHeadText{The~\emph{Bad~Boy}~Chronicles}</code></p> +<p>The most popular styling uses lowercase to small caps:</p> +<p class="code"><code>\SetRectoHeadText{\smcp{The~Danton~Code}}</code></p> +<p>• Avoid bold. Avoid underline. Really. Don't do it. No, no, no!</p> +<p>• At some future time, there may be a change in the LaTeX code that affects inter-word spacing in headers. This is not within my control. If you find that, for no obvious reason, inserting tildes no longer provides acceptable spacing, then don't use the tildes.</p> + + +<a id="a6.2.2"></a> +<h4>6.2.2 <code>\thispagestyle{<em>choice</em>}</code></h4> +<p>When you choose a style with header, then space is allocated above the text block, where the header will be placed. That space will be allocated whether or not the header is full or empty. The same applies to the footer. This allocation is global, and cannot be changed in your document body. All standard books work this way, not just with TeX.</p> +<p>However, on a per-page basis you can change whether or not a header or footer has visible content. This is routinely done for blank pages, title page, copyright page, and some others. It is also the norm for pages that begin a new chapter.</p> +<p>• The word "folio" has several meanings: It may refer to a particular paper size, or to a folded piece of paper at any size, or simply to a page number. Below, "folio" means page number.</p> +<p>• When you use the <code>\thispagestyle</code> command, your choice is applied only to the one page on which the command is written. It is best to use this command at or towards the top of the affected page. If the page uses the <code>ChapterDisplay</code> environment, and you use <code>\thispagestyle</code>, then you <em>must</em> place <code>\thispagestyle</code> before <code>\begin{ChapterDisplay}</code>.</p> +<p>• The following choices are allowed: <code>fancy</code>, <code>empty</code>, <code>footer</code>, <code>forcenumber</code>, <code>dropfoliobeneath</code>, and <code>dropfolioinside</code>.</p> +<p>For compatibility reasons, <code>plain</code> and <code>fancyplain</code> are also allowed, and have the same effect as <code>footer</code>.</p> + + +<pre> +<b>\thispagestyle{fancy}</b></pre> +<p>This applies the default (fancy) page style, so it is not normally needed. Only use this command to over-ride some other <code>\thispagestyle</code> command, or to over-ride the <code>\SetChapterDisplay</code> setting.</p> + + +<pre> +<b>\thispagestyle{empty}</b></pre> +<p>Header and footer are both blank.</p> + + +<pre> +<b>\thispagestyle{footer}</b></pre> +<p>Ignored if the style has no footer. If it does, then the usual footer appears. Header, if any, is blank.</p> +<p>This command is an alias for <code>fancyplain</code>. It is like the <code>plain</code> style, except that the footer (which is presumed to contain the page number) is fully styled. But unlike <code>plain</code>, the <code>footer</code> style does <em>not</em> cause a page number to appear when no footer exists. If that is what you need, then use either style <code>dropfoliobeneath</code> or <code>dropfolioinside</code>, depending on whether you have extra room in the bottom margin.</p> + + +<pre> +<b>\thispagestyle{forcenumber}</b></pre> +<p>If the style has a footer, then it appears as usual, and the header (if any) is blank. If the style has a header but no footer, then the outside portion of the header (which is presumed to contain the page number and emblem) appears, but the text portion of the header is blank.</p> +<p>The <code>forcenumber</code> choice is non-standard. Use it only if you must have a page number, and no other choice is suitable.</p> + + +<pre> +<b>\thispagestyle{dropfoliobeneath}</b></pre> +<p>The header (if any) is blank. If there is a footer, then it appears as usual. But if there is no footer, this command creates a one-page fake footer, which contains the centered page number. The fake footer is located where the next line of text would be, if the textblock were one line longer than its actual value.</p> +<p>• For the fake footer to be acceptable in print, the bottom margin must be wider than the minimum amount required by your print service. For example, suppose that the minimum bottom margin is 0.5in, but you set the bottom margin to 0.75in. That gives you 0.25in wiggle room, into which the fake footer will probably fit, because typical baselineskip is 0.2in to 0.25in.</p> +<p>• The document class does not know whether or not you have extra space available in the bottom margin. It is your responsibility to know.</p> + + +<pre> +<b>\thispagestyle{dropfolioinside}</b></pre> +<p>The header (if any) is blank. If there is a footer, then it appears as usual. But if there is no footer, this commands temporarily reduces the number of lines per page by one line. At the bottom, where the last line of text would normally be, the page number is centered. Thus, there is no intrusion into the bottom margin.</p> +<p>This command may only be used following the <code>\clearpage</code> command. Thus, it may be used at the start of new chapters, or on pages (such as copyright page) that do not flow from a previous page. If you use it elsewhere, the print will have incorrect layout, but there will be no error or warning, since the compiler is not sure what you are trying to do.</p> +<p>If used on a page with <code>ChapterDisplay</code> environment, you must place <code>\thispagestyle{dropfolioinside}</code> <em>before</em> you begin <code>ChapterDisplay</code>. The display block has a disposable blank line at its top, which is removed when <code>dropfolioinside</code> is used (instead of removing a line from the following text block).</p> + + + + +</div><!-- end main --> + +<div id="finish"></div> + +</div><!-- end master --> + +</body> +</html> + diff --git a/Master/texmf-dist/doc/lualatex/novel/noveldocs-07-text-size-style.html b/Master/texmf-dist/doc/lualatex/novel/noveldocs-07-text-size-style.html new file mode 100644 index 00000000000..36fb2f367b0 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/noveldocs-07-text-size-style.html @@ -0,0 +1,396 @@ +<!DOCTYPE html> +<html lang="en"> +<head> +<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> +<title>Class novel - 7 - Text Sizes and Styling</title> +<link rel="stylesheet" type="text/css" href="html-resources/novel-doc.css"/> +</head> + +<body> +<div id="master"> + + +<div id="toc"> + +<p>Document class "novel"</p> + +<p><a href="#a7">7. Text Sizes, Styling, and Position</a></p> + +<ul> + + <li><a href="#a7.1">7.1 Text Sizes</a> + <ul> + <li><a href="#a7.1.1">7.1.1 Standard Sizes: Disabled!</a></li> + <li><a href="#a7.1.2">7.1.2 \charscale[]{}</a></li> + <li><a href="#a7.1.3">7.1.3 Environment: parascale</a></li> + <li><a href="#a7.1.4">7.1.4 Open Type Scale</a></li> + </ul> + </li><!-- end 7.1 --> + + <li><a href="#a7.2">7.2 General Styling</a> + <ul> + <li><a href="#a7.2.1">7.2.1 Italics and Emphasis</a></li> + <li><a href="#a7.2.2">7.2.2 Bold and Semibold</a></li> + <li><a href="#a7.2.3">7.2.3 Underlining</a></li> + <li><a href="#a7.2.4">7.2.4 Small Caps, Acronyms</a></li> + <li><a href="#a7.2.5">7.2.5 Tighter Tracking</a></li> + <li><a href="#a7.2.6">7.2.6 Local Font Selection</a></li> + <li><a href="#a7.2.7">7.2.7 Changing Font Features</a></li> + <li><a href="#a7.2.8">7.2.8 Text Color (grayscale)</a></li> + </ul> + </li><!-- end 7.2 --> + <li><a href="#a7.3">7.3 Positioning and Alignment</a> + <ul> + <li><a href="#a7.3.1">7.3.1 What not to use!</a></li> + <li><a href="#a7.3.2">7.3.2 Some Useful Commands</a></li> + </ul> + </li><!-- end 7.3 --> +</ul> + +<p> </p> + +</div><!-- end toc --> + + + +<div id="main"> +<a id="thetop"></a> + + +<h1>Documentation for <code>novel</code> document class</h1> +<p>Documentation version: 1.0.6.</p> + +<div class="pagetopage"> +<p><b>User Guide</b></p> +<p><a href="noveldocs-01-overview.html">1. Overview</a></p> +<p><a href="noveldocs-02-class-options.html">2. Class Options</a></p> +<p><a href="noveldocs-03-metadata-pdfx.html">3. Metadata, PDF/X</a></p> +<p><a href="noveldocs-04-layout.html">4. Page Layout</a></p> +<p><a href="noveldocs-05-fonts.html">5. Choosing Fonts</a></p> +<p><a href="noveldocs-06-header-footer.html">6. Headers, Footers</a><br/> +<p>7. Text Sizes, Styles</p> +<p><a href="noveldocs-08-images.html">8. Using Images</a></p> +<p><a href="noveldocs-09-chapters-displays.html">9. Chapters, Display Pages</a></p> +</div> + + +<a id="a7"></a> +<h2 style="clear:none;">7. Text Sizes and Styling</h2> + +<p>This page describes how to change the size of text, how to style text (such as italics), and how to move it around. It also describes some miscellaneous commands that are intended to modify text.</p> +<p>If you are looking for information about how to choose the master text point size, see <a href="noveldocs-04-layout.html#a4.2.3">Page 4</a>, because it is considered to be among the layout settings. If you are looking for information about how to choose fonts and font features, see <a href="noveldocs-05-fonts.html">Page 5</a>.</p> +<p>There is no direct setting for normal baselineskip; it is automatically calculated from the size of the textblock and lines per page.</p> + + +<a id="a7.1"></a> +<h3>7.1 Text Sizes</h3> + +<p>Be sure to read through this. In <code>novel</code>, standard TeX font size commands are disabled. There are new commands that address the limited needs for font sizing, in the context of fiction. These new commands are primarily for local adjustments of a few characters, or for display pages that are outside the main flow of text.</p> + + +<a id="a7.1.1"></a> +<h4>7.1.1 Surprise! Traditional TeX Font Size Commands Are Disabled.</h4> + +<p>Ah, the simplicity of TeX font size commands, such as <code>\small</code> and <code>\LARGE</code>. But in <code>novel</code>, they don't work. If you write <code>{\LARGE text}</code>, then the incuded text appear at normal size. This is by design.</p> + +<p>Why? In <code>novel</code>, the focus is on maintaining a constant baselineskip, so that facing pages have text aligned. This is impossible with the standard TeX commands. In particular, commands to increase font size will change the baselineskip, whether you like it or not, even if you try to code for a constant baselineskip. That's just the way TeX works.</p> + +<p>The one exception is that footnotes will appear with smaller than normal size and skip. But this is done automatically. You cannot manipulate it with a size command.</p> + +<p>Fortunately, there are not a lot of occasions where fiction needs to change font size. In <code>novel</code>, there are new commands to address each situation.</p> + + +<a id="a7.1.2"></a> +<h4>7.1.2 \charscale[<em>scale,hoffset,voffset</em>]{<em>text</em>}, \charscale*[<em>scale,hoffset,voffset</em>]{<em>text</em>}</h4> + +<p>The <code>\charscale</code> command may be used for a short amount of text, where there is no line break. The command will throw an error if the included text has <code>\\</code> or <code>\par</code> or any other command that breaks the line. You may not place an image in <code>\charscale</code>.</p> + +<p>This command is built into some other <code>novel</code> commands, such as <code>\ChapterTitle</code>.</p> + +<p>When used without the option, <code>\charscale</code> echoes the included text. However, the text gains the magical ability to extend above or below the normal line of text, without pushing apart the baselines. This is useful if the text has some unusual character that is extraordinarily tall or deep.</p> + +<p>Using the option, you may uniformly scale the text by any amount, and displace it horizontally and vertically. The text can overlie other text, or any previously-placed image.</p> + +<p>With the unstarred command, the scaled width of the text will occupy horizontal space, even if the text is displaced far away. But with the starred command, the text does not occupy any horizontal space.</p> + +<p>The single optional argument may include up to three comma-separated values. The first value is a number, indicating the scale. If a second argument is used, it is the length of horizontal offset (positive is right). If a third number is used, it is the length of the vertical offset (positive is up). Remember that if all you want to do is scale the text, without positioning it, then you only need to provide the scale.</p> + +<p>Here is an example illustrating the command in all its glory:</p> + +<p class="code"><img class="floatright" src="html-resources/badaboom.png" width="146" height="102" alt="badaboom"/><code> +Bada \charscale*[1.25,5em,1.3\nbs]{Boom} Bam\par<br/> +Bada Bam\par<br/> +Bada\charscale[1.25,5em,1.3\nbs]{Bang} Bam\par<br/> +Bada \charscale[1.25]{Bang} Bam\par +</code></p> + +<p>In the result (above right), notice how the starred command leaves no gap where the word Boom would have been. The unstarred command leaves a gap where the word Bang would have been located. In each case, the baseline grid is maintained.</p> + +<p>The most practical application of <code>\charscale</code> is styling the first character of chapter text. Drop capitals are out of fashion, but enlarged capitals (rising above the baseline) are in fashion. Example, also using the <code>\FirstLine</code> command (from package <code>magaz</code>, included with <code>novel</code>:</p> + +<p class="code"><code>\FirstLine{\noindent\charscale[1.5]{I}t was a dark and stormy night. Lord Withens mounted his horse and rode through the gloom to Castle McDingle, where Baron von Feathering awaited. The pair had dirty deeds to do, but being members of the nobility, they commanded a high price.}</code></p> + +<p class="centerimg"><img src="html-resources/mcdingle.png" width="559" height="121" alt="larger first letter"/></p> + +<p>In the above example, the initial I is 1.5x its normal size. It appears larger than that, by comparison to the adjacent small caps letters.</p> + + +<a id="a7.1.3"></a> +<h4>7.1.3 <code>\begin{parascale}[<em>scale</em>] ... \end{parascale}</code></h4> + +<p>The <code>parascale</code> environment is used on a paragraph basis. More than one paragraph may be included. The scale is applied to the font size and to the baselineskip within.</p> + +<p>Since the text within <code>parascale</code> generally will not occupy an integral number of normal baselineskips, the following text will be off-grid. This may not be a problem, if <code>parascale</code> is used in places where maintaining the grid does not matter (such as on a title page or copyright page).</p> + +<p>• If <code>parascale</code> is used within body text, then it will be necessary to restore the line grid for the following text. This cannot be done automatically; you will have to make a preliminary run, look at the results, and adjust accordingly.</p> + +<p>For example, suppose you use <code>\begin{parascale}[0.92]...text...\end{parascale}</code>. The preliminary run shows that the included text occupies 7 lines. The following baseline will then be 7x(1–0.92)=0.56 normal baselineskip too high. This can be fixed by adding <code>\vspace{0.56\nbs}</code>. For best appearance, the <code>\vspace</code> should be split above and below the <code>parascale</code> environment, but not nessarily in half.</p> + +<p>• If <code>parascale</code> crosses to the next page, then you will need to make vertical adjustment for each page independently. For example, if a 7-line <code>parascale</code> has 3 lines at the bottom of a page, followed by 4 lines on the following page, then you need to restore only a 4 line deficit on the following page.</p> + +<p>• Within <code>parascale</code> you may need to manually indent paragraphs, or remove indents if necessary.</p> + + +<a id="a7.1.4"></a> +<h4>7.1.4 Open Type Scale (fontspec)</h4> + +<p>If you will be using a font in a way that it will <em>always</em> be at a size different from the normal font size, you may use the <code>Scale</code> feature when you first define the font. This is defined by the <code>fontspec</code> package, which is automatically loaded with <code>novel</code>. See <a href="noveldocs-05-fonts.html#a5.2.4">Page 5</a> for details.</p> +<p>A scaled font can be used anywhere. It is not limited to a single line, and it will maintain the line grid at scales not exceeding 1. However, scaled text may disturb the line grid if its scale is more than 1.</p> + + +<a id="a7.2"></a> +<h3>7.2 General Styling</h3> + +<p>Many of these commands are directly from LaTeX, and are mentioned here because they are frequently used. Other commands are specific to <code>novel</code>.</p> + + +<a id="a7.2.1"></a> +<h4>7.2.1 Italics and Emphasis</h4> + +<p><code><b>\textit{<em>text</em>}</b></code> puts the text in italics, provided that the font family has an Italic font. If it does not have an Italic font, then the letters will remain normal, <em>not</em> fake slanted.</p> +<p>If the italicized text leans too far into the following space, try adding <code>\/</code> (back and forward slashes) just before closing the braces.</p> +<p><code><b>\emph{<em>text</em>}</b></code> changes regular text to italics, and italic text to regular. You may nest <code>\emph</code> commands. Many writers opine that this is the preferred way to specify Italics.</p> + + +<a id="a7.2.2"></a> +<h4>7.2.2 Bold, Semibold, etc.</h4> + +<p><code><b>\textbf{<em>text</em>}</b></code> puts the text in whatever font you specified as the Bold font, when you defined the currently-used font family.</p> +<p>If the font family has no Bold font, then it will <em>not</em> be faked.</p> +<p>The default main font used by <code>novel</code>, namely <code>Libertinus Serif</code>, has both Bold and Semibold weights. Given this choice, <code>novel</code> explicitly calls for the Semibold weight. If you intend to use a font such as Adobe Garamond Pro, which also has a Semibold weight, then you can request it instead of Bold when you define the font family. This is discussed on <a href="noveldocs-05-fonts.html#a5.2.2">Page 5.</a></p> +<p>What if you want both Bold and Semibold, or maybe even a Light weight? Only one can be assigned to <code>\textbf</code> when you define the font. For the others, use <code>\NewFontFace</code> to assign the desired weight to its own font command, which you will use (but inside the braces) instead of <code>\textbf</code>.</p> +<p>Actually, you should not be using Bold in fiction. It <em>might</em> be the case that this weight is useful for titles, but you ought to consider a fancy-looking font for that purpose, rather than mere Bold. Or, make the letters big and bold, but balance the effect by using gray.</p> + + +<a id="a7.2.3"></a> +<h4>7.2.3 Underlining</h4> + +<p>Underlining is inappropriate for fiction. Don't do it. Besides, there are some issues regarding line grid and appearance, which are not a problem in academic works, but are noticeable in fiction.</p> + + +<a id="a7.2.4"></a> +<h4>7.2.4 Small Caps and Acronyms</h4> + +<p><code><b>\textsc{<em>text</em>}</b></code> converts lowercase letters to small caps, leaving uppercase unchanged. The font's <code>smcp</code> Open Type feature will be used. But if the font does not have <code>smcp</code>, it will <em>not</em> be faked.</p> +<p><code><b>\smcp{<em>text</em>}</b></code> is an alias for <code>\textsc{<em>text</em>}</code>.</p> +<p><code><b>\allsmcp{<em>text</em>}</b></code> places both uppercase and lowercase letters in small caps. If the font has the <code>c2sc</code> feature, it will be used; if not, the letters will be converted to lowercase first. Then, <code>smcp</code> is applied.</p> +<p>• If you require small caps, but your font does not have them, you can fake them by scaling uppercase. But this is usually unattractive. A better method is described in the <code>fontspec</code> package documentation: You may appoint a different font that will provide small caps.</p> +<p>• If you insist on using old-fashioned TeX fonts, which do not have the <code>smcp</code> Open Type feature, then you may need to write this code in the Preamble:</p> +<p class="code"><code>\let\smcp\oldscshape\relax<br/> +\let\textsc\oldscshape\relax<br/> +\let\scshape\oldscshape\relax</code></p> +<p>The above code sends you in a time machine back to the Twentieth Century.</p> + +<p><code><b>\acronym{<em>text</em>}</b></code> is special to <code>novel</code>. If the NovelDeco font is installed, uppercase letters in the text will be converted to "mid-size capitals," and lowercase will remain lowercase, but with ascenders slightly reduced. The purpose of this command is so that acronyms such as NASA and NATO blend well with surrounding text. I have found that whereas ordinary uppercase is too conspicuous, small caps also looks wrong. Example:</p> + +<p class="code"><img class="floatright" src="html-resources/acronym2.png" width="192" height="89" alt="acronym"/> +<code> +The NATO alliance...\par<br/> +The \acronym{NATO} alliance...\par<br/> +The \allsmcp{NATO} alliance...\par +</code></p> + +<p>Whether or not to use the <code>\acronym</code> command, is up to you. Since its letters are drawn from the NovelDeco font, rather than your main font, there may be some stylistic differences.</p> + + +<a id="a7.2.5"></a> +<h4>7.2.5 Local Tracking Adjustment</h4> + +<p><code><b>\squeeze{<em>text</em>}</b></code> narrows the text by one percent.</p> +<p><code><b>\crush{<em>text</em>}</b></code> narrows the text by two percent.</p> + +<p>These commands are for emergency use only. They temporarily apply a horizontal scale to the letters, so that they are very slightly narrower than usual. Inter-word spacing is not necessarily changed (it can even grow larger), because spacing is calculated during paragraph layout. The enclosed text may span paragraphs.</p> +<p>The commands do not compound. That is, placing one crush inside another will not narrow the text by four percent. But any adjustments made by <code>microtype</code> will still apply, and may compound with these commands.</p> +<p>The only application for these commands is when a paragraph does not quite fit where you would like it to be. For example: Perhaps one short word, or part of a word, dangles to an extra line. Try <code>\squeeze</code> first, then <code>\crush</code>, for all or most of the paragraph. These do not always produce a useful effect, since the actual paragraph layout depends on other factors. But <em>if you are lucky,</em> then the paragraph re-flows to a better layout.</p> +<p>If the commands do not help, then be sure to remove them, or the effect will be worse.</p> + + +<a id="a7.2.6"></a> +<h4>7.2.6 Local Font Selection</h4> + +<p><code><b>{\<em>fontcode</em> <em>text</em>}</b></code> where <code>fontcode</code> is a previously-defined font command.</p> + +<p>You locally change the font in use, by calling its font command. For example, <code>\subchfont</code> is a built-in command, automatically used in certain macros. You can use it yourself:</p> + +<p class="code"><code>{\subchfont <em>text</em>} % Note that the braces go on the outside.</code></p> + +<p>Likewise, if you used <code>\NewFontFamily</code> or <code>\NewFontFace</code> to define your own font, giving it the command name <code>\mynewfont</code>, then you would use it like this:</p> + +<p class="code"><code>{\mynewfont <em>text</em>} % Again, the braces go on the outside.</code></p> + + +<a id="a7.2.7"></a> +<h4>7.2.7 Local Feature Changes</h4> + +<p><code><b>{\addfontfeature{<em>feature</em>} <em>text</em>}</b></code> for changing Open Type features.</p> + +<p>If a font is already defined, you can locally add one or more features. For example, suppose that you defined <code>\mynewfont</code> without using its Open Type feature <code>ss03</code> (we will assume that the font actually has this feature). In a particular place, you wish to activate <code>ss03</code>. The code looks like this:</p> + +<p class="code"><code>{\mynewfont\addfontfeature{RawFeature=+ss03} <em>text</em>}</code> % Note + sign. Braces outside.</p> + +<p>That limits the scope of the feature to the included group, in TeX terminology.</p> +<p>You can modify features used by any defined font, whether you defined it yourself or it is one of the <code>novel</code> built-in font commands. You can add more than one feature. If the requested feature does not exist in the font, then your request will be ignored.</p> + +<p>What about removing a feature that is already present in the font definition? Suppose you defined <code>\mynewfont</code> so that <code>Numbers=OldStyle</code> is used. On a local basis, can you change the style of numbers? Usually, yes. You could use <code>Numbers=Lining</code> to over-ride the feature. Sometimes it depends on how you chose the features, as a matter of syntax. See the <code>fontspec</code> documentation.</p> + + + +<a id="a7.2.8"></a> +<h4>7.2.8 Color Text (actually, grayscale)</h4> + +<p><code><b>graytext</b></code> class option must be used, or any color command will be ignored, and its included text will be rendered in black (even if the requested color is white). Images are unaffected.</p> + +<p><code><b>\color{<em>name</em>}</b></code> or <code><b>\color[gray]{<em>scale</em>}</b></code> is used within a group. All text will be in grayscale, from where the command is placed, until the group ends. If the command is not at the beginning of the group, it does not affect prior text. Example:</p> + +<p class="code"><code> +\begingroup<br/> +This text is unaffected by the following command.<br/> +\color{lightgray} % Alternative: \color[gray]{number 0 to 1}<br/> +This text is in lightgray, until the group ends.<br/> +\endgroup +</code></p> + +<p style="margin-top:10px"><code><b>\textcolor{<em>text</em>}</b></code> or <code><b>\textcolor[gray]{<em>scale</em>}{<em>text</em>}</b></code> affects only the included text.</p> + +<p class="code"><code>\textcolor{gray7}{This text is in color gray7, a medium-light gray.}<br/> +\textcolor[gray]{0.32}{This text is in 32 percent gray.}</code></p> + +<p style="margin-top:10px">Whether you use <code>\color</code> or <code>\textcolor</code>, there are two ways to specify the color: by name, or by scale, using package <code>xcolor</code> syntax.</p> + +<p>• The following color names are accepted, and will be converted to some shade of gray (from dark to light): black, blue, violet, darkgray, purple, red, teal, olive, magenta, gray, brown, green, orange, cyan, lightgray, lime, pink, yellow, white.</p> +<p>The above names are often not helpful, so <code>novel</code> also allows you to use these: black, gray1, gray2, gray3, gray4, gray5, gray6, gray7, gray8, gray9, white. The scale is not uniform (gray5 is not 50 percent gray), but the values are usefully spaced.</p> +<p>Other names "known to dvips," such as <code>Apricot</code>, do not work. An error will result.</p> + +<p>• To specify color by scale, follow the color command with <code>[gray]{<em>scale</em>}</code>, where the scale is a number between 0 (black) and 1 (white). Example: <code> \color[gray]{0.63}</code>.</p> + +<p>• If you use <code>xcolor</code> syntax to request an rgb color, it will be converted to 1-channel grayscale.</p> +<p>• Absolutely no transparency!</p> + + +<a id="a7.3"></a> +<h3>7.3 Positioning and Alignment</h3> + +<p>By now, you should be prepared to read this: In <code>novel</code> there are new ways to position or align text, and some of the standard TeX methods are discouraged or disabled.</p> + + +<a id="a7.3.1"></a> +<h4>7.3.1 What to Avoid</h4> + +<p>• The <code>\raisebox</code> command does not play well with novel. It can be used, but there is the great risk of disturbing the line grid. Use <code>\charscale</code> instead.</p> + +<p>• If you must use the <code>\vspace{}</code> command (or its relative, <code>\vskip</code>) be sure to measure the space in units of <code>\nbs</code> (normal baseline skip).</p> + +<p>• Avoid <code>minipage</code> and <code>parbox</code>. These commands are likely to disrupt the line grid. When that happens, restoring the grid is your own responsibility. You may find the <code>adjustwidth</code> environment to be a useful alternative.</p> + +<p>• Do not use the <code>center</code> environment. You may use <code>{\centering ... \par}</code> instead. The <code>\center</code> environment causes the text to go off-grid. That's not a problem on some stand-alone pages where you don't care about the grid, but it is ugly in the middle or running text.</p> + +<p>• Avoid positioning via the <code>textblock</code> or <code>textblock*</code> environments (package <code>textpos</code>). Actually, novel uses <code>textblock*</code> internally. But if not handled with more care than usual, positioned text can disrupt the baseline and position of surrounding text. You may use <code>\charscale</code> to position small amounts of text safely, but not on a paragraph basis. Images have built-in positioning arguments, which may also be useful for positioned text.</p> + +<p>• Do not use floats. If you try, then <code>novel</code> may intercept them with a nasty message.</p> + +<p>• Do not use tables. Nasty message will result. But <code>novel</code> has its own provision for a Table of Contents, and the code may be used for other purposes as well. See <a href="noveldocs-09-chapters-displays.html#a9.3">Page 9</a>.</p> + +<p>• If you use images, then use only the image commands provided by novel: <code>\InlineImage</code> and <code>\BlockImage</code>. See <a href="noveldocs-08-images.html">Page 8</a><p> + +<p>• There is no built-in provision for a two-column environment. However, you can place text alongside an image. See <a href="noveldocs-08-images.html#a8.4.4">Page 8</a>.</p> + + + +<a id="a7.3.2"></a> +<h4>7.3.2 Some Useful Commands</h4> + +<p>This is not a complete list. It merely addresses a few situations that you are likely to encounter, without the need for elaborate code, and without loading additional packages.</p> + +<p style="margin-top:10pt"><code><b>\begin{adjustwidth}{<em>left</em>}{<em>right</em>}</b> ... <b>\end{adjustwidth}</b></code></p> + +<p>This environment, from the included <code>changepage</code> package, is the most useful way to create block indents. The included text may have multiple paragraphs and span pages. The left and right arguments are lengths, being the amount to <em>increase</em> the respective margins from their normal values.</p> + + +<p style="margin-top:10pt"><code><b>\phantom{<em>text</em>}</b></code></p> + +<p>Does not print the text, but leaves a horizontal gap as if the text were there.</p> + + +<p style="margin-top:10pt"><code><b>\mbox{<em>text</em>}</b></code></p> + +<p>Prevents a specific word from being hyphenated, or to ensure that two consecitive words always appear on the same line. The box will not be broken across lines. However, it may overhang the margin, which is undesirable.</p> + + +<p style="margin-top:10pt"><code><b>\makebox[<em>width</em>][<em>alignment</em>]{<em>text</em>}</b></code></p> + +<p>Puts the text in a box of fixed width (usually much larger than the text's own width) and aligns it left, center, or right in the box. If using this across the full textwidth, be sure to precede it with <code>\noindent</code> to prevent offset.</p> + + +<p style="margin-top:10pt"><code><b>\hspace{<em>length</em>}</b></code></p> + +<p>Creates a horizontal space.</p> + + +<p style="margin-top:10pt"><code><b>\strut</b></code></p> + +<p>Places an invisible box with no width, which has the height and depth of the font. Sometimes used as a placeholder.</p> + + +<p style="margin-top:10pt"><code><b>\indent, \noindent, \forceindent, \backindent</b></code></p> + +<p>Commands <code>\indent</code> and <code>\noindent</code> have their ordinary TeX meaning. Sometimes, the action of other macros will remove an indent that should be there, or add an indent that should not be there. If writing <code>\indent</code> and <code>\noindent</code> do not fix the problems, use <code>\forceindent</code> and <code>\backindent</code> as more forceful solutions.</p> + + +<p style="margin-top:10pt"><code><b>\hfill</b></code></p> + +<p>Pushes the following text to the right end of the line. Actual effect depends on what precedes and follows.</p> + + +<p style="margin-top:10pt"><code><b>\vfill</b></code></p> + +<p>Pushes the following text to the bottom of the page. Actual effect depends on paragraph organization.</p> + + +<p style="margin-top:10pt"><code><b>\kern</b></code></p> + +<p>Tweaks the spacing between consecutive letters. A tricky command, as it is always used without braces, and makes the surrounding text illegible in your source code. If you use it, the units of length should always be em, rather than pt. Example:</p> + +<p class="code"><code>It wa\kern-.02ems a da\kern.03emrk and stormy ni\kern-.004emght.</code></p> + +<p>The <code>\kern</code> command is not useful for globally changing kern values. Its most useful application is inserting just enough tweak so that the layout engine formats a paragraph with different line breaks.</p> + + +<p style="margin-top:10pt"><code><b>\bigemdash[<em>yoffset,thickness</em>]</b></code></p> + +<p>Simulates a "big emdash" of variable length. Horizontal width is from command to end of line marked by <code>\par</code>, or limited by a fixed width such as created by <code>\makebox</code>. If placed in other situations, the line may be missing or too long.</p> +<p>The line's normal position is at the typical height of an emdash, which is slightly above half the height of lowercase x. Its normal width is typical of an emdash width. Thus, the line is like an extended emdash.</p> +<p>You can tweak the line using its optional argument. The first value tweaks the vertical position by a scale factor, where 1 equals its normal position (so that 0.9 places it a little lower). The second argument, if used, is separated from the first by a comma. It tweaks the line thickness by a scale factor (so that 0.9 makes it a little thinner).</p> +<p>Since <code>\bigemdash</code> allows an optional argument, but no mandatory argument, you may not immediately follow it with text. If it is boxed, then first close the box; otherwise, end the paragraph.</p> + + + + +</div><!-- end main --> + +<div id="finish"></div> + +</div><!-- end master --> + +</body> +</html> + diff --git a/Master/texmf-dist/doc/lualatex/novel/noveldocs-08-images.html b/Master/texmf-dist/doc/lualatex/novel/noveldocs-08-images.html new file mode 100644 index 00000000000..7724e033b27 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/noveldocs-08-images.html @@ -0,0 +1,372 @@ +<!DOCTYPE html> +<html lang="en"> +<head> +<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> +<title>Class novel - 8 - Images</title> +<link rel="stylesheet" type="text/css" href="html-resources/novel-doc.css"/> +</head> + +<body> +<div id="master"> + + +<div id="toc"> + +<p>Document class "novel"</p> + +<p><a href="#a8">8. Images</a></p> + +<ul> +<li><a href="#a8.1">8.1 Use Raster Images</a></li> +<li><a href="#a8.2">8.2 Use Flattened png or jpg</a> + <ul> + <li><a href="#a8.2.1">8.2.1 Saving the Resolution</a></li> + <li><a href="#a8.2.2">8.2.2 Removing Private Metadata</a></li> + </ul></li><!-- end 8.2 --> +<li><a href="#a8.3">8.3 Line Art vs. Grayscale</a> + <ul> + <li><a href="#a8.3.1">8.3.1 Line Art in GIMP</a></li> + <li><a href="#a8.3.2">8.3.2 Grayscale in GIMP</a></li> + <li><a href="#a8.3.3">8.3.3 Scaling After \rework</a></li> + </ul></li><!-- end 8.3 --> +<li><a href="#a8.4">8.4 Placing Images</a> + <ul> + <li><a href="#a8.4.1">8.4.1 \charscale</a></li> + <li><a href="#a8.4.2">8.4.2 \InlineImage</a></li> + <li><a href="#a8.4.3">8.4.3 Text Over \InlineImage</a></li> + <li><a href="#a8.4.4">8.4.4 \BlockImage</a></li> + <li><a href="#a8.4.5">8.4.5 \BlockImage and Text</a></li> + </ul></li><!-- end 8.4 --> +</ul> + +<p> </p> + +</div><!-- end toc --> + + + +<div id="main"> +<a id="thetop"></a> +<h1>Documentation for <code>novel</code> document class</h1> +<p>Documentation version: 1.0.6.</p> + +<div class="pagetopage"> +<p><b>User Guide</b></p> +<p><a href="noveldocs-01-overview.html">1. Overview</a></p> +<p><a href="noveldocs-02-class-options.html">2. Class Options</a></p> +<p><a href="noveldocs-03-metadata-pdfx.html">3. Metadata, PDF/X</a></p> +<p><a href="noveldocs-04-layout.html">4. Page Layout</a></p> +<p><a href="noveldocs-05-fonts.html">5. Choosing Fonts</a></p> +<p><a href="noveldocs-06-header-footer.html">6. Headers, Footers</a><br/> +<p><a href="noveldocs-07-text-size-style.html">7. Text Sizes, Styles</a></p> +<p>8. Using Images</p> +<p><a href="noveldocs-09-chapters-displays.html">9. Chapters, Display Pages</a></p> +</div> + + +<a id="a8"></a> +<h2 style="clear:none">8. Images</h2> + +<p>If you intend to place a lot of images in your document, or if you need to have text wrap around floating images, then the <code>novel</code> document class is not well-suited to your purpose. This is because the methods of formatting, and the emphasis on maintaining a constant baseline skip, sometimes interfere with the behavior you expect from other document classes.</p> + +<p>Yet you can place the occasional image. Most fiction does use imagery on the title page, and sometimes at chapter starts. Some stories include a map, or an image of ancient writing. In a detective novel, we might get a glimpse at handwritten evidence. The <code>novel</code> class has its own commands for easily dealing with these situations.</p> + +<p>Like it or not, you are restricted to <code>png</code> and <code>jpg</code> raster images. No vector artwork. No included <code>eps</code> or <code>pdf</code>. Forget about <code>pgf</code> and <code>TikZ</code>. Although you can "cheat" the <code>novel</code> commands, and circumvent the restrictions, don't do it. The restrictions are intentional. The reasons are explained below.</p> + + + +<a id="a8.1"></a> +<h3>8.1 Use Raster Images</h3> + +<p>Place raster images, not vector images, in your document.</p> + +<p>You may think that the above sentence is a mistake. Haven't you been told that vector artwork is always preferable to rasterized artwork, because vector artwork is scalable? The part about being scalable is true. But if you do not need scalability, vector artwork is worse.</p> + +<p>How so? A PDF file can incorporate vector artwork, and if properly done it will meet commercial printing standards. <em>Sadly, it is often not properly done.</em> When vector artwork has technical errors, as it often does, then the appearance will depend on which software is used to view the image. The fact that it is within a PDF does not always help.</p> + +<p>When you design a vector image, or perhaps acquire one, you approve its appearance based on what you see on your computer. The odds are good that someone else, on a different computer, will be using the same software and thus see the same result. However, that is not true of the software built into commercial printing machines. That software may interpret ambiguous vector instructions in a different way than you expected.</p> + +<p>A good example is on pages 232-234 of the Adobe PDF 1.7 Reference. That's an enormous file, full of technical information. You don't need to read it. But Adobe provides an example of a vector drawing in the form of a five-pointed star, made with one continuous line that crosses itself. There are two possible rules for deciding whether the central pentagon should be filled or not. They produce different results. Adobe chooses a particular rule, and so should all compliant software. But is all software compliant? Without reading the Adobe spec, there is no particular reason to prefer one rule over the other. And, that's a simple example. Many vector drawings are very convoluted, in ways that make the artist's intent difficult to interpret.</p> + +<p>You normally do not need to scale images. Your finished work will be viewed at fixed size on the printed page, not at variable size in a PDF reader. So, scalability is not an advantage. Your image is placed on paper at its exact size and resolution. You are in complete control. If it is purely black/white line art, its detail will be about the same whether it was placed as vector or raster. If it is grayscale, it is subject to halftoning, which reduces the resolution in any case.</p> + +<p>Do not attempt to place an image by including a PDF within your TeX file. The reason is that the included PDF may carry its own File Data, which will differ from the File Data of the main PDF. There's nothing you can do about that, and commercial printers don't like it. So, don't do it. Indeed, <code>novel</code> may ban it!</p> + + + +<a id="a8.2"></a> +<h3>8.2 Use Flattened png or jpg Image Format</h3> + +<p>The <code>novel</code> image-handling commands require the <code>png</code> or <code>jpg</code> formats, exclusively. If you already have a raster image in another format, such as <code>tif</code>, you must convert it. If you have a vector image, such as <code>eps</code> or <code>svg</code> format, you must rasterize it. This must all be done in an external graphics program, such as GIMP or Inkscape. It cannot be done from within TeX.</p> + +<p>Both <code>jpg</code> and <code>png</code> images can store their resolution internally. When you export images from a graphics program, be sure that the resolution is stored. This may or may not be an option that you need to check.</p> + +<p>With <code>png</code>, the image must be flattened (no transparency). Be sure to flatten the image before you export it to <code>png</code>. With <code>jpg</code>, the exported image is always flattened.</p> + +<p>When using grayscale, be sure to convert the image to true grayscale, which has only one color channel. In GIMP, this is achieved with the Image > Mode menu. Note that an RGB or CMYK image "that only uses grays" is <em>not</em> the same thing, since these have three or four color channels!</p> + +<p>When using pure black/white (png only), you can get there with GIMP's Image > Mode > Indexed menu.</p> + +<p>Note that within the finished PDF file, images are stored in an internal format which differs from your input. If your image is in the wrong format, or contains transparency, it will not be detected by TeX.</p> + + + +<a id="a8.2.1"></a> +<h4>8.2.1 Saving the Resolution</h4> + +<p>Image resolution is measured in dots per inch (dpi). In a graphics program, it may be called pixels per inch (ppi). And, if the software was written in Europe or Asia, it may be measured in pixels per centimetre!</p> + +<p>When you prepare an image in a graphics program, you must first ensure that it is at the correct resolution. Most U.S. print services require 300dpi for grayscale images, 600dpi for black/white line art. Then, it is a simple matter of multiplying the image dimensions (in inches) by the resolution, to get the image dimensions in pixels.</p> + +<p>Example: A grayscale image that will print at 1.25" wide by 1.5" high, must be 375 pixels wide by 450 pixels high, at 300dpi. If the original image is at different dimensions, it must be cropped and scaled to the correct size. However, it is not enough to finish the image at 375x450 pixels. You must specifically set the resolution to 300dpi. If you fail to set the resolution correctly, then the image will not appear at its correct size in your PDF.</p> + +<p>In GIMP, you can use the Image > Scale Image dialog box to ensure that the image is at the proper size and resolution. When you change any of the settings, others may change in response. Be sure that all settings are satisfactory.</p> + +<p>When you export your image, you may be asked whether or not to save the resolution. Be sure to save it.</p> + +<p>Example dialog boxes for grayscale png exported from GIMP:</p> +<p class="centerimg"><img src="html-resources/imgdialogs.png" width="600" height="192" alt="png image with resolution"/></p> + + +<a id="a8.2.2"></a> +<h4>8.2.2 Removing Private Metadata</h4> + +<p>Your image may contain "private metadata" that records how the image was created, especially if it was converted from a digital photograph. It may also contain color profile data that is inappropriate for a grayscale or black/white image. Commercial printing standards prefer that such private metadata be removed from images; the PDF File Data should speak for everything, not the individual images.</p> + +<p>The simplest way to remove private metadata is via a command-line program: Use either ImageMagick, or GraphicsMagick. These programs work on Windows, Linux, and (so I am told) OS/X. Specific code is shown in the workflow examples, below. If you ever re-work an image, you must once again remove its private data.</p> + + + +<a id="a8.3"></a> +<h3>8.3 Line Art vs. Grayscale</h3> + +<p>Two kinds of images may appear in a black-and-white book: line art, and grayscale.</p> + +<p>Line art contains only black and white. Moreover, there cannot be any places where the black or white areas are very tiny. Most print services request that your line art be rasterized at 600dpi (dots per inch), but that does not mean you can emulate gray with an alternating pattern of black and white, repeated 300 times per inch. All it means is that the sharp transition from black areas to white areas can be resolved to about 1/600" during printing (only "about" since the ink spreads a little).</p> + +<p>So, if you think you can use Floyd-Steinberg dithering to convert a grayscale image to "line art," that won't work: The printer will note that it cannot resolve such fine detail, and treat it as a grayscale. The result will be worse than if you had left it as grayscale instead of dithering to black and white.</p> + +<p>Think in terms of how an offset press works. Look it up on the Internet. You can have a sharp boundary between black and white, but you cannot closely mingle tiny black and white areas. Actually, at low production volume, your book may be printed with a technology that can resolve very fine details. But you cannot count on that; and, if your book does sell well, you may be shocked if the print technology changes.</p> + +<p>A PDF file can place ordinary (vector) text atop an image. However, if the underlying image is halftoned, there is the risk that the overlying text will also be halftoned, even if it sits atop white areas of the image. Ask your print service for advice. It may be better to make the text part of the image, and anticipate halftoning by using appropriately styled text.</p> + + + +<a id="a8.3.1"></a> +<h4>8.3.1 Workflow: Line Art in GIMP</h4> + +<p>To create a suitable line art image in GIMP, with post-processing in ImageMagick or GraphicsMagick, follow these instructions:</p> + +<p>(1) Open the image file in GIMP. If it is a vector format (such as svg or pdf), ensure that it is resolved to 600 pixels/in with anti-aliasing, and that its size is the same as your intended dimensions (measured in inches or mm). You can also use a larger size, if you intend to crop some of the periphery; or you can use a smaller size, if you intend to make it larger by adding white space.</p> + +<p>(2) If you need to crop to a smaller size, or add to a larger size, do it now. Image > Canvas Size, with Resize Layers All.</p> + +<p>(3) If you need to edit the image, by adding or removing anything, do it now.</p> + +<p>(4) Image > Flatten Image.</p> + +<p>(5) Image > Mode > Grayscale.</p> + +<p>(6) View > Zoom to an appropriate amount that shows the image at approximately its print size. That depends on your monitor's resolution. On my own computer, 25\% is about right. Does not need to be exact.</p> + +<p>(7) Colors > Threshold. If necessary, adjust the slider until the image looks best. It might be that the default 50\% works for you. If you move it to the left, then black areas will become a little narrower. If to the right, black areas will become a little thicker.</p> + +<p>(8) Image > Mode > Indexed > Use black and white (1-bit) palette. Remove unused colors from colormap. No dithering.</p> + +<p>(9) File > Export. Use png (Portable Network Graphics) extension. When the dialog box appears, ensure that "save resolution" is checked. Use the highest level of compression offered. The exported image may look poor in some image viewers, because those viewers do not read the full resolution. Not a problem. The image will look good when seen in better viewers.</p> + +<p>(10) Command-Line Terminal, using GraphicsMagick (or ImageMagick without the preceding <code>gm</code>):</p> + +<p class="code"><code>gm mogrify -strip nameofimage.png</code></p> + +<p>(11) Sanity check, again using GraphicsMagick (or ImageMagick without the preceding <code>gm</code>):</p> + +<p class="code"><code>gm identify -verbose nameofimage.png</code></p> + +<p>After a few moments, the Terminal will show some information. It should say that the depth is 1-bits per pixel, that the only color is gray (1 bits), that the resolution is 236.22 pixels per centimeter (which is 600dpi). The page geometry, divided by 600, will give you the image size in inches (thus, a page geometry of 900+1200+0+0 represents an image 1.5" wide x 2" high).</p> + + +<a id="a8.3.2"></a> +<h4>8.3.2 Workflow: Grayscale in GIMP</h4> + +<p>To produce a suitable grayscale image in GIMP, with post-processing in ImageMagick or GraphicsMagick, follow these instructions:</p> + +<p>(1) Open the image file in GIMP. If it is a vector format (such as svg or pdf), ensure that it is resolved to 300 pixels/in with anti-aliasing, and that its size is the same as your intended dimensions (measured in inches or mm). You can also use a larger size, if you intend to crop some of the periphery; or you can use a smaller size, if you intend to make it larger by adding white space.</p> + +<p>(2) If you need to crop to a smaller size, or add to a larger size, do it now. Image > Canvas Size, with Resize Layers All.</p> + +<p>(3) If you need to edit the image, by adding or removing anything, do it now.</p> + +<p>(4) Image > Flatten Image.</p> + +<p>(5) Image > Mode > Grayscale.</p> + +<p>(6) View > Zoom to an appropriate amount that shows the image at approximately its print size. That depends on your monitor's resolution. On my own computer, 25\% is about right. Does not need to be exact.</p> + +<p>(7) Very dark grays are hard to produce accurately, and so are very light grays. If your image relies on areas that ar nearly black and nearly white, then consider adjusting lightness and contrast so that they are not so close to black and white. GIMP's Colors > Levels might be more useful than Colors > Brightness/Contrast.</p> + +<p>(8) There is no transparency, but you can achieve that effect by ensuring that white areas are truly white, not light gray. Use GIMP's Select By Color Tool, with a very low threshold (perhaps 1) to choose areas that should be exactly white, then clear them.</p> + +<p>(9) File > Export. Use png (Portable Network Graphics) extension. When the dialog box appears, ensure that "save resolution" is checked. Use the highest level of compression offered. The exported image may look poor in some image viewers, because those viewers do not read the full resolution. Not a problem. The image will look good when seen in better viewers.</p> + +<p>(10) Command-Line Terminal, using GraphicsMagick (or ImageMagick without the preceding <code>gm</code>):</p> + +<p class="code"><code>gm mogrify -strip nameofimage.png</code></p> + +<p>(11) Sanity check, again using GraphicsMagick (or ImageMagick without the preceding <code>gm</code>):</p> + +<p class="code"><code>gm identify -verbose nameofimage.png</code></p> + +<p>After a few moments, the Terminal will show some information. It should say that the type is grayscale, at 8 bits per pixel. The resolution is 118.11 pixels per centimeter (which is 300dpi). The page geometry, divided by 300, will give you the image size in inches (thus, a page geometry of 900+1200+0+0 represents an image 3" wide x 4" high).</p> + +<p class="floatright"><img src="html-resources/pngcolortype.png" width="270" height="46" alt="png color type"/><br/><img src="html-resources/jpgcolorspace.png" width="296" height="46" alt="jpg colorspace"/></p> +<p>Most important of all: Scroll through the information. Near its end, you should see a line like this. The exact wording will depend on your software:</p> + +<p class="code" style="clear:both">(For png images) <code>png: IHDR.color_type: 0 (grayscale)</code></p> + +<p class="code">(For jpg images) <code>JPEG-Colorspace: 1</code> and <code>JPEG-Colorspace-Name: GRAYSCALE</code></p> + +<p>The above codes are the only ones that matter. Even if other information claims that the image is grayscale, or lists the colors and they are all shades of gray, <em>that is not good enough</em>. When automated software reviews your PDF for compliance, it will look at the png IHDR.color_type, which must be 0, or the JPEG-Colorspace, which must be 1. Anything else fails. If the information is different, it means that you forget to change the mode to grayscale before you exported the image.</p> + +<p>You may ask: If the image was not really grayscale, can it be converted to grayscale using a simple command line, with ImageMagick or GraphicsMagick? The answer is yes, but don't do it that way. The reason is that there are many ways to map colors (even "gray colors") to true grayscale, and an automated conversion may produce unexpectedly light or dark results. It is better to do the conversion in a graphics program, where you can see what you are doing.</p> + + +<a id="a8.3.3"></a> +<h4>8.3.3 Workflow: Scaling the image after \Rework.</h4> + +<p>When you use one or both of the <code>\Rework</code> commands, the font size and/or the baselineskip will change. However, it does not scale images. In many cases, there is no problem. But in some cases, an un-scaled image will disrupt the previous flow of text or pagination. If you look in the log file, you will see an Alert message, which suggests (only suggests) appropriate values for scaling problem images, depending on whether they are placed inline or block. Then, you should re-work the image in an external image editor. When you scale the image, be sure that the revised version is at the correct resolution of 300dpi or 600dpi, or whatever is necessary.</p> + +<p>It is best to go back to your copy of the original artwork, before you exported it to <code>png</code> or <code>jpg</code>. But what if you do not have anything but the 1-bit or grayscale images that you created earlier? Then do this:</p> + +<p>(1) If the image is 1-bit, change to Color > Mode grayscale.</p> + +<p>(2) Use Image > Scale Image to get new dimensions, at 600 or 300 pixels per inch. Careful: Sometimes when you change size, it auto-changes resolution, or vice-versa. Click back and forth in the dialog box, to ensure that both the dimensions and resolution are correct. The default Cubic interpolation is OK.</p> + +<p>(3) Change View to something that puts the image at its approximate print size.</p> + +<p>(4) If desired, play with Filters > Enhance > Sharpen.</p> + +<p>(5) Image > Flatten.</p> + +<p>(6) If the image is to be 1-bit line art, use Colors > Threshold and Image > Mode >Indexed, as before.</p> + +<p>(7) Export as png, then <code>mogrify</code> the image, as before. Be sure to identify the image and look for its png IHDR.color_type or JPEG-Colorspace, as before.</p> + +<p>The above does not take too much time, and will provide superior results. Note that when an image is placed within text, the calculation for text positioning is different than the calculation for image positioning. It is possible (although unlikely) that a <code>\Rework</code> situation will cause an unexpected page break, due to roundoff error in the placement of the final line on a page. This can be fixed by subtracting (or, in some cases, adding) as little as <code>\vspace{-0.001\nbs}</code> before or after the re-scaled image.</p> + + + + +<a id="a8.4"></a> +<h3>8.4 Placing Images In Your Document</h3> + +<p>An image may be placed as an inline element, using the <code>\InlineImage</code> command. This allows the image to mingle with text, and even have text as an overlay.</p> +<p><code>\BlockImage</code> places the image so that <em>subsequent</em> text will clear the bottom of the image, and be on the baseline grid. You may also <em>accompany</em> the image with text in its own block space, if you wish.</p> +<p>If your book has a lot of images, then you should consider using a page layout program (such as Scribus) instead of TeX. That's because the best strategies for an image-intensive picture book are very different from the strategies adoped by <code>novel</code>.</p> +<p>Beware of overlap. If images overlap each other, or overlap with text, no error will result. If text lies atop an image, the result may be desirable. All other situations are undesirable. Since TeX cannot detect such errors, you need to carefully review the result.</p> +<p>Do not use the ordinary TeX commands, or environments, for floats or figures.</p> + + +<a id="a8.4.1"></a> +<h4>8.4.1 \charscale[<em>scale,hoffset,voffset</em>]{<em>text</em>}, \charscale*[<em>scale,hoffset,voffset</em>]{<em>text</em>}</h4> + +<p>The <code>\charscale</code> command pertains to text, not images. It is mentioned here because it can place text almost anywhere on a page, even overlapping other text or previously-placed images. Thus, it provides an image-like effect.</p> +<p>The command is documented on <a href="noveldocs-07-text-size-style.html#a7.1.2">Page 7</a>.</p> + + +<a id="a8.4.2"></a> +<h4>8.4.2 \InlineImage[<em>hoffset,voffset</em>]{<em>imageFile.png or .jpg</em>} and starred version</h4> +<p>This command places the image as an inline element, at 100% scale. The use of <code>png</code> or <code>jpg</code> images, with file extension, is required.<p> +<p>You may offset the image horizontally or vertically. Positive direction is to the right and up. If you use one offset, then you must use both (empty brackets may be used for defaults). Any units of length may be used, but the preferred units are <code>em</code> or <code>\textwidth</code> for horizontal, and <code>em</code> or <code>\nbs</code> for vertical, because these are most compatible with the <code>\Rework</code> commands.</p> +<p>By default, the <em>top</em> of the image is at the text baseline. If you prefer that the <em>bottom</em> of the image be at the text baseline, use voffset <code>b</code>. Example:</p> +<p class="code"><code>\InlineImage[0pt,b]{imageFile.png}</code></p> +<p>Thanks to the <code>calc</code> package, offsets may use \widthof{<em>text</em>} and/or \heightof{<em>text</em>} as lengths. The most useful of these is when you wish to align the top of an image at the X-height of surrounding text:</p> +<p class="code"><code>\InlineImage[0pt,\heightof{X}]{imageFile.png}</code></p> +<p>You may also use <code>\heightof{\Aring}</code> for the tallest accented letter normally found in Latin-1.</p> +<p>Lengths <code>\imagewidth</code> and <code>\imageheight</code> may also be used for offsets. These lengths remain set, and can be used for other purposes (such as displacing text) until another image is placed.</p> +<p>Offsets may be written as combinations of lengths. If you use the baseline <code>b</code> as above, it must be the first character of voffset. If you use <code>\widthof</code> or <code>\heightof</code>, then its backslash must be the first character <em>unless</em> it is preceded by another length. Thus, an offset of <code>-\heightof{X}</code> is prohibited, but you can use <code>0pt-\heightof{X}</code>. +<p>Here are some examples of allowable code:</p> +<p class="code"><code> +\InlineImage[2.3em, -0.4em]{imageFile.png}<br/> +\InlineImage[0pt-\widthof{eee}, b+\heightof{X}-0.2em]{imageFile.jpg} +</code></p> +<p>The image occupies zero vertical space. So, it will not push apart baselines. The next line(s) of text may overlie the image. In some cases, this is desirable. If you do not want that effect, then you can either insert a suitable number of <code>\null</code> lines after the image, or use <code>\BlockImage</code> instead.</p> +<p>With the un-starred command, the image occupies its natural horizontal width. That is, text following the image will (if it fits) continue from the right edge of the image. But with the starred command, the image occupies zero width. In this case, text following the image will continue from the left of the image, and overlie the image.</p> +<p>Having text overlie the image is allowable, and can create some interesting special effects. However, such effects are rarely used in fiction. When your print service sees what you have done, they may think that it is a mistake, and flag your file. Be sure that you discuss this with your print service.</p> +<p>If you do allow text to overlie an image, be sure that the image is very light. Repeat: <em>very light</em>. Depending on the printing technology, an image may print darker than you see on your computer screen, and that would make text hard to read. At low print volume, your print service will probably use a technology that is like an industrial-strength home inkjet printer, which can make very sharp text over images. However, if your book goes to volume production, then the technology will be different. Volume printing will use halftoned images, and the text overlay may also become halftoned, which will reduce its sharpness considerably. Once again: Discuss this with your print service!</p> +<p>Note that an image may be placed in a way that prints some of the image in the margin. That's allowable if your margin is wider than the minimum required for printing clearance. But even if it is not allowable, there will be no complaint or warning from TeX.</p> +<p>Do not place an image so that it approaches or goes beyond the page edge. That requires a "bleed box" which is not part of <code>novel</code> capabilities. If your book needs that kind of image handling, use a page layout program instead.</p> +<p>Do not place images so that they overlap. Although that is allowed in the PDF, it is likely to be flagged as an error by your print service.</p> + + + +<a id="a8.4.3"></a> +<h4>8.4.3 Text Over \InlineImage</h4> + +<p>As noted above, an <code>\InlineImage</code> or its starred version, can be used as the background to any subsequent text. Just as with any other text, whatever sits atop an image must be pure black. If you need text in gray, then you must integrate the rasterized text with the image in an external graphics program, instead of typing the text in your document.</p> + +<p>When text overlays an image, it retains its identity as vector paths, as far as the PDF is concerned. In some printing processes, particularly those for very low volume production, the result will be as sharp and dark as ordinary text. However, if your books sells well (or is being prepared to sell well), the image will be converted to halftone, and the text that lies above it may also be converted to halftone. This will reduce the sharpness of the text. It is not necessarily a problem, unless your text is very small or has fine details.</p> + +<p>If the text-over-image is part of a title, then the text is naturally large and dark, and will easily withstand halftoning.</p> + +<p>Be aware that not all print services will accept text over images. It's not that they <em>cannot</em> do it; after all, your home and office printers can easily do it. The reason they object is because the pages of your book will be handled in small volume by persons who are unfamiliar with the book. Text over an image may be flagged as a printing error or a bug in the PDF. In the advertising world, text over image is routine. But in the world of fictional novels, it is unusual. Don't imagine that they will decide what you meant to do, by reading your book. Also, very sharp image/text, at low printing volume, will not appear as sharp when the technology changes for higher volume production. They know that, but are not sure if <em>you</em> know that.</p> + +<p>An inline image occupies zero vertical space. If you place its top near the bottom of the textblock, then the image will happily flow into the lower margin and perhaps off the bottom of the page, without an error (but the print service will reject it). The reason that TeX does not provide an error message is quite simple: Technically, it is not an error! It is just not what you meant to do. The software cannot read your mind.</p> + +<p>Example:</p> + +<p class="code"><code> +\noindent\InlineImage*[0pt,1.2\nbs]{gavel.png} Lord Withens took a seat at the rear of the courtroom, attempting to be inconspicuous. Yet his effort was in vain, as he was the only person there with a riding crop and spurs.\par<br/> +He would have taken the car, had it not been stolen. But that was why he was here, at the arraignment of the person charged with the theft. It was most unfortunate that the accused was his own elderly father; but then, theft ran in the family line.\par +</code></p> + +<p class="centerimg"><img src="html-resources/inlineimagest.png" width="651" height="249" alt="example of InlineImage*"/></p> + + + +<a id="a8.4.4"></a> +<h4>8.4.4 \BlockImage[<em>alignment,hoffset,voffset</em>]{<em>imageFile.png or .jpg</em>}[<em>text</em>]</h4> + +<p>Note that <code>\BlockImage</code> has an optional argument that precedes the mandatory image file name. It has another optional argument that follows the file name. If this second option is used, there must be no space between <code>}[</code>.</p> + +<p>The first optional argument has up to three comma-separated values. The first is alignment: <code>l</code>, <code>c</code>, or <code>r</code> for left, center, or right. The second and third values are hoffset and voffset. Unlike the <code>\InlineImage</code> command, do not use <code>b</code> to indicate vertical position relative to the image bottom; it is always at the top with this command. The default alignment is centered, without offsets.</p> + +<p>An automatic calculation clears the height of the image. Subsequent text will be on grid. This is the right thing to do when the image and included text fit on a single page. But if they cannot both fit on a single page, an unusual layout will result.</p> + + +<a id="a8.4.5"></a> +<h4>8.4.5 \BlockImage and Text</h4> + +<p>The second optional argument of <code>\BlockImage</code>, following the image, may contain text that will accompany the image in the same block of space. The text is left-aligned like ordinary text, no matter which alignment you use for the image. The text may be in more than one paragraph, and may use <code>{\centering ...\par}</code> or <code>\begin{adjustwidth} ... \end{adjustwidth}</code> for positioning relative to the image. The text may overlie the image, using <code>\charscale</code>. You may need to use <code>\indent</code> or <code>\forceindent</code> or <code>\backindent</code> to control how the text appears. Note that you cannot "flow" text around an image in <code>novel</code> class.</p> + +<p>Example:</p> +<p class="code"> +<code> +It was a dark and stormy night. Lord Withens mounted his horse and rode through the darkness, accidentally trampling some petunias in Her Ladyship's garden.\par<br/> +\BlockImage[l]{gnome.png}[\begin{adjustwidth}{8em}{0pt}\forceindent Suddenly he was confronted by an irate gnome, who expressed an opinion in the crudest of language, even for a gnome.\par<br/> +Lord Withens was taken aback. How dare this mere gnome speak to him in such a tone of voice? But then he remembered that the gnomes had gone to college, where swearing was routine.\par\end{adjustwidth}]<br/> +\charscale[1, 5\nbs]{CENSORED}\forceindent Lord Withens shrugged, and rode on. There was nothing to do but remain silent, this time taking more care. He would speak with his wife about the gnome situation when he returned.\par +</code></p> + +<p class="centerimg"><img src="html-resources/irategnome.png" width="639" height="423" alt="example of BlockImage with accompanying text"/></p> + +<p>In the above example, the text to the right of the image happens to have just the right number of lines to fill the available area. But that is only because I wrote it that way. If I had written less, then there would be one or more blank lines before the subsequent text ("Lord Withens shrugged..."). If I had written more, then the subsequent text would have been pushed down by the necessary number of lines, and there would have been more white area underneath the gnome.</p> +<p>Thus, this technique requires careful inspection, particularly if there is the danger that the image or accompanying text may overflow the bottom of the page.</p> +<p>Note that I used the start of the following text as a reference point for placing CENSORED over the gnome. That is not the only way it could have been done, but it was easy to discern the necessary offset.</p> +<p>• In general, avoid using accompanying text with an image, with the possible exception of titles and other special layouts. There is little need for it in the flowing text of a novel. If you find that you need to use it frequently, then perhaps your book would benefit from a page layout program such as Scribus, instead of TeX.</p> + + + + + + + +</div><!-- end main --> + +<div id="finish"></div> + +</div><!-- end master --> + +</body> +</html> + diff --git a/Master/texmf-dist/doc/lualatex/novel/noveldocs-09-chapters-displays.html b/Master/texmf-dist/doc/lualatex/novel/noveldocs-09-chapters-displays.html new file mode 100644 index 00000000000..926a8317e96 --- /dev/null +++ b/Master/texmf-dist/doc/lualatex/novel/noveldocs-09-chapters-displays.html @@ -0,0 +1,590 @@ +<!DOCTYPE html> +<html lang="en"> +<head> +<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> +<title>Class novel - 9 - Special Layouts</title> +<link rel="stylesheet" type="text/css" href="html-resources/novel-doc.css"/> +</head> + +<body> +<div id="master"> + + +<div id="toc"> + +<p>Document class "novel"</p> + +<p><a href="#a9">9. Special Layouts</a></p> + +<ul> + <li><a href="#a9.1">9.1 Copyright Page</a> + <ul> + <li><a href="#a9.1.1">9.1.1 Useful Commands</a></li> + </ul> + </li><!-- end 9.1 --> + <li><a href="#a9.2">9.2 Epigraph or Dedication</a> + <ul> + <li><a href="#a9.2.1">9.2.1 Available Methods</a></li> + <li><a href="#a9.2.2">9.2.2 Example of Epigraph</a></li> + </ul> + </li><!-- end 9.2 --> + <li><a href="#a9.3">9.3 Table of Contents</a> + <ul> + <li><a href="#a9.3.1">9.3.1 Environment: toc</a></li> + <li><a href="#a9.3.2">9.3.2 \tocitem[]{}{}</a></li> + <li><a href="#a9.3.3">9.3.3 Example Table of Contents</a></li> + </ul> + </li><!-- end 9.3 --> + <li><a href="#a9.4">9.4 Foreword, Preface, etc.</a></li> + <li><a href="#a9.5">9.5 New Chapters</a> + <ul> + <li><a href="#a9.5.1">9.5.1 Environment: ChapterDisplay</a></li> + <li><a href="#a9.5.2">9.5.2 Commands for Chapter Titles</a></li> + <li><a href="#a9.5.3">9.5.3 ChapterDisplay with Image</a></li> + <li><a href="#a9.5.4">9.5.4 \QuickChapter[]{}</a></li> + </ul> + </li><!-- end 9.5 --> + <li><a href="#a9.6">9.6 Scene Breaks</a> + <ul> + <li><a href="#a9.6.1">9.6.1 \scenebreak \sceneline \scenestars</a></li> + <li><a href="#a9.6.2">9.6.2 \IndentAfterScenebreak</a></li> + </ul> + </li><!-- end 9.6 --> + <li><a href="#a9.7">9.7 Footnotes</a> + <ul> + <li><a href="#a9.7.1">9.7.1 \SetMarkers[]{}</a></li> + <li><a href="#a9.7.2">9.7.2 \realmarker \fakemarker</a></li> + <li><a href="#a9.7.3">9.7.3 \footnote[]{}</a></li> + </ul> + </li><!-- end 9.7 --> + <li><a href="#a9.8">9.8 Endnotes</a> + <ul> + <li><a href="#a9.8.1">9.8.1 \endnote</a></li> + <li><a href="#a9.8.2">9.8.2 \endnotetext{}{}</a></li> + </ul> + </li><!-- end 9.8 --> +</ul> + +<p> </p> +</div><!-- end toc --> + + + +<div id="main"> +<a id="thetop"></a> +<h1>Documentation for <code>novel</code> document class</h1> +<p>Documentation version: 1.0.6.</p> + + +<div class="pagetopage"> +<p><b>User Guide</b></p> +<p><a href="noveldocs-01-overview.html">1. Overview</a></p> +<p><a href="noveldocs-02-class-options.html">2. Class Options</a></p> +<p><a href="noveldocs-03-metadata-pdfx.html">3. Metadata, PDF/X</a></p> +<p><a href="noveldocs-04-layout.html">4. Page Layout</a></p> +<p><a href="noveldocs-05-fonts.html">5. Choosing Fonts</a></p> +<p><a href="noveldocs-06-header-footer.html">6. Headers, Footers</a><br/> +<p><a href="noveldocs-07-text-size-style.html">7. Text Sizes, Styles</a></p> +<p><a href="noveldocs-08-images.html">8. Using Images</a></p> +<p>9. Chapters, Display Pages</p> +</div> + + +<a id="a9"></a> +<h2 style="clear:none">9. Special Layouts</h2> + +<p>In this part of the documentation, I will discusss a variety of special layout situations: Copyright Page, Dedication/Epigraph, Table of Contents, Chapter Displays (new chapters), Scenes, Footnotes, and Endnotes. What these have in common is that they are not continuous flowing text, and are not part of the overall layout dimensions.</p> + +<p>In many cases, you will need to manually insert a page break using <code>\clearpage</code> or <code>\clearpage</code>. This is not built into the various commands that are used after a page break.</p> + +<p>If you need a blank page, here is how:</p> + +<p class="code"><code>\clearpage\thispagestyle{empty}\null\clearpage</code></p> + +<p>TeX is smart enough to know that if you issue two consecutive <code>\clearpage</code> (or <code>\clearpage</code>) instructions, without at least a <code>\null</code> command to occupy the blank page, then you did not really intend to skip a page.</p> + +<p>It is often the case that display pages provoke an "Underfull \vbox (badness 10000)" message in the log file, due to the break in continuous text flow. In most (probably all) cases, this message may be ignored.</p> + +<p>In fiction, the book title page is often very stylish. A good one cannot be constructed by automatically placing information such as title and author. For that reason, <code>novel</code> has no commands such as <code>\maketitle</code>. You will probably want to use stylish fonts, and images, perhaps even using an image for the entire title page. The methods for using new fonts are described on <a href="noveldocs-05-fonts.html#a5.3.3">Page 5</a>. Techniques for images are described on <a href="noveldocs-08-images.html">Page 8</a>.</p> + +<p>If your book is self-published, which is normally the case for print-on-demand, remember that <em>you</em> are the publisher, not the service that prints and distributes your book. You cannot use their name or logo in circumstances that might imply that they are the publisher.</p> + + + +<a id="a9.1"></a> +<h3>9.1 Copyright Page</h3> + +<p>The copyright page is always the verso of the full title page. In books that begin with a half-title, blank, full title, the copyright page will be lowercase roman numeral <code>iv</code>. If your book begins directly with its full title page (uncommon), then the copyright page will be <code>ii</code>. In al cases, use <code>\thispagestyle{empty}</code> so that no header or footer prints on the copyright page. Thus, the page number will not appear in print (but you can see it in a PDF reader).</p> + +<p>In <code>novel</code> there are several commands that are well-suited to the copyright page. But before I discuss them: Since you are using Unicode, just paste the copyright symbol © from a character map. No TeX code required.</p> + +<p>• The copyright page should have a different look from pages of the story. This may involve slightly smaller font size, or different margins. It usually involves pushing the text downward so that the unused space is at the top, rather than at the bottom. Your text will usually not be justified, but may be ragged-left, centered, or (very rarely) ragged-right. Words will not be hyphenated. It is <em>not</em> customary to use a different font or font weight. Paragraphs will not usually be indented, but will be separated by blank lines. Small Caps may be used for occasional emphasis.</p> + +<p>• If your book has Cataloging-in-Publication data (used by libraries), it may be prepared for you by someone using a word processor. Where you see two hyphens, it is supposed to be an <em>em dash</em>, which is <em>three</em> hyphens in TeX, rather than the two of MS Word.</p> + +<p>• Under no circumstances should you use "copyleft" or anything other than full Copyright ©year Your Name, All Rights Reserved. That, plus utter damnation to anyone who violates the copyright. Reason: Why should anyone take the trouble to prepare and distribute your book, even if you are paying for it, when someone else can legally do it cheaper? The demonstration file that comes with this documentation does not have a full copyright, but that is only because it is <em>not a real book.</em></p> + +<p>Now for some code:</p> + + + +<a id="a9.1.1"></a> +<h4>9.1.1 Useful Commands for Copyright Page</h4> + +<p>These commands are not specific to copyright. They address a number of common situations encountered on that page.</p> + +<pre> +<b>\begin{adjustwidth}{<em>left</em>}{<em>right</em>} <em>...</em> \end{adjustwidth}</b></pre> + +<p>From the <code>changepage</code> package (included with <code>novel</code>), the <code>adjustwidth</code> environment allows you to increase the left and/or right margins by the indicated lengths. Use units of <code>em</code> or <code>\parindent</code> or <code>\textwidth</code> rather than points or inches. The environment can span pages, although a copyright page is rarely as much as a full page.</p> + +<p class="code"><code>\begin{adjustwidth}{0em}{0.2\textwidth}<br/> +Copyright ©2017 Dirk Hardcase. All Rights Reserved.<br/> +... % and many other lines<br/> +\end{adjustwidth} +</code></p> + +<p>The above code places its text so that it remains at the usual left margin, but only occupies 80% of the normal textwidth. Remember that the copyright page is always verso (on the left side of the open book).</p> + + +<pre> +<b>\begin{legalese} <em>...</em> \end{legalese}</b></pre> + +<p>Although the <code>legalese</code> environment can be used for any purpose, it is most suited to ... legalese language, such as on a copyright page.</p> + +<p>The included text will be set ragged-right, without hyphenation.</p> + + +<pre> +<b>\begin{center} <em>...</em> \end{center} <em>and</em> {\centering <em>...</em> \par}</b></pre> + +<p>When used with a reduced-width textblock (<code>adjustwidth</code>), a centered copyright page can be attractive. I often see it. Something like this, which centers its text at 60% of the textblock width:</p> + +<p class="code"><code> +\begin{adjustwidth}{0.2\textwidth}{0.2\textwidth}<br/> +\begin{center}<br/> +Copyright ©2017 Dirk Hardcase. All Rights Reserved.<br/> +... % and many other lines<br/> +\end{center}<br/> +\end{adjustwidth} +</code></p> + +<p>The <code>center</code> environment may be used on the copyright page, where deviations from the baseline grid are acceptable. But do not use <code>center</code> in your main text, as there will often be a noticeable disruption of vertical alignment. You may use the <code>{\centering ... \par}</code> command anywhere, but it can only include one paragraph at a time.</p> + + +<pre> +<b>\begin{parascale}[<em>scale</em>] <em>...</em> \end{parascale}</b></pre> + +<p>The <code>parascale</code> environment is described in more detail on <a href="noveldocs-07-text-size-style.html#a7.1.3">Page 7</a>.</p> +<p>If your copyright and related data does not quite fit on one page at normal size, then use <code>parascale</code> to shrink it.</p> + + +<pre> +<b>\lnum{<em>numbers or other text</em>}</b></pre> + +<p>If your main font uses OldStyle numbers (it probably does), you might prefer Lining numbers for the legalese and other data. The <code>\lnum</code> performs the change. Note that the command only affects the appearance of numbers. Letters are unchanged:</p> + +<p class="code"><img class="floatright" src="html-resources/lnum.png" width="185" height="32" alt="lnum"/><code>367Ag\lnum{367Ag}367Ag</code></p> + + +<a id="a9.2"></a> +<h3>9.2 Epigraph or Dedication</h3> + +<p>If you use a Dedication, it must go on the recto page immediately following the copyright page, regardless of whether or not your frontmatter has any other content. The only exception is when the book is a critical edition of someone else's work, where the original author's dedication is delayed to near the end of the frontmatter.</p> + +<p>Dedications aren't what they used to be. Nowadays, you can use a web site to dedicate your book to some current flame. Then, when you break up, you edit the web site. You next flame doesn't have to see it in print. There is a certain kind of author who likes to make a silly dedication, but I assume anyone using LaTeX is too sophisticated for that.</p> + +<p>On the other hand, if you are a combat veteran writing about your adventures, most folks would expect something such as "To Our Armed Forces" on a Dedication page. It's up to you.</p> + +<p>If you do not use a Dedication (best bet), then the recto immediately following the copyright page should be a Table of Contents, if your book has one. This is discussed below. If you don't have a Table of Contents, then the recto immediately following the copyright page might be an Introduction or Preface or some other part of frontmatter (but it is unusual to have these if you don't have a T of C). + +<p>It is a bad idea to go directly from copyright at verso to the opening of your story at recto, because the page spread is awkward: Legal notice on the left, fiction on the right. If you have nothing else to put between them, consider an Epigraph recto, followed by blank verso.</p> + +<p>An Epigraph is a (usually) a short quotation from someone else's work, with brief attribution. A good Epigraph can be very effective. Unlike a dedication, an epigraph may be placed almost anywhere, recto or verso.</p> +<p>Since a quotation from someone else's work is likely to be copyrighted, you cannot just use it. The safest thing to do is to use a work that is definitely out of copyright, such as the Bible or Shakespeare, or another work from long ago. Keep in mind that a recent translation can be copyrighted, even if the original is not.</p> +<p>An Epigraph may be pretentious, or it may be fun. Look online for the purposes served by an Epigraph, and for many examples from famous and not-so-famous literature.</p> +<p>In some genres, the story will refer to some fictional other book, which contains magical spells or an ancient legend. You can put a (fictional) quote from that book as an Epigraph, whether or not the quotation is used in the story.</p> +<p>You can also place a few lines of your own story, as an Epigraph. Perhaps the most famous example in Twentieth-Century fiction is the poem regarding magic rings, used as an Epigraph for Tolkien's novels on the subject.</p> + +<p>Dedications and Epigraphs use <code>\thispagestyle{empty}</code>.</p> + + +<a id="a9.2.1"></a> +<h4>9.2.1 Available Methods for Styling Dedications and Epigraphs</h4> + +<p>Command <code>\vspace*{<em>length</em>}</code> (note the asterisk) places vertical space, so that the material is not at the top of the page. The best position is somewhere above the vertical middle, rather then at the exact middle. You may use the <code>parascale</code> environment (see Page <a href="noveldocs-07-text-size-style.html#a7.1.3">7</a>) to change the font size and line skip of included text.</p> + +<p style="margin-top:10px"><b>One centered line:</b> Use <code>{\centering <em>...</em> \par}</code> to place a single line of horizontally centered text. If repeated, each line is independently centered.</p> + +<p style="margin-top:10px"><b>Justified block text:</b> If your dedication or epigraph is justified text (rather than poetry) you can use the <code>adjustwidth</code> environment, described above. However, unless you have also reduced the font size using <code>parascale</code>, you may find that a small-width justified block does not look nice. It is hard for the layout engine to make good-looking line breaks when the width is narrow. It would be better to use the <code>Epigraph</code> environment, described below, and manually insert line breaks using <code>\\</code>.</p> + +<p style="margin-top:10px"><b>Epigraph environment:</b> <code>novel</code> provides the <code>Epigraph</code> environment. Note the capital E:<p> + +<p class="code"><code>\begin{Epigraph}[<em>alignment</em>] <em>text, with manual line breaks</em> \end{Epigraph}</code></p> + +<p>The optional <em>alignment</em> may be one of <code>l</code>, <code>c</code>, or <code>r</code>, which stand for left, center, right. Default is <code>c</code>. This is the horizontal alignment of the epigraph block <em>as a block</em>, not the alignment of the lines within the epigraph.<p> +<p>Within the epigraph block, alignments <code>l</code> and <code>c</code> produce left-alignment of the lines, with ragged right ends. Alignment <code>r</code> produces right-alignment of the lines, with ragged left ends.</p> +<p>There is no particular width to the Epigraph block. If you write a line that is too long, it will not wrap, but will flow into the page margin. Use <code>\\</code> (not <code>\par</code>) to manually break lines.</p> +<p>Exception: The final line, typically an attribution, should <em>not</em> end in <code>\\</code>. It may be without a closure. But if the final line does not end in punctuation, it may be very slightly to the right of its correct position. In this case, ending the line with <code>\par</code> tweaks it.</p> +<p>In the unlikely event that you need to use the ampersand, be sure to write it as <code>\&</code> rather than as mere <code>&</code>.</p> +<p>There is no provision for horizontal lines, or other styling used by academics.</p> + + +<a id="a9.2.2"></a> +<h4>9.2.2 Example of Epigraph Environment</h4> + +<p>This one will be horizontally centered on its page. For typical text size on 5.5"x8.5" Trim Size, the Epigraph will be slightly above the middle of the page, and occupy about 50% of the textblock width. Note that I subsequently added the black border during image editing; it is not part of the Epigraph.</p> + +<p class="code"><code> +\vspace*{10\nbs}% for vertical position<br/> +<img class="floatright" src="html-resources/epigraph.png" width="356" height="120" alt="Epigraph example"/> \begin{Epigraph}[c]<br/> +When sacred swallows sound at dawn,\\<br/> +And eager eagles eye their prey,\\<br/> +Then shall Shan-Sun wreak revenge.\\<br/> +\hfill---Book of Bjorn\par<br/> +\end{Epigraph} +</code></p> + +<p>An Epigraph like that tells you something about what to expect in the book. Actually, it tells you to expect about 350 pages of badly-written prose, interspersed with badly-written poetry.</p> +<p>You can do better than that.</p> + + +<a id="a9.3"></a> +<h3>9.3 Table of Contents</h3> + +<p>Do not place a table of contents just because you can. A table of contents is more useful when the story consists of discrete episodes. Or, if the book is a collection of short stories, a table of contents is mandatory. When a story is an "action adventure," in which short chapters move along in rapid succession, a table of contents would be unusual. Chapter titles would likely occupy only a small amount of space, and might not even start new pages.</p> + +<p>If you use a Dedication (which must be recto), then the Table of Contents will be on the following recto page. The intermediate verso may be blank, or have an Epigraph, or perhaps something such as a map or other illustration. Neither Dedication nor Epigraph is listed in the Table of Contents.</p> + +<p>If you do not use a Dedication, then place the Table of Contents on the recto page immediately following the copyright page. An Epigraph, if any, may be placed later (it may also be on the verso page that faces the start of your story, if it is not intrusive).</p> + +<p>The TeX academic document classes, and related packages, have means for automatic construction of a table of contents. They do not work, in the <code>novel</code> class! Don't even think about it. If you want a Table of Contents, you have to design it yourself. Its entries are not automatically generated by the structure of your book. There is a reason for this: In fiction, a table of contents is often stylish. There is no single method that is best for all, and certainly no academic standard that must be met.</p> + +<p>But you have not been abandoned. In <code>novel</code>, there is an environment for constructing a Table of Contents, and commands that place the individual entries. These are designed with fiction in mind. You do not have to use them, if you have your own method of designing.</p> + +<p>In any case, avoid using any of the table environments that come with TeX or its packages. These do not provide the most attractive presentation for fiction, without a lot of work on your part.</p> + + +<a id="a9.3.1"></a> +<h4>9.3.1 \begin{toc}[<em>extra entry separation</em>]{<em>extra margins</em>} <em>...</em> \end{toc}</h4> + +<p>The <code>toc</code> is not indented, and text within it is not indented.</p> + +<p>• The optional argument is a number. It is the portion of normal baselineskip that will be added beneath each <code>\tocitem</code> entry (see next section). Default is <code>0</code>, meaning that there is no extra skip between items, and normal baselineskip is maintained. A value greater than <code>0</code> spreads the entries, which could be attractive if there are only a few chapters and you'd like to use more space on the page. For example, a value of <code>0.25</code> means that a gap of 0.25 normal baselineskip will be added beneath each entry. A small negative value will crowd the lines together, but there is a limit (approximately <code>-0.1</code>) before the lines cannot be squeezed any tighter.</p> + +<p>Note that the optional argument only applies to <code>\tocitem</code> entries, not to any other text within the environment.</p> + +<p>• The required argument is a length, which will be the amount of extra margin added at left and right of the table (using <code>adjustwidth</code>). A value of <code>0pt</code> allows the table to occupy the full width of the textblock. A value of <code>2em</code> adds 2em to the margin on each side, so that the width of the table is 4em less than the width of the textblock.</p> +<p>Note that it is best to specify horizontal lengths, within the textblock, in units of <code>em</code> or the proportional <code>\parindent</code> or <code>\textwidth</code>.</p> + +<p>Typically, the label for the <code>toc</code> will not be as bland as "Table of Contents" or even "Contents." One possibility is to use the book's title (and subtitle, if any). You can add a graphic element or a short remark, if you wish.</p> + +<p>In most cases, the table's title should not be placed where the first line of text would normally appear. This is because a fictional table of contents rarely fills the page, so it is more attractive to allow some space at top. Another reason is that if you use the <code>\charscale</code> command to increase the size of the topmost text, it will infringe the top margin, unless you provide at least one line of space above it. The <code>\null</code> command is best for this purpose.</p> + +<p>The Table of Contents page has no header, but may include its page number beneath the table. <code>\thispagestyle{footer}</code> or <code>\thispagestyle{dropfoliobeneath}</code> or <code>\thispagestyle{dropfolioinside}</code> are helpful.</p> + + +<a id="a9.3.2"></a> +<h4>9.3.2 \tocitem[<em>chapter number</em>]{<em>description</em>}{<em>page number</em>} and starred version</h4> + +<p>The <code>\tocitem</code> command, and its starred version, are used for individual entries in the TOC environment. Do not use this command for general text that is not linked to a page number.</p> + +<p>• The optional argument is the chapter number, at most two digits. The number will be left-aligned, with a period automatically added. Following the period will be the amount of space needed to keep the following description aligned.</p> +<p>If the optional argument is omitted (or empty), then there is no space, and the following description will align to the left of the table.</p> +<p>If the optional argument is the tilde character <code>~</code> then no number or period is printed, but the space is occupied, so that the following description aligns as if you had entered a chapter number.</p> +<p>• The description is usually the chapter title. If it cannot easily fit on one line, then use an additional <code>\tocitem</code>, because the text cannot be wrapped. The following example shows how this can be done.</p> +<p>• Without the asterisk, <code>\tocitem</code> fills the area between the description and the page number with empty space. The starred <code>\tocitem*</code> command fills with a dotted line, and is very attractive.</p> +<p>You may use ordinary style commands, such as <code>\emph{}</code>, in the entries.</p> + + +<a id="a9.3.3"></a> +<h4>9.3.3 Example of toc</h4> +<p>The use of the <code>toc</code> environment, and the <code>\tocitem</code> commands, are easily understood by looking at an example. The border of the image is where the normal page margins would be (the actual page is larger). The little explanation at top happens to exactly fit the table width, because I tweaked the text and the width until it fit!</p> + +<p class="code" style="text-indent:0px; font-size:small"><img class="floatright" style="padding-top:2em" src="html-resources/toc.png" width="316" height="559" alt="TOC example"/> +<code> +\thispagestyle{dropfolioinside}<br/> +\begin{toc}[0.25]{3em}<br/> +\null\null<br/> +{\centering\charscale{1.25}{The Withens Retaliation}\par}<br/> +\null<br/> +In which Lord Withens, fresh from a program in horticulture, unleashes secret desires on the garden.\par<br/> +\null\null<br/> +\tocitem*[1]{The Evil Weeds}{1}<br/> +\tocitem*[2]{A Plan of Attack}{14}<br/> +\tocitem*[3]{Lady Withens Objects}{35}<br/> +\tocitem*[4]{Back-Hoe to the Rescue}{48}<br/> +\tocitem[5]{Invasion of the Dandelions}{}<br/> +\tocitem*[~]{\emph{Interlude}}{63}<br/> +\tocitem*[6]{Army of the Gardeners}{94}<br/> +\tocitem*[7]{Too Much Rain}{113}<br/> +\tocitem*[8]{To Nuke, or Not to Nuke?}{145}<br/> +\tocitem*[9]{Revenge of the Zucchini}{162}<br/> +\tocitem*[10]{Lady Withens Sneezes}{180}<br/> +\tocitem*[11]{The Concrete Lawn}{206}<br/> +\end{toc}<br/> +\null\null<br/> +\BlockImage{gnome.png}<br/> +\clearpage +</code> +</p> + + + +<a id="a9.4"></a> +<h3>9.4 Foreword, Preface, Introduction, Acknowledgements, Prologue, etc.</h3> + +<p>My casual review of online forums indicates that new authors like to tell their life story in a Preface, or perhaps go into a long narrative about what motivated them to write the book. Don't do it. That's what web sites are for. Tell your story there. It's easier to edit, too.</p> + +<p>There is a genre of fiction, often seen, in which the story is supposed to be a "lost manuscript" recently discovered by the author, or perhaps unearthed by an archaeologist. Or, it may be an "ancient legend" that has been "translated" by a fictional professor. In such a case, it is customary to put remarks from the author, archaeologist, or professor in frontmatter—as if they were real—even though they are just as fictional as the rest of the story.</p> + +<p>As a general rule, each section that is distinctively different should begin on a recto page. If your frontmatter has many components, then consider rewriting to avoid excessive blank verso pages. Or, violate the general rule.</p> + +<p>Also, as a general rule, the first page of any of these components should have no page header. A footer (or dropfolio) is allowed. The page number will be in lowercase roman numerals.</p> + +<p>If the Foreword (Preface, etc.) is extensive, and if the style of your document has headers, then do use headers on the continuing pages. Always use footers, if that is your document style. You will need to take advantage of the <code>novel</code> commands <code>\SetVersoHeadText</code> and <code>\SetRectoHeadText</code> to control what appears in page headers. For example, if your book has an extensive Foreword, it is <em>not</em> customary to write the author's name verso, or the books's title recto. That is because the person writing the Foreword is not necessarily the book's author, and the text of the Foreword is not part of the main story. You might do something like this, for the continuing pages of a Foreword:</p> + +<p class="code"><code> +\SetVersoHeadText{\allsmcp{Foreword}}<br/> +\SetRectoHeadText{\allsmcp{Foreword}} +</code></p> + +<p>If you do the above, remember to change the head texts after you leave the Foreword. The above commands are not merely local.</p> + + + +<a id="a9.5"></a> +<h3>9.5 New Chapters</h3> + +<p>If your novel consists of chapters that begin on their own page, or if your book is a collection of stories, then you should use the <code>ChapterDisplay</code> environment to enclose the block of text (and possibly image) that starts each new chapter.</p> +<p>You may place almost anything you like at the beginning of new chapters, but in reality there are only a limited number of useful things. The <code>novel</code> class has special commands for handling them, especially for the needs of fiction.</p> +<p>If your book is actually a quick succession of many short chapters, then it might be better to treat them as scenes. See the following scene commands.</p> +<p>Also see <a href="noveldocs-06-header-footer.html#a6.1.7">Page 6</a> for the <code>\SetChapterDisplay</code> command, which provides a means to globally set how headers and footers are used on <code>ChapterDisplay</code> pages.</p> + + +<a id="a9.5.1"></a> +<h4>9.5.1 \begin{<em>ChapterDisplay</em>}[<em>lines</em>] <em>...</em> \end{<em>ChapterDisplay</em>}</h4> + +<p>The ChapterDisplay environment reserves a block of space at the top of the textblock. The same space is reserved, no matter how much or how little content you put there. The optional argument set the number of lines displaced by the block. Its default is 10, minimum 4.</p> + +<p>If you put a lot of material inside ChapterDisplay, it will not push the story farther down the page. Instead, the material inside the ChapterDisplay will overflow the reserved area, and mingle with the text below. Normally this is very undesirable. However, it might be attractive if your ChapterDisplay contains an image that you wish to dangle underneath the following text.</p> + +<p>ChapterDisplay should use one of the header-less <code>\thispagestyle</code> commands. If you choose <code>dropfolioinside</code>, then a blank line will be removed from the top of the display, so that everything on the page moves upward.</p> + +<p>If you are using symbolic footnote markers, each <code>ChapterDisplay</code> re-sets the symbols.</p> + +<p>You will need to use <code>\clearpage</code> prior to the display.</p> + + +<a id="a9.5.2"></a> +<h4 style="clear:none">9.5.2 Pre-Styled Chapter Title Commands</h4> + +<p>These are intended for use in the <code>ChapterDisplay</code> environment. If you use them anywhere else, then the text line grid will be disturbed.</p> + +<p><code>\ChapterTitle{}</code> sets its text using chapterfont. The default is the main font scaled 1.6, with lining numbers.</p> + +<p><code>\ChapterSubtitle{}</code> sets its text using subchfont. The default is the main font scaled 1.2, with lining numbers.</p> + +<p><code>\ChapterDeco[]{}</code> does not commit to its contents. Typically a decoration will be used, perhaps from decofont. The optional argument is a scale factor to be applied to the required argument. Many horizontal decorations need to be magnified.</p> + +<p>Each of these commands may only be used for a single line of contents. If the contents cannot fit on a single line, then you must manually break and issue the command twice. The commands may be used in any order, may be used more than once, or not at all.</p> + + + +<a id="a9.5.3"></a> +<h4>9.5.3 ChapterDisplay With Image</h4> + + +<p>You can use an image in chapter titles. If you place an image, be sure to use one of the image commands defined by <code>novel</code> on Page 8 of this documentation. Any other method is likely to push the following text off-grid.</p> + +<p>Be sure that you are licensed to use the image. Many clipart catalogs "for personal use only," prohibit usage in commercial books. One possible source is <a href="http://openclipart.org" rel="external" target="new">openclipart.org</a> (note the <em>.org</em>).</p> + + +<p><b>Text Over Image</b></p> + +<p><img class="floatright" src="html-resources/ctimg35.png" width="79" height="196" alt="example of chapter title image, text over"/> You may position text over an image. Be aware that overlapping text and graphics may be interpreted as a mistake, by human reviewers. It is best to use black text, or grayscale text that is much darker than the underlying image. Results are uncertain if you try to place light text over a dark image.</p> + +<p>Example, where the command <code>\unifrac</code> calls for the font UnifrakturMaguntia.ttf. Note that the font command is <em>outside</em> <code>\charscale</code>:</p> + +<p class="code"><code>\begin{ChapterDisplay}<br/> +\BlockImage{sword.png}% centered by default<br/> +{\unifrak\centering\charscale[3,0pt,4\nbs]{35}\par}<br/> +\end{ChapterDisplay}</code></p> + + +<p style="clear:none;"><b>Text as Part of Image</b></p> + +<p>If the text is not ordinary black, or not much darker than the background image, then it is better to include the text as part of the raster image. The reason is that there is no "white ink." Although light text over a dark image will appear correctly in PDF, and print that way on most printers, there are exceptions. If in doubt, ask your print service. In this example, the number is built into the image itself:</p> + +<p class="code"><img class="floatright" src="html-resources/smfingerprint8.png" width="86" height="70" alt="example of chapter title image, raster text"/><code>\begin{ChapterDisplay}<br/> +\BlockImage[l]{smfingerprint8.png}<br/> +\end{ChapterDisplay}</code></p> + + +<a id="a9.5.4"></a> +<h4>9.5.4 \QuickChapter[<em>linelength</em>]{<em>chapter title</em>}</h4> + +<p>If your novel is the kind of story that consists of numerous short chapters in rapid succession, then you probably do not wish to begin each chapter on its own page, with a block of whitespace at the top. The <code>\QuickChapter</code> command provides an alternative to <code>ChapterDisplay</code>.</p> + +<p>The <code>\QuickChapter</code> command inserts two blank lines. In the gap, the chapter title is left-justified using <code>subchfont</code> (not <code>chapterfont</code>). It is slightly raised from the normal baseline, because this looks better; but the text in the following chapter is on-grid. The start of the chapter will be un-indented.</p> + +<p>If the optional <code>linelength</code> is provided, then a dash will be written after the title, at the position and thickness typical of the em dash in <code>subchfont</code>. If <code>linelength</code> is specified in units of length, then that will be the length of the line. But if <code>linelength</code> is an asterisk, then the line will fill to the right margin.</p> + +<p>Note that this command is too obstrusive for mere scene changes within a chapter.</p> + +<p>Example:</p> + +<p class="code"><code>Then he looked at me with a sneer, and barked, ``You better haul your can over to Vinny's joint, before the Boss finds out.''\par<br/> +\QuickChapter[3em]{16. At Vinny's}<br/> +So I took his advice, and hauled my can over to Vinny's. It was everything I had expected, and worse.\par<br/> +The bouncer wasn't the biggest one I'd ever seen, but he was the ugliest. ...</code></p> + +<p class="centerimg"><img src="html-resources/quickchapter.png" width="629" height="240" alt="quick chapter"/></p> + + +<a id="a9.6"></a> +<h3>9.6 Scene Breaks</h3> + +<p>There are several commands dedicated to the purpose of scene breaks.</p> + +<a id="a9.6.1"></a> +<h4>9.6.1 \scenebreak, \sceneline, \scenestars</h4> + +<p>These commands insert a one-line skip. After the skip, the next line will not be indented.</p> +<p>The first command simply leaves the skip blank. The second places a short line centered in the skip. The third places three widely-spaced asterisks, centered in the skip. Like this:</p> +<p class="code" style="font-size:small"><img style="float:right; margin-left:16px;" src="html-resources/scenebreaks.png" width="424" height="222" alt="scene breaks" /> +<code> +\noindent It was a dark and stormy night.\par<br/> +Lord Withens, the last of his line, hurried through the gloom.\par<br/> +\scenebreak<br/> +Well, maybe it was not very dark.\par<br/> +But to Lord Withens, it seemed dark enough.\par<br/> +\sceneline<br/> +Actually, it was not all that stormy, either.\par<br/> +But the Withens clan never tolerated drizzle, much less a storm.\par<br/> +\scenestars<br/> +Ah, such ill fortune haunted the Withens!\par<br/> +Novelists of that era had so little to write about, unfortunately.\par +</code></p> + +<p style="clear:both">• If you begin the new scene with something such as an enlarged scene number, or a larger than normal letter, then be sure to put the number or letter inside <code>\charscale</code>. This will prevent enlarged characters from spreading the lines apart. And, unless you have a particular style in mind, it is better to use lining numbers instead of old style numbers. Something like this:</p> + +<p class="code"><code>\scenebreak<br/> +\charscale[1.2]{\lnum{3.}}— The night was still dark and stormy. ...</code></p> + + +<a id="a9.6.2"></a> +<h4>9.6.2 \IndentAfterScenebreak</h4> + +<p>This global command may only be used in the Preamble.</p> +<p>Normally, text begins without a paragraph indent, at each new scene. This is standard in fiction. If you prefer that each new scene begins indented, use this command. It works with <code>\scenebreak</code>, <code>\sceneline</code>, and <code>\scenestars</code>.</p> + + + + +<a id="a9.7"></a> +<h3>9.7 Footnotes</h3> + +<p>This document class has <em>limited</em> support for footnotes, because footnotes are hardly ever used in original fiction. Nevertheless, they do appear on occasion.</p> +<p>Footnotes appear at the bottom of the page where they are placed. There is no option to accumulate them to another location. Very long footnotes might straddle pages, but that situation is uncommon in fiction.</p> +<p>If you have a lot of footnotes, consider endnotes instead. Both may be used.</p> + + +<a id="a9.7.1"></a> +<h4>9.7.1 \SetMarkers[<em>real,fake</em>]{<em>asterisk, dagger, number</em>} </h4> + +<p>This command is used only in the Preamble.</p> +<p>A "marker" is a superscript or subscript, however used. Thus, a footnote or endnote is indicated by a marker in the main text (but not in the footnote or endnote itself).</p> +<p>Most book-quality Open Type fonts have markers in style sets (sups, sinf, subs). In professional fonts, the marker glyph weights are adjusted for consisent appearance compared to ordinary glyphs. However, many free fonts do not adjust marker glyph weights, so the markers may appear too small, or too light.</p> +<p>The option <code>real</code> (default) attempts to use the Open Type feature <em>sups</em> for superscripts, and the feature <em>sinf</em> (preferred) or <em>subs</em> (alternate) for subscripts. If the requested feature is not available, then it will be faked, by scaling/raising/lowering ordinary characters from the basefont (lining numerals will be used).</p> +<p>Option <code>fake</code> ignores whether the Open Type features are available, and simply fakes them.</p> +<p>Thus, you may choose whether real or fake markers look better, depending on the font you are using. What looks better in one font may not look better in another.</p> +<p>The required argument applies only to markers created by the <code>\footnote</code> command. It does not apply to endnotes, or to manually placed superscripts and subscripts.</p> +<p><code>asterisk</code> (default) uses symbolic footnote markers. The symbols rotate in order * †‡ § ** ††‡‡ §§ until reset.</p> +<p><code>dagger</code> uses symbolic footnote markers, but without asterisks. The symbols rotate in order †‡ § ††‡‡ §§ until reset.</p> +<p><code>number</code> uses numerical markers. Due to possible conflict, the log file will have a "Big Bad Warning" if you use a numerical footnote marker in a document that also has endnotes, since endnotes alays have numerical markers.</p> + + +<a id="a9.7.2"></a> +<h4>9.7.2 \realmarker \fakemarker</h4> + +<p>Within the body of the document, you may use <code>\realmarker</code> and <code>\fakemarker</code> to change your preference. The choice remains in effect until you change it again.</p> +<p>The option real/fake applies wherever superscripts or subscripts are used, not just for footnotes or endnotes.</p> + + +<a id="a9.7.3"></a> +<h4>9.7.3 \footnote[<em>option</em>]{<em>text</em>}</h4> +<p>The <code>\footnote{<em>text</em>}</code> command places a "marker" at the place where the command is written. The included text is written at the bottom of the page, beneath a short line that separates it from the main text. The footnote text is at smaller size and line skip, and has the same marker placed before it. All of this is automatic.</p> +<p>You may, if necessary, apply some style to the footnote text. For example, if you are referring to another work, its title might be in italics.</p> +<p>Normally, no option is used. If you use option <code>0</code> (zero) then no marker will appear in the main text, and the footnote text will appear without a marker. The count of markers is not incremented. This applies whether the markers are numbers or symbols.</p> +<p>• Trick: If you are using footnote numbers, but wish to place a special footnote using a symbol, you can do it manually. For example:</p> +<p class="code"><code>He blinked.*\footnote[0]{* No, he didn't.}</code></p> +<p>• Avoid use of underlining, as it is considered bad style, due to visual distraction.</p> + + + +<a id="a9.8"></a> +<h3>9.8 Endnotes</h3> + +<p>Endnotes are sometimes used in fiction, particularly for the kind of novel that pretends to be a lost manuscript, or the translation of an ancient text. The endnotes, by the fictional discoverer or translator, pretend to be an academic discussion of items in the main story. Unlike footnotes, which show quick points that must be immediately known by the reader during the story, endnotes are often a disguised chapter in themselves.</p> + +<p>You may use both footnotes and endnotes, if you wish. However, if endnotes are used, then footnotes must be marked by symbols, rather than by numbers, to avoid confusion. The counts for endnotes and footnotes are independent.</p> + + +<a id="a9.8.1"></a> +<h4>9.8.1 \endnote</h4> +<p>The <code>\endnote</code> command inserts a superior number in the text. A running count of the numbers is automatically updated.</p> +<p>The endnote numbers run continuously through the text, without reset. If you wish to reset the count (perhaps at new chapters), you have to do it manually, using <code>\ResetEndnote</code>. +<p>When you use <code>\endnote</code> there is no provision for the actual note. If you wish to write a reminder to yourself, about why you put an endnote marker there, use <code>\memo{}</code>. The argument of <code>\memo</code> will not be printed, and will not be remembered for later use.</p> + + +<a id="a9.8.2"></a> +<h4>9.8.2 \endnotetext{<em>number</em>}{<em>text</em>}</h4> + +<p>The <code>\endnotetext</code> command is a simple way of styling endnotes. You do not have to use it, if you have your own method.</p> +<p>The first argument is usually the endnote number. A period and following space will automatically be added, so that the text of the note is block-indented. You may use <code>\emph{<em>number</em>}</code> if you prefer the number to be in italics.</p> +<p>The text must be one paragraph. Be sure to end with <code>\par</code> or equivalent.</p> +<p>If the note needs more than one paragraph, then continue like this, with an empty note number:</p> +<p class="code"><code>\endnotetext{}{\indent <em>text</em>}</code></p> +<p>• In <code>novel</code>, you must create and style the page(s) with endnotes yourself! There is no provision for bibliography, and no provision for any other kind of automated styling. This is because the endnotes, being fictional, are more like the main text than any academic style. Think of the endnotes as just another chapter, but starting with something that identifies them as being endnotes.</p> +<p>• Although <code>novel</code> provides several ways of partitioning backmatter, this is discouraged in fictional works. Normally, endnotes continue as mainmatter, with arabic page numbers.</p> + + +<p>Example:</p> + +<p class="code"> +<code> +\endnotetext{9}{Yang Sho-Nuff was the twelfth son of the elder god of the ancient Who-Zit Clan, with power over the forces of rust.\par}<br/> +\endnotetext{}{\indent However, since this was not yet the Iron Age, the terible might of Yang Sho-Nuff was largely unrecognized.\par}<br/> +\endnotetext{10}{As Professor Withens notes in his treatise, \emph{When Sho-Nuff Was Not Enough}, the ceremony of daily human sacrifice had a devastating effect on the tribal population.\par} +</code></p> + +<p class="centerimg"><img src="html-resources/endnotetext.png" width="637" height="219" alt="using endnotetext"/></p> + + + + + + + + + + + + + + + + + + + +</div><!-- end main --> + +<div id="finish"></div> + +</div><!-- end master --> + +</body> +</html> + diff --git a/Master/texmf-dist/fonts/opentype/novel/NovelDeco.otf b/Master/texmf-dist/fonts/opentype/novel/NovelDeco.otf Binary files differnew file mode 100644 index 00000000000..35fd168901c --- /dev/null +++ b/Master/texmf-dist/fonts/opentype/novel/NovelDeco.otf diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-CGATSTR001.clo b/Master/texmf-dist/tex/lualatex/novel/novel-CGATSTR001.clo new file mode 100644 index 00000000000..ba1653ff03f --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-CGATSTR001.clo @@ -0,0 +1,15 @@ +% Typically used in the USA. Novel file version 1.0.6 + +% The values of the arguments are public industry standards. + +% Remember: TeX special characters must be backslashed here. +% You may see % or # or _ in the data or file names. +% Be sure that they are written as \% \# \_ or there will be trouble. + +% This identifier has spaces, even though file name has no spaces. +\gdef\@OIidentifier{CGATS TR 001} % also called "reference name" +\gdef\@OIcondition{SWOP (Publication) printing in USA (Printing process definition: ANSI CGATS.6).} +\gdef\@OIinfo{U.S. Web Coated (SWOP) v2} +\gdef\@OIregistry{http://www.color.org} +\gdef\@OIprofile{USWebCoatedSWOP.icc} + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-CalculateLayout.sty b/Master/texmf-dist/tex/lualatex/novel/novel-CalculateLayout.sty new file mode 100644 index 00000000000..92d38d8bf68 --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-CalculateLayout.sty @@ -0,0 +1,679 @@ +%% +%% This is file `novel-CalculateLayout.sty', a custom file. +%% Copyright 2017 Robert Allgeyer. +%% +%% It may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% +\ProvidesFile{novel-CalculateLayout.sty}% +[2017/03/01 v1.0.6 LaTeX file (layout calculations)] +%% + + +%% +%% This file is loaded \AtEndPreamble, which precedes \AtBeginDocument. +%% + +\newlength\normalFontSize % becomes 1em in normal text, after \AtBeginDocument +\newlength\normalBaselineSkip % also abbreviated as \nbs + + +%% SET DEFAULT SIZES, AND INITIAL CORRECTIONS +%% ----------------------------------------------------------------------------- +%% +% Default Trim Size, if user does not set it. This is a popular size for +% US softcover fiction, and is close to a popular British size. +\if@TrimSizeSet\else + \SetTrimSize{5.5in}{8.5in} % width, height + \if@MediaSizeSet\else + \SetMediaSize{5.5in}{8.5in} + \fi +\fi +% Default margins are based on Trim Height, if user does not set margins. +% Works for standard w/h aspect ratios, but not for exotically narrow. +\if@MarginsSet\else + \ifthenelse{\dimtest{\Old@TrimHeight}{<}{8.99in}}{ % small sizes: + \global\setlength\Old@TopMargin{0.5in} + \global\setlength\Old@OutsideMargin{0.5in} + \global\setlength\Old@BottomMargin{0.5in} + \global\setlength\Old@InsideMargin{0.75in} + \global\setlength\New@TopMargin{0.5in} + \global\setlength\New@OutsideMargin{0.5in} + \global\setlength\New@BottomMargin{0.5in} + \global\setlength\New@InsideMargin{0.75in} + }{ % medium sizes: + \ifthenelse{\dimtest{\Old@TrimHeight}{<}{9.99in}}{ + \global\setlength\Old@TopMargin{0.75in} + \global\setlength\Old@OutsideMargin{0.75in} + \global\setlength\Old@BottomMargin{0.75in} + \global\setlength\Old@InsideMargin{1in} + \global\setlength\New@TopMargin{0.75in} + \global\setlength\New@OutsideMargin{0.75in} + \global\setlength\New@BottomMargin{0.75in} + \global\setlength\New@InsideMargin{1in} + }{ % large sizes: + \global\setlength\Old@TopMargin{1in} + \global\setlength\Old@OutsideMargin{1in} + \global\setlength\Old@BottomMargin{1in} + \global\setlength\Old@InsideMargin{1.25in} + \global\setlength\New@TopMargin{1in} + \global\setlength\New@OutsideMargin{1in} + \global\setlength\New@BottomMargin{1in} + \global\setlength\New@InsideMargin{1.25in} + } % end internal dimtest + } % end dimtest for margins. +\fi % end default margins +% +% Choose default font size based on Trim Width, unless font size set by user: +\if@FontSizeSet\else + \ifthenelse{\dimtest{\Old@TrimWidth}{<}{5.49in}}{ + \global\setlength\Old@FontSize{11pt} % smaller books + }{ + \ifthenelse{\dimtest{\Old@TrimWidth}{<}{6.24in}}{ + \global\setlength\Old@FontSize{11.4pt} % medium books + }{ + \global\setlength\Old@FontSize{12pt} % larger books + } % end internal dimtest + } % end dimtest for font size. +\fi +% +% Default lines/page based on Trim Height, font size, unless LPP set by user: +\if@LinesPerPageSet\else + \def\@tempOFSnum{\strip@pt\Old@FontSize} + \FPmul{\@tempOBSnum}{\@tempOFSnum}{1.3} % for a nice, uncramped baselineskip + \def\@tempTH{\strip@pt\Old@TrimHeight} + \def\@tempTM{\strip@pt\Old@TopMargin} + \FPsub{\@tempLH}{\@tempTH}{\@tempTM} + \FPsub{\@tempLH}{\@tempLH}{\@tempTM} % \@tempLH is available live height + \FPdiv{\@tempLPP}{\@tempLH}{\@tempOBSnum} + \FPsub{\@tempLPP}{\@tempLPP}{1.5} % allows for default header + \FPround{\@tempLPP}{\@tempLPP}{0} % integer + \FPclip{\@tempLPP}{\@tempLPP} % remove excess trailing 0. + \gdef\my@LinesPerPage{\@tempLPP} +\fi +% +% Correct bottom margin for descenders, assumed to be 0.3em: +\addtolength\Old@BottomMargin{0.3\Old@FontSize} +\addtolength\New@BottomMargin{0.3\Old@FontSize} +% Warn if user requests unrealistic HeadJump or FootJump: +\FPiflt{\@headjump}{1} + \ClassWarning{novel}{^^JYou requested \string\HeadJump<1. Unless you have^^J% + a very good reason for that, you had better increase it to at least 1.^^J}% +\else\fi +% +\FPiflt{\@footjump}{1} + \ClassWarning{novel}{^^JYou requested \string\FootJump<1. Unless you have^^J% + a very good reason for that, you had better increase it to at least 1.^^J}% +\else\fi +% +%% end set default sizes and initial corrections + + + +%% OLD, NEW, CURRENT, LIVE, TEXT MACRO DEFINITIONS +%% ----------------------------------------------------------------------------- +%% +% The `novel' class has a \Rework feature. This allows the user to compile +% a document using "old" settings" then re-compile using some "new" settings, +% without changing the paragraph structure or pagination. Not for everyone! +% The rework is done all at once, without requiring an additional pass. +% Here, the old and new values are compared, and the effect predicted. +% The reworked document has will have font size and baselineskip changed +% to meet the new size requirements. +% +% "Old" values come from preset values, depending on class Trim Size option. +% Or, the presets may be over-ridden using \Set---- commands. +% "New" values are initialized to "Old" or \Set---- as above. +% Then, they can be over-ridden using \Rework---- commands. +% "Current" values are the latest and greatest, as calculations progress. +% They are initialized to "Old" values." +% Widths and Heights are lengths, stored by \setlength. +% Expression ending in "Num" are pure numbers, suitable for FP calculations. +% "Live" refers to the area available to text (including header/footer). +% +% Find the Old and New Live Width and Height, and initialize +% Text Width and Height to Old Live. Initialize Font Size. +\newlength\Old@LiveWidth + \setlength\Old@LiveWidth{\Old@TrimWidth} + \addtolength\Old@LiveWidth{-\Old@OutsideMargin} + \addtolength\Old@LiveWidth{-\Old@InsideMargin} + \def\Old@LiveWidthNum{\strip@pt\Old@LiveWidth} +\newlength\Old@LiveHeight + \setlength\Old@LiveHeight{\Old@TrimHeight} + \addtolength\Old@LiveHeight{-\Old@TopMargin} + \addtolength\Old@LiveHeight{-\Old@BottomMargin} +\newlength\Current@FontSize + \setlength\Current@FontSize{\Old@FontSize} + \def\Current@FontSizeNum{\strip@pt\Current@FontSize} + \def\Old@FontSizeNum{\strip@pt\Old@FontSize} + \addtolength\Old@LiveHeight{-\Current@FontSizeNum pt} + \def\Old@LiveHeightNum{\strip@pt\Old@LiveHeight} +\newlength\Current@TextWidth + \setlength\Current@TextWidth{\Old@LiveWidth} + \def\Current@TextWidthNum{\strip@pt\Current@TextWidth} +\newlength\Current@TextHeight + \setlength\Current@TextHeight{\Old@LiveHeight} + \def\Current@TextHeightNum{\strip@pt\Current@TextHeight} +\newlength\New@LiveWidth + \setlength\New@LiveWidth{\New@TrimWidth} + \addtolength\New@LiveWidth{-\New@OutsideMargin} + \addtolength\New@LiveWidth{-\New@InsideMargin} + \def\New@LiveWidthNum{\strip@pt\New@LiveWidth} +\newlength\New@LiveHeight + \setlength\New@LiveHeight{\New@TrimHeight} + \addtolength\New@LiveHeight{-\New@TopMargin} + \addtolength\New@LiveHeight{-\New@BottomMargin} + \def\New@LiveHeightNum{\strip@pt\New@LiveHeight} +% +%% End old, new... macro definitions. + + + +%% PRELIMINARY CALCULATION OF BASELINESKIP +%% ----------------------------------------------------------------------------- +%% +% Get values of \@gotHeader and \@gotFooter booleans: +\@reserveHFspace % defined in `novel-LayoutSettings.sty'. +% Adjusted LinesPerPage will include header, footer, and added separations: +\let\adj@LinesPerPage\my@LinesPerPage % Start with the textblock lines. +% The footskip is always "there" even if no content. Remove it: +\FPsub{\adj@LinesPerPage}{\adj@LinesPerPage}{1} +% +\if@gotHeader % allow for header jump + \FPadd{\adj@LinesPerPage}{\adj@LinesPerPage}{\@headjump} +\fi +% +\if@gotFooter % allow for footer jump + \FPadd{\adj@LinesPerPage}{\adj@LinesPerPage}{\@footjump} +\fi +% +% Baseline Skip is Live Height divided by adjusted number of lines. +% Thus initially, Text (with header/footer) occupies full Live Height. +\newlength\Current@BaselineSkip +\FPdiv{\Current@BaselineSkipNum}{\Old@LiveHeightNum}{\adj@LinesPerPage} +% Check to see if Baseline Skip is insufficient: +\FPdiv{\@ratioBStoFS}{\Current@BaselineSkipNum}{\Current@FontSizeNum} +\FPiflt{\@ratioBStoFS}{1.2}% + \ClassError{novel}{Too many lines per page^^J}% + {You requested too many lines per page, for the page dimensions and^^J% + font size. Maybe few lines, or smaller font size, or eliminate^^J% + header or footer? Or a bigger Trim Size?^^J}% +\else % OK, so set CurrentBaselineSkip: + \setlength\Current@BaselineSkip{\Current@BaselineSkipNum pt} +\fi +\newlength\Old@BaselineSkip + \setlength\Old@BaselineSkip{\Current@BaselineSkipNum pt} +\gdef\Old@BaselineSkipNum{\strip@pt\Old@BaselineSkip} +% +%% End preliminary calculation of baselineskip. + + + +%% FIT CurrentTextWidth TO NewLiveWidth +%% ----------------------------------------------------------------------------- +%% +\FPdiv{\my@TextRescaleNum}{\New@LiveWidthNum}{\Current@TextWidthNum} +\FPmul{\Current@FontSizeNum}{\Current@FontSizeNum}{\my@TextRescaleNum} +\setlength\Current@FontSize{\Current@FontSizeNum pt} +\FPmul{\Current@TextWidthNum}{\Current@TextWidthNum}{\my@TextRescaleNum} +\setlength\Current@TextWidth{\Current@TextWidthNum pt} +% +%% end fit CurrentTextWidth to NewLiveWidth + + + +%% ADJUST CurrentBaselineSkip TO FIT NewLiveHeight +%% ----------------------------------------------------------------------------- +%% +% Test if New Text Height fits within New Live Height: +\FPifgt{\Current@TextHeightNum}{\New@LiveHeightNum} % does not fit, so fix it + \FPdiv{\my@NBSrescaleNum}{\New@LiveHeightNum}{\Current@TextHeightNum} + \FPmul{\Current@BaselineSkipNum}{\Current@BaselineSkipNum}{\my@NBSrescaleNum} + \setlength\Current@BaselineSkip{\Current@BaselineSkipNum pt} + \FPmul{\Current@TextHeightNum}{\Current@BaselineSkipNum}{\adj@LinesPerPage} +\fi +% Check if the revised skip is too small: +\FPdiv{\@ratioBLtoFS}{\Current@BaselineSkipNum}{\Current@FontSizeNum} +\FPiflt{\@ratioBLtoFS}{1.2} % Too small. Re-tweak font, text width, skip. + \FPdiv{\@rescaleFontSize}{\@ratioBLtoFS}{1.2} + \FPmul{\Current@FontSizeNum}{\Current@FontSizeNum}{\@rescaleFontSize} + \setlength\Current@FontSize{\Current@FontSizeNum pt} + \FPmul{\Current@TextWidthNum}{\Current@TextWidthNum}{\@rescaleFontSize} + \setlength\Current@TextWidth{\Current@TextWidthNum pt} + \FPdiv{\Current@BaselineSkipNum}{\New@LiveHeightNum}{\adj@LinesPerPage} + \setlength\Current@BaselineSkip{\Current@BaselineSkipNum pt} + \FPmul{\Current@TextHeightNum}{\Current@BaselineSkipNum}{\adj@LinesPerPage} +\fi +% +% Note that if the revised skip is larger than desired, it is easy to change. +% Simply increase the top/bottom margin, which does not affect line breaks. +% +%% end adjust CurrentBaselineSkip to fit NewLiveHeight. + + + +%% DISTRIBUTE SIDE EXCESS +%% ----------------------------------------------------------------------------- +%% The prior calculation may have shrunk CurrentTextWidth below NewLiveWidth. +\newlength\fix@SideMargin + \setlength\fix@SideMargin{\New@LiveWidth} + \addtolength\fix@SideMargin{-\Current@TextWidth} +\addtolength\New@OutsideMargin{0.5\fix@SideMargin} +\addtolength\New@InsideMargin{0.5\fix@SideMargin} +% +%% end distribute side excess. + + + +%% SET TEXTWIDTH, FONT SIZE, BASELINESKIP +%% ----------------------------------------------------------------------------- +% +\setlength\textwidth{\Current@TextWidthNum pt} +% +\setlength\normalFontSize{\Current@FontSizeNum pt} +\setlength\normalBaselineSkip{\Current@BaselineSkipNum pt} + +\@setfontsize\normalsize\normalFontSize{\normalBaselineSkip}% + + +\normalsize % Defined in `novel.cls'. Uses numbers, not lengths. +% +\newlength\nfs % abbreviation for normal fontsize +\setlength\nfs{\normalFontSize} +\gdef\nfsnum{\strip@pt\nfs} +\newlength\nbs % abbreviation for normal baselineskip +\setlength\nbs{\normalBaselineSkip} +\gdef\nbsnum{\strip@pt\nbs} % just the numerical part +% +% This document class limits range of normal point size: +\FPiflt{\Current@FontSizeNum}{8}% + \ClassError{novel}{Normal fontsize must be at least 8pt^^J}% + {In the class options, you chose a font size that is too small.^^J% + It must be at least 8pt.^^J}% +\fi +% +\FPifgt{\Current@FontSizeNum}{18.1}% + \ClassError{novel}{Normal fontsize cannot exceed 18bp^^J}% + {In the class options, you chose a font size that is too large.^^J% + It cannot exceed 18bp.^^J}% +\fi +% Alert when lines closer than generally-accepted usage: +\FPmul{\@minBaselineSkipNum}{\Current@FontSizeNum}{1.24} +\FPiflt{\Current@BaselineSkipNum}{\@minBaselineSkipNum} + \typeout{^^JClass `novel' Alert: Line spacing is allowable, but close.^^J% + Consider fewer lines per page, or eliminate header or footer.^^J}% +\fi +% Alert when lines are farther than generally-accepted usage: +\FPmul{\@bigBS}{\Current@FontSizeNum}{1.41} +\FPifgt{\Current@BaselineSkipNum}{\@bigBS} + \typeout{^^JClass `novel' Alert: Line spacing is allowable, but wide.^^J% + Consider more lines per page, or add header or footer.^^J}% +\fi +% +\FPdiv{\Ratio@BaselineSkip}{\Current@BaselineSkipNum}{\Old@BaselineSkipNum} +\FPround{\Ratio@BaselineSkip}{\Ratio@BaselineSkip}{3} +\FPclip{\Ratio@BaselineSkip}{\Ratio@BaselineSkip} +% +\FPdiv{\Ratio@EM}{\Current@FontSizeNum}{\Old@FontSizeNum} +\FPround{\Ratio@EM}{\Ratio@EM}{3} +\FPclip{\Ratio@EM}{\Ratio@EM} +% Alert if images scaled by \Rework: +\ifthenelse{\equal{\Ratio@EM}{1} \AND \equal{\Ratio@BaselineSkip}{1}}{}{% + \typeout{^^JClass `novel' Alert: Due to \string\Rework\space there may be^^J% + places where an image no longer fits properly with surrounding text.^^J% + Try scaling such images in an external graphics editor. They cannot be^^J% + automatically scaled within the document. See `novel' docs, Page 9.^^J% + Suggested scale for inline images: \Ratio@EM ^^J% + Suggested scale for block images: \Ratio@BaselineSkip ^^J% + Maybe also change gaps for imageAtLeft and imageAtRight, trial-and-error.^^J}% +} +% +\setlength\parindent{1.5em} +% +%% Values to be used by footnotes: +\FPdiv{\my@FontScale}{\Current@FontSizeNum}{12} +% Substitute for \footnotesize, but only works for actual footnotes, +% about 10pt with similarly reduced skip: +\FPmul{\@myfootnotesizenum}{\my@FontScale}{10} +\FPround{\@myfootnotesizenum}{\@myfootnotesizenum}{2} +\FPmul{\@myfootnoteskipnum}{\my@FontScale}{\Current@BaselineSkipNum} +\FPmul{\@myfootnoteskipnum}{\@myfootnoteskipnum}{0.84} +\FPround{\@myfootnoteskipnum}{\@myfootnoteskipnum}{2} +% +%% end set textwidth, font size, baselineskip + + + + + +%% BEGIN LAYOUT CALCULATIONS +%% ----------------------------------------------------------------------------- +% +\if@gotHeader + \setlength\headheight{\nbs} + \FPsub{\@headsepmul}{\@headjump}{1} + \FPmul{\@headsep}{\@headsepmul}{\Current@BaselineSkipNum} + \setlength\headsep{\@headsep pt} +\else + \setlength\headheight{0pt} + \setlength\headsep{0pt} +\fi +% +% Prior to this, the following were set by user or calculated: +% \textwidth \headsep \headheight +% +\setlength\paperwidth{\New@MediaWidth} % MediaWidth +\setlength\paperheight{\New@MediaHeight} % MediaHeight + + +%% The `closecrop' class option calculates layout, then removes most of the +%% margins. Draft mode only. Purpose is to create a file with just enough white +%% space around the text to be readable on a handheld device. Not an E-book! +%% Additional closecrop code is located farther down this page. +\if@closecrop + \setlength\paperwidth{\textwidth+0.2in} +\fi +%% + + +% +% Standard TeX \hoffset and \voffset is not relative to the MediaBox, but is +% relative to 1in from the top left corner of the MediaBox. Ouch. +% I thought about making the 1in go away, by re-setting \hoffset and \voffset +% to -1in each. Then other calculations would make more sense. +% In the end, I decided against that, since other packages expect the usual. +\setlength\hoffset{0pt} % relative to 1in built-in offset at left side +\setlength\voffset{0pt} % relative to 1in built-in offset at top +% +% \textheight is peculiar. Unless it is exact to 1/65536 TeX pt, which is +% the smallest resolution, the log file will babbled about Underfull vbox +% (badness 10000) for every page. I believe this is a bug in Tex. It's not +% all that bad, folks. On the other hand, if \textheight is even a fraction +% smaller than its theoretical value, there will be one less line of text. +% Even the geometry package can miss, due to rounding error somewhere. +% After some investigation, I determined that the following works. Basically, +% \textheight must be the normal baselineskip multiplied by the number of lines +% per page, minus 1 for the (invisible) footskip, with \normalFontSize added. +% To straddle the fence between Underfull vbox complaints, and missing a line, +% I added a very tiny fudge amount, which is less that 1/65536pt. +\FPsub{\less@LinesPerPage}{\my@LinesPerPage}{1} +\setlength\textheight{\normalFontSize+\less@LinesPerPage\nbs+0.000001pt} +% +% \oddsidemargin is at the left (inside, spine edge) of recto pages. +% Measured 1in (72.27pt) inside the MediaBox, to the textblock. May be negative. +% When the TrimBox equals the MediaBox, or is centered within it, +% the value is \New@InsideMargin+0.5\New@MediaWidth-0.5\New@TrimWidth-72.27pt +\if@offcenterTrim + \setlength\oddsidemargin{\New@InsideMargin-72.27pt} +\else + \setlength\oddsidemargin{% + \New@InsideMargin+0.5\New@MediaWidth-0.5\New@TrimWidth-72.27pt} +\fi + +%% +\if@closecrop + \setlength\oddsidemargin{-0.9in} +\fi +%% + +% +% \evensidemargin is at the left (outside edge) of verso pages. +% Calculation as above, but using \New@OutsideMargin +\if@offcenterTrim + \setlength\evensidemargin{\New@OutsideMargin-72.27pt} +\else + \setlength\evensidemargin{% + \New@OutsideMargin+0.5\New@MediaWidth-0.5\New@TrimWidth-72.27pt} +\fi + +%% +\if@closecrop + \setlength\evensidemargin{-0.9in} +\fi +%% + + + +% +% \topmargin is measured from 1in below the top of the MediaBox, to the top of +% whatever comes first (header or textblock). May be negative. +% When the TrimBox equals the MediaBox, or is centered within it, +% the value is \New@TopMargin+0.5\New@MediaHeight-0.5\New@TrimHeight-72.27pt +\if@offcenterTrim + \setlength\topmargin{\New@TopMargin-72.27pt} +\else + \setlength\topmargin{% + \New@TopMargin+0.5\New@MediaHeight-0.5\New@TrimHeight-72.27pt} +\fi +% + +%% +\if@closecrop + \if@gotHeader + \setlength\topmargin{-1in} + \else + \setlength\topmargin{-0.9in} + \fi +\fi +%% + + + +% Vertical position of the textblock is measured to the "top" of the first line +% of text. But that could be an X height, or an accented character height, +% an ascender, or something else, depending on the line's content. +% Setting \topskip=\normalFontSize places the "top" at 1em above the baseline, +% which provides a fixed clearance regardless of accented characters +% (unless stacked high). Note that when \charscale is used to make a special +% line start, it doesn't affect the height, since it is "smashed." +\setlength\topskip{\normalFontSize} +% +% In `novel' class, footers are done in an unusal manner. The position of +% the footer baseline is fixed, regardless of the desired jump between text +% and footer. Then, the content (if any) of the footer is relatively positioned +% using \smash and \raisebox. +\setlength\footskip{\nbs} +% + + +%% +\if@closecrop + \if@gotFooter + \if@gotHeader + \setlength\paperheight{% + \textheight+\headsep+\headheight+\@footjump\nbs+1pt} + \else + \setlength\paperheight{% + \textheight+\headsep+\headheight+\@footjump\nbs+\nfs} + \fi + \else + \setlength\paperheight{\textheight+\headsep+\headheight+0.1in} + \fi +\fi +%% + + + +%% End layout calculations. + + + + +% When Media Size exceeds Trim Size, this sets the position: +\newlength\temp@PaperWidth +\newlength\temp@PaperHeight +\newlength\temp@Hoffset +\newlength\temp@Voffset +% +\if@offcenterTrim + \setlength\temp@PaperWidth{\New@TrimWidth} + \setlength\temp@PaperHeight{\New@TrimHeight} + \setlength\temp@Hoffset{0pt} + \setlength\temp@Voffset{0pt} +\else + \setlength\temp@PaperWidth{\New@MediaWidth} + \setlength\temp@PaperHeight{\New@MediaHeight} + \setlength\temp@Hoffset{\temp@PaperWidth} + \addtolength\temp@Hoffset{-\New@TrimWidth} + \setlength\temp@Hoffset{0.5\temp@Hoffset} + \setlength\temp@Voffset{\temp@PaperHeight} + \addtolength\temp@Voffset{-\New@TrimHeight} + \setlength\temp@Voffset{0.5\temp@Voffset} +\fi +% End when Media Size exceeds Trim Size. + + + +% When Media Size = Trim Size, cropmarks are disabled. +% Too late for \@cropviewfalse; OK since CropBox already calculated properly. +\ifthenelse{% + \dimtest{\New@TrimWidth}{=}{\New@MediaWidth} % + \AND \dimtest{\New@TrimHeight}{=}{\New@MediaHeight}% +}{\global\@cropmarksfalse}{} +% end disabling `cropmarks' option. + +% Left, Right, Top, Bottom, x and y +\newlength\Trim@Lx +\newlength\Trim@Rx +\newlength\Trim@Ty +\newlength\Trim@By +\newlength\Live@Lx +\newlength\Live@By +\newlength\adj@NewLiveHeight +\setlength\adj@NewLiveHeight{\New@LiveHeight+0.3\normalFontSize} +% +\gdef\@getPageXY{ + \check@IsVerso % defined in novel-HeadFootStyles.sty + \if@isVerso + \setlength\Trim@Lx{\evensidemargin-\New@OutsideMargin+72.27pt} + \setlength\Trim@Rx{\Trim@Lx+\New@TrimWidth} + \setlength\Live@Lx{\evensidemargin+72.27pt} + \else + \setlength\Trim@Lx{\oddsidemargin-\New@InsideMargin+72.27pt} + \setlength\Trim@Rx{\Trim@Lx+\New@TrimWidth} + \setlength\Live@Lx{\oddsidemargin+72.27pt} + \fi + \if@offcenterTrim + \setlength\Trim@By{\New@MediaHeight-\New@TrimHeight} + \setlength\Trim@Ty{\New@MediaHeight} + \else + \setlength\Trim@By{0.5\New@MediaHeight-0.5\New@TrimHeight} + \setlength\Trim@Ty{0.5\New@MediaHeight+0.5\New@TrimHeight} + \fi + \setlength\Live@By{\Trim@By+\New@BottomMargin-0.3\normalFontSize} +} +% + + + +%% With class option `shademargins' (only effective in draft mode): +% Based on code by Ulrike Fischer at tex.stackexchange.com, CC-by-sa-3.0: +% The 0.903215 is a value that the user would not be likely to choose. +% The re-defined color command makes an exception for that value. +\definecolor[named]{hingledingle}{gray}{1} % fake white, when white disallowed +% +\if@shademargins + \pagecolor{hingledingle}% + \if@offcenterTrim% + \AddToShipoutPictureBG{\@getPageXY% + \AtPageLowerLeft{\color[gray]{0.903215}% + \hspace{\Trim@Lx}\rule[\Trim@By]{\New@TrimWidth}{\New@TrimHeight}}% + }% + % + \AddToShipoutPictureBG{\@getPageXY% + \AtPageLowerLeft{\color{hingledingle}% + \hspace{\Live@Lx}\rule[\Live@By]{\New@LiveWidth}{\adj@NewLiveHeight}}% + }% + \else% trim is centered + \AddToShipoutPictureBG{\@getPageXY% + \AtPageLowerLeft{\color[gray]{0.903215}% + \hspace{\Trim@Lx}\rule[\Trim@By]{\New@TrimWidth}{\New@TrimHeight}}% + }% + % + \AddToShipoutPictureBG{\@getPageXY% + \AtPageLowerLeft{\color{hingledingle}% + \hspace{\Live@Lx}\rule[\Live@By]{\New@LiveWidth}{\adj@NewLiveHeight}}% + }% + \fi% +\fi % end \if@shademargins +% + +% Labels each page with DRAFT at upper left, if in draft mode: +\if@useDraftMode + \AddToShipoutPictureBG{\@getPageXY% + \AtPageUpperLeft{\raisebox{-\nbs}{\textbf{~DRAFT}}} + }% +\fi +% + + +% Cropmarks (trim marks, really) are not important in this document class. +% That's because the targeted printing services generally do not want them. +% But a minimal capability was easy to add. The far end of each mark is +% half an inch from the trim area. The close end is separated by a gap >= 0pt. +% So the length of the marks is generally less than half an inch. +% If trim is at the edge of the media box, instead of centered, +% then only one pair of marks will be written. +% The marks are turned on using `cropmarks' class option. The gap is set +% in Preamble using \SetCropmarkGap{length}. +\if@cropmarks + \if@offcenterTrim + \check@IsVerso + \if@isVerso + % H bottom left: + \AddToShipoutPictureBG{\@getPageXY\AtPageLowerLeft{% + \hspace{\dimexpr\Trim@Lx-0.5in}\rule[\Trim@By-0.5pt]{0.5in-\@mygap}{0.5pt}}} + % V bottom left: + \AddToShipoutPictureBG{\@getPageXY\AtPageLowerLeft{% + \hspace{\dimexpr\Trim@Lx-0.5pt}\rule[\Trim@By-0.5in]{0.5pt}{0.5in-\@mygap}}} + \else + % H bottom right: + \AddToShipoutPictureBG{\@getPageXY\AtPageLowerLeft{% + \hspace{\dimexpr\Trim@Rx+\@mygap}\rule[\Trim@By-0.5pt]{0.5in-\@mygap}{0.5pt}}} + % V bottom right: + \AddToShipoutPictureBG{\@getPageXY\AtPageLowerLeft{% + \hspace{\Trim@Rx}\rule[\Trim@By-0.5in]{0.5pt}{0.5in-\@mygap}}} + \fi + \else + % H top left: + \AddToShipoutPictureBG{\@getPageXY% + \AtPageLowerLeft{% + \hspace{\dimexpr\Trim@Lx-0.5in}\rule[\Trim@Ty]{0.5in-\@mygap}{0.5pt}}} + % H bottom left: + \AddToShipoutPictureBG{\@getPageXY\AtPageLowerLeft{% + \hspace{\dimexpr\Trim@Lx-0.5in}\rule[\Trim@By-0.5pt]{0.5in-\@mygap}{0.5pt}}} + % H top right: + \AddToShipoutPictureBG{\@getPageXY\AtPageLowerLeft{% + \hspace{\dimexpr\Trim@Rx+\@mygap}\rule[\Trim@Ty]{0.5in-\@mygap}{0.5pt}}} + % H bottom right: + \AddToShipoutPictureBG{\@getPageXY\AtPageLowerLeft{% + \hspace{\dimexpr\Trim@Rx+\@mygap}\rule[\Trim@By-0.5pt]{0.5in-\@mygap}{0.5pt}}} + % V top left: + \AddToShipoutPictureBG{\@getPageXY\AtPageLowerLeft{% + \hspace{\dimexpr\Trim@Lx-0.5pt}\rule[\Trim@Ty+\@mygap]{0.5pt}{0.5in-\@mygap}}} + % V bottom left: + \AddToShipoutPictureBG{\@getPageXY\AtPageLowerLeft{% + \hspace{\dimexpr\Trim@Lx-0.5pt}\rule[\Trim@By-0.5in]{0.5pt}{0.5in-\@mygap}}} + % V top right: + \AddToShipoutPictureBG{\@getPageXY\AtPageLowerLeft{% + \hspace{\Trim@Rx}\rule[\Trim@Ty+\@mygap]{0.5pt}{0.5in-\@mygap}}} + % V bottom right: + \AddToShipoutPictureBG{\@getPageXY\AtPageLowerLeft{% + \hspace{\Trim@Rx}\rule[\Trim@By-0.5in]{0.5pt}{0.5in-\@mygap}}} + \fi +\fi +% +%% end cropmarks + + + +%% +%% End of file `novel-CalculateLayout.sty'. + + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-ChapterScene.sty b/Master/texmf-dist/tex/lualatex/novel/novel-ChapterScene.sty new file mode 100644 index 00000000000..7fdf5adb33c --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-ChapterScene.sty @@ -0,0 +1,319 @@ +%% +%% This is file `novel-ChapterScene.sty', part of class `novel'. +%% Copyright 2017 Robert Allgeyer. +%% +%% +%% This file may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% +\ProvidesFile{novel-ChapterScene.sty}% +[2017/03/01 v1.0.6 LaTeX file (chapter and scene macros)] +%% + + +% Class `novel' does not use \maketitle. +\gdef\maketitle{% + \ClassError{novel}{\string\maketitle does not exist in this class}% + {Sorry, but there is no \string\maketitle command in `novel' class.^^J% + You must make your own title pages!^^J}% +} +% + + +%% SCENE CHANGES +%% ----------------------------------------------------------------------------- +%% \scenebreak \sceneline \scenestars +% Use anywhere in document body. +% These commands skip a line. +% \scenebreak leaves the gap empty. +% \sceneline centers a line, about 1/3 textwidth. +% \scenestars centers three widely-spaced asterisks. +% Default behavior is \noindent for following paragraph. +% Use \IndentAfterScenebreak in preamble to change this globally. +% Either way, the local behavior can be changed using \indent or \noindent. +% Note: The indent behavior is activated AtBeginDocument. +\newif\if@indentAfterScenebreak \@indentAfterScenebreakfalse +\newcommand\IndentAfterScenebreak{\@indentAfterScenebreaktrue} +% +\newcommand\scenebreak{\null} +% +\newcommand\sceneline{% + \noindent\hfil% + \raisebox{0.2em}{\rule{0.35\textwidth}{.4pt}}\hfil\par% +} +% +\newcommand\scenestars{% + \noindent\hfil% + \raisebox{-.3em}{*\quad\quad*\quad\quad*}\hfil\par% +} +%% end scene changes + + +%% Repair \FirstLine{} command from `magaz' package. +% Problem: Conflict with \noindent\nov@AfterGroup as used in ChapterDisplay. +% The \noindent is carried past \FirstLine to the following paragraph. +% Solution: After FirstLine completes, back up one line vertically, then insert +% and empty line to restore grid and absorb the noindent. +% Starred version uses the original \FirstLine definition, just in case +% the following paragraph has some exotic feature. +% Thanks to user `egreg' at tex.stackexchange.com for debug assistance. +\let\oldFirstLine\FirstLine +\def\FirstLine{\@ifstar\FirstLineFoo\@FirstLineFoo} % improved +\def\FirstLineFoo#1{\oldFirstLine{#1}} % starred restores original def. +\def\@FirstLineFoo#1{% + \oldFirstLine{#1}\par\vspace{-\nbs}\strut\par% +} +%% + + + +%% ChapterDisplay environment. +% The most useful way to start a new chapter. Occupies a fixed amount of +% vertical space. Also self-adjust when used with dropfolio. Automatically +% calls \thispagestyle if set for all chapter displays. +\newif \if@addCTline \@addCTlinetrue +\newcounter{@linequarter} +\newif \if@csalignok \@csalignokfalse +% +% The argument is the number of normal baselineskips high: +\newenvironment{ChapterDisplay}[1][10] +{% + \FPsub{\@fixlines}{#1}{3}% + \FPsub{\@fixlines}{\@fixlines}{0.001}% fudge to avoid rounding problems + \if@thispagestyleset\else\thispagestyle{\@setchapterdisplay}\fi% + \null% + \ResetFootnoteSymbol% resets symbolic markers, but not numeric markers + \if@addCTline\null\else\fi% used with dropfolio + \setcounter{@linequarter}{0}% + \begin{textblock*}{\textwidth}[0,0](0pt,0pt)% +}{% + \ifthenelse{% + \equal{\value{@linequarter}}{1} \OR \equal{\value{@linequarter}}{5}% + \OR \equal{\value{@linequarter}}{9} \OR \equal{\value{@linequarter}}{13}% + }{\vspace{0.75\nbs}}{}% + \ifthenelse{% + \equal{\value{@linequarter}}{2} \OR \equal{\value{@linequarter}}{6}% + \OR \equal{\value{@linequarter}}{10} \OR \equal{\value{@linequarter}}{14}% + }{\vspace{0.5\nbs}}{}% + \ifthenelse{% + \equal{\value{@linequarter}}{3} \OR \equal{\value{@linequarter}}{7}% + \OR \equal{\value{@linequarter}}{11} \OR \equal{\value{@linequarter}}{15}% + }{\vspace{0.25\nbs}}{}% + \end{textblock*}% + \vspace{\@fixlines\nbs}% + \nov@AfterGroup\NoIndentAfterThis% etextools and noindentafter +} +%% + + +% +\newcommand\ChapterTitle[2][c]{% optional alignment l, c, r + \vspace{0.5\nbs}\addtocounter{@linequarter}{2} + \@csalignokfalse% + \ifthenelse{\equal{#1}{l}}{\let\@csalign\relax\@csalignoktrue}{} + \ifthenelse{\equal{#1}{c}}{\let\@csalign\centering\relax\@csalignoktrue}{} + \ifthenelse{\equal{#1}{r}}{\let\@csalign\hfill\relax\@csalignoktrue}{} + \if@csalignok\else% + \ClassError{novel}{Chapter Title, Deco, Subtitle align must be l, c, or r}% + {On page \thepage you wrote a Chapter command with alignment^^J% + other than the allowed l, c, or r.}% + \fi% + {\@csalign\stake\smash{{\chapterfont #2}}\par}% +} +% +\newcommand\ChapterSubtitle[2][c]{% optional alignment l, c, r + \vspace{0.25\nbs}\addtocounter{@linequarter}{1} + \@csalignokfalse% + \ifthenelse{\equal{#1}{l}}{\let\@csalign\relax\@csalignoktrue}{} + \ifthenelse{\equal{#1}{c}}{\let\@csalign\centering\relax\@csalignoktrue}{} + \ifthenelse{\equal{#1}{r}}{\let\@csalign\hfill\relax\@csalignoktrue}{} + \if@csalignok\else% + \ClassError{novel}{Chapter Title, Deco, Subtitle align must be l, c, or r}% + {On page \thepage you wrote a Chapter command with alignment^^J% + other than the allowed l, c, or r.}% + \fi% + {\@csalign{\stake\smash{\subchfont #2}}\par}% +} +% In ChapterDeco, a trick is used. Instead of two optional arguments, and +% instead of using expl3 syntax to create different argument delimiters, +% the arguments for alignment and scale are passed as a single option. +% This works because one is a letter, and the other is a number. +% So it is easy to separte them by parsing. +\newcommand\ChapterDeco[2][c1]{% optional alignment and scale, either order + \StrDel{#1}{ }[\temp@cds]% may use space separator + \StrDel{\temp@cds}{,}[\temp@cd]% may use comma separator + \IfSubStr{#1}{l}{% + \let\@csalign\relax\@csalignoktrue% + \StrDel{\temp@cd}{l}[\temp@cd]% + }{}% + \IfSubStr{#1}{c}{% + \let\@csalign\centering\relax\@csalignoktrue% + \StrDel{\temp@cd}{c}[\temp@cd]% + }{}% + \IfSubStr{#1}{r}{% + \let\@csalign\hfill\relax\@csalignoktrue% + \StrDel{\temp@cd}{r}[\temp@cd]% + }{}% + \if@csalignok\else% + \let\@csalign\centering\relax\@csalignoktrue% + \fi% + \IfEndWith{\temp@cd}{.}{\StrSubstitute{\temp@cd}{.}{.0}[\temp@cd]}{}% + \IfBeginWith{\temp@cd}{.}{\StrSubstitute{\temp@cd}{.}{1.}[\temp@cd]}{}% + \IfDecimal{\temp@cd}{\def\@thisScale{\temp@cd}}{\def\@thisScale{1}}% + {\@csalign\charscale[\@thisScale,0pt,0.2\nbs]{#2}\par}% +} +% +%% + + +%% \Epigraph[align,scale,width]{text} +%% Not to be confused with lowercase \epigraph from package of same name. +%% +% \Epigraph takes one optional argument, which will be parsed for +% comma-separated values. You may use one, two, or all three values. +% First value is l, c, or r. Position of Epigraph in the textblock. Default c. +% If l or c, the text within the Epigraph is either left-aligned or justified, +% depending on whether the third value is given. Note that value c does not +% center each line of the Epigraph; if that is what you want, then simply +% use the centering command. If first value is r, text is right-aligned. +% Second value, if given, changes the text size and internal baseline skip. +% Thus, the text will go off-grid, but that's OK for the purpose. +% The second value is a number, being scale relative to normal font size. +% Default is 1. A good value for chapter displays might be around 0.92, +% equivalent to about 1pt smaller text size (and skip) than normal. +% A front page, near the book title, might use a value greater than 1. +% If no third value is given, the macro uses the tabular environment to set +% ragged text at its natural width. Good for verse in particular. +% If a third value is given, it must be a number that does not exceed 1. +% This is the portion of textwidth that will be used. Within the Epigraph, +% text will be justified to the specified width. So, for example, using 0.5 +% creates a justified Epigraph as half the textwidth. Its position will be +% determined by the first value, l, c, or r. +% The mandatory text argument is the Epigraph, as well as its attribution. +% More than one paragraph is permitted. +% Use ordinary \\ and \par for breaks. You will need to use either \par +% or \\\par before the attribution. Use \hfill to shift the attribution to +% the right edge of the Epigraph. +% The text may be styled with the usual simple commands such as \emph{}. +% There is no provision for a horizontal line. +% If used on a stand-alone page, or in the ChapterDisplay environment, +% then the vertical extent of the Epigraph does not much matter. +% If mingled with main text (not recommended) you may have to correct +% the line grid using some amount of \vspace{}. That's your problem. +% +\newcommand\Epigraph[2][c]{% note capital E + \StrDel{#1}{ }[\@onens] + \StrCut{\@onens}{,}{\@onealigna}{\@onemore} + \StrCut{\@onemore}{,}{\@onefsa}{\@onewsa} + \ifthenelse{\equal{\@onealigna}{c}\OR\equal{\@onealigna}{}}{\def\@onealign{c}}{\def\@onealign{\@onealigna}} + \ifthenelse{\equal{\@onealign}{c}\OR\equal{\@onealign}{l}\OR\equal{\@onealign}{r}}{}{% + \ClassError{novel}{Wrong syntax in \string\epigraph\space on page \string\thepage}% + {Optional argument of \string\epigraph\space must begin with l, c, or r.}% + } + \IfEndWith{\@onefsa}{.}{\StrGobbleRight{\@onefsa}{1}[\@onefsb]}{\def\@onefsb{\@onefsa}} + \IfEndWith{\@onewsa}{.}{\StrGobbleRight{\@onewsa}{1}[\@onewsb]}{\def\@onewsb{\@onewsa}} + \ifthenelse{\equal{\@onefsb}{}}{\def\@onefs{1}}{\def\@onefs{\@onefsb}} + \IfDecimal{\@onefs}{}{% + \ClassError{novel}{Wrong syntax in \string\epigraph\space on page \string\thepage}% + {Optional argument of \string\epigraph\space cannot be parsed for number(s).}% + } + \ifthenelse{\equal{\@onewsb}{}}{\def\@onews{-1}}{\def\@onews{\@onewsb}} + \IfDecimal{\@onews}{}{% + \ClassError{novel}{Wrong syntax in \string\epigraph\space on page \string\thepage}% + {Optional argument of \string\epigraph\space cannot be parsed for number(s).}% + } + % + \ifthenelse{\equal{\@onews}{-1}}{% ragged text, no particular width + \begin{parascale}[\@onefs] + \ifthenelse{\equal{\@onealign}{c}}{\begin{center}\begin{tabular}{l}}{}% + \ifthenelse{\equal{\@onealign}{l}}{\begin{tabular}{l}}{}% + \ifthenelse{\equal{\@onealign}{r}}{\hfill\begin{tabular}{r}}{}% + \ifvmode\else\unskip\fi#2\par + \ifthenelse{\equal{\@onealign}{r}}{\end{tabular}}{}% + \ifthenelse{\equal{\@onealign}{l}}{\end{tabular}}{}% + \ifthenelse{\equal{\@onealign}{c}}{\end{tabular}\end{center}}{}% + \end{parascale}\par + }{% justified text at specified width fraction + % + \newlength\@thistw + \setlength\@thistw{\@onews\textwidth} + \newlength\@exctw + \setlength\@exctw{\textwidth} + \addtolength\@exctw{-\@thistw} + % + \ifthenelse{\equal{\@onealign}{l}}{% + \begin{adjustwidth}{0pt}{\@exctw} + \setlength\parindent{0pt} + \ifvmode\else\unskip\fi#2\par + \end{adjustwidth}\par + }{} + % + \ifthenelse{\equal{\@onealign}{r}}{% + \begin{adjustwidth}{\@exctw}{0pt} + \setlength\parindent{0pt} + \ifvmode\else\unskip\fi#2\par + \end{adjustwidth}\par + }{} + % + \ifthenelse{\equal{\@onealign}{c}}{% + \begin{adjustwidth}{0.5\@exctw}{0.5\@exctw} + \setlength\parindent{0pt} + \ifvmode\else\unskip\fi#2\par + \end{adjustwidth}\par + }{} + % + }% end ifthenelse + % +} % end \Epigraph +%% +\providecommand\epigraph{% to avoid confusion with epigraph package + \ClassError{novel}{No command \string\epigraph. Try \string\Epigraph}% + {The `novel' built-in \string\Epigraph\space command uses capital E.}% +} +%% + + +%% \QuickChapter[line style]{text} intended for a story consisting of numerous +% short chapters without page breaks. Two blank lines are inserted. In the gap +% is the text, using subchfont. Optional line follows using \bigemdash style. +% If option is empty, no line. If a length, then the line is that length. +% If option * then the line fills to end of text line. +\newlength\@tempscfx% +\newcommand\QuickChapter[2][]{% + \null% + \def\@qctweak{0.3} % raise above grid, em of subchfont + \noindent{\subchfont\charscale[1,0pt,\@qctweak em]{#2}% + \setlength\@tempscfx{\heightof{x}}% + \global\@tempscfx=\@tempscfx% + }% end subchfont + \def\@tempscfxnum{\strip@pt\@tempscfx}% + \def\nxhnum{\strip@pt\normalxheight}% + \FPdiv{\@qclineth}{\@tempscfxnum}{\nxhnum}% scale of subchfont + \FPmul{\@howthick}{\@qclineth}{0.049}% typical emdash thickness, em. + \FPadd{\@howraise}{\@qctweak}{0.23}% typical emdash height em raised. + \FPmul{\@howraise}{\@howraise}{\@qclineth}% + \def\@tempscfxnum{\strip@pt\@tempscfx}% + \ifthenelse{\equal{#1}{} \OR \equal{#1}{ }}{}{% no line, else: + \ifthenelse{\equal{#1}{*}}{% line fills: + ~\leaders\hbox{\smash{\rule[\@howraise em]{1pt}{\@howthick em}}}\hfill\stake\par% + }{% else line at specific length: + ~\makebox[#1][l]{\leaders\hbox{\smash{\rule[\@howraise em]{1pt}{\@howthick em}}}\hfill}% + }% + }% + \NoIndentAfterThis% +} % end \QuickChapter +%% + + + + +% +%% End of file `novel-ChapterScene.sty'. + + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-FOGRA39.clo b/Master/texmf-dist/tex/lualatex/novel/novel-FOGRA39.clo new file mode 100644 index 00000000000..64536e5345d --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-FOGRA39.clo @@ -0,0 +1,14 @@ +% Typically used in Europe. Novel file version 1.0.6 + +% The values of the arguments are public industry standards. + +% Remember: TeX special characters must be backslashed here. +% You may see % or # or _ in the data or file names. +% Be sure that they are written as \% \# \_ or there will be trouble. + +\gdef\@OIidentifier{FOGRA39} % also called "reference name" +\gdef\@OIcondition{Offset commercial and specialty printing according to ISO 12647-2:2004 / Amd 1, paper type 1 or 2 (gloss or matte coated offset, 115 g/m2), screen frequency 60/cm.} +\gdef\@OIinfo{Coated FOGRA39 (ISO 12647-2:2004)} +\gdef\@OIregistry{http://www.color.org} +\gdef\@OIprofile{CoatedFOGRA39.icc} + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-FileData.sty b/Master/texmf-dist/tex/lualatex/novel/novel-FileData.sty new file mode 100644 index 00000000000..86df6b85e6f --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-FileData.sty @@ -0,0 +1,176 @@ +%% +%% This is file `novel-FileData.sty', part of class `novel'. +%% Copyright 2017 Robert Allgeyer. +%% +%% +%% This file may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% +\ProvidesFile{novel-FileData.sty}% +[2017/03/01 v1.0.6 LaTeX file (File Data settings)] +%% + + +%% FILE DATA (see class documentation for technical meaning of this term). +%% ----------------------------------------------------------------------------- +%% +% \title{} or \SetTitle{} +% Must be used immediately after \documentclass[options]{novel}. +% Copied to metadata at end of preamble, unless not set or over-ridden. +% May be over-ridden in metadata using \metatitle{}. +% May be re-set in body, but not in metadata. +% Provides \thetitle anywhere. +% If not set, PDF cannot conform to PDF/X. +\gdef\SetTitle#1{\gdef\@title{#1}} % for stylistic consistency +\gdef\title#1{\gdef\@title{#1}} +\gdef\thetitle{\@title} +\gdef\theTitle{\@title} +\title{} +% +% \author{} or \SetAuthor{} +% Copied to metadata at end of preamble, unless not set or over-ridden. +% May be over-ridden in metadata using \metaauthor{}. +% May be re-set in body, but not in metadata. +% Provides \theauthor anywhere. +\gdef\SetAuthor#1{\gdef\@author{#1}} % for stylistic consistency +\gdef\author#1{\gdef\@author{#1}} +\gdef\theauthor{\@author} +\gdef\theAuthor{\@author} +\author{} +% +% \subtitle{} or \SetSubtitle{} (if any) +% Not copied to metadata by itself, as there is no such metadata entry. +% May appear in metadata along with title, using \metatitle{}. See below. +% May be re-set in body. +% Provides \thesubtitle anywhere. +\gdef\SetSubtitle#1{\gdef\@subtitle{#1}} % for stylistic consistency +\gdef\subtitle#1{\gdef\@subtitle{#1}} +\gdef\thesubtitle{\@subtitle} +\gdef\theSubtitle{\@subtitle} +\subtitle{} +% +% \SetApplication{} (rarely used) +% Also known as CreatorTool. +% Name of the software that created the source document. +% Changing this does not change the software, it just changes the name. +% Normally leave as default, but can change if urgent. +\gdef\SetApplication#1{\gdef\@novelApplication{#1}} +\SetApplication{LaTeX with novel and microtype} % default +% +% \SetProducer{} (rarely used) +% Name of the software that compiles to source to make PDF. +% Changing this does not change the software, it just changes the name. +% Normally leave as default, but can change if urgent. +\gdef\SetProducer#1{\gdef\@novelProducer{#1}} +\SetProducer{LuaTeX with novel-pdfx and hyperref} % default +% +% Although some other data fields could have been added, +% they do not pertain to fiction, especially if your book is print-on-demand. +% No need to set copyright in metadata, since your book is only for use by +% the print service, and is not being distributed as a PDF e-book. +% Your copyright notice is on the printed page, where it should be. +% Particularly note that your print service is NOT the publisher: YOU are! +% +%% End file data. + + +%% SET PDF/X ARGUMENTS +%% ----------------------------------------------------------------------------- +%% Arguments: [embed-icc or no-embed]{compliance standard}{output intent} +%% Default option is no-embed. +%% When this command is not used, it is equivalent to compliance `off'. +% +\newif \if@chosenComplianceOK +\newif \if@chosenEmbedOK +\newif \if@gotConformance +\newif \if@noembedicc \@noembedicctrue +\newif \ifpdfx@isOFF \pdfx@isOFFtrue +% These will get meaningful info when an output intent file is loaded: +\gdef\@OIidentifier{} +\gdef\@OIcondition{} +\gdef\@OIinfo{} +\gdef\@OIregistry{} +\gdef\@OIprofile{} +% +%% +\gdef\SetPDFX{\@ifstar\@setpdfxst\@setpdfxns} +\newcommand\@setpdfxst[2][CGATSTR001]{ + \global\@noembediccfalse + \@setpdfx{#1}{#2} +} +\newcommand\@setpdfxns[2][CGATSTR001]{ + \global\@noembedicctrue + \@setpdfx{#1}{#2} +} +% +\newcommand\@setpdfx[2]{ + \ifthenelse{\equal{#2}{off}}{ + \global\pdfx@isOFFtrue + \@chosenComplianceOKtrue + }{} + \ifthenelse{\equal{#2}{X-1a:2001}}{ + \pdfx@isOFFfalse + \@chosenComplianceOKtrue + \gdef\@PDFversion{PDF/X-1} + \gdef\@PDFXversion{PDF/X-1a:2001} + \gdef\@PDFXconformance{PDF/X-1a:2001} + \global\@gotConformancetrue + \global\pdfminorversion=3 + }{} + \ifthenelse{\equal{#2}{X-1a:2003}}{ + \pdfx@isOFFfalse + \@chosenComplianceOKtrue + \gdef\@PDFversion{PDF/X-1} + \gdef\@PDFXversion{PDF/X-1a:2003} + \gdef\@PDFXconformance{PDF/X-1a:2003} + \global\@gotConformancetrue + \global\pdfminorversion=3 + }{} + \ifthenelse{\equal{#2}{X-3:2002}}{ + \pdfx@isOFFfalse + \@chosenComplianceOKtrue + \gdef\@PDFversion{PDF/X-3} + \gdef\@PDFXversion{PDF/X-3:2002} + \global\pdfminorversion=3 + }{} + \ifthenelse{\equal{#2}{X-3:2003}}{ + \pdfx@isOFFfalse + \@chosenComplianceOKtrue + \gdef\@PDFversion{PDF/X-3} + \gdef\@PDFXversion{PDF/X-3:2003} + \global\pdfminorversion=4 + }{} + \if@chosenComplianceOK\else + \ClassError{novel}{Bad compliance argument for \string\SetPDFX}% + {Choose: off, X-1a:2001, X-1a:2003, X-3:2002, X-3:2003.^^J}% + \fi + % + \ifpdfx@isOFF\else % Output Intent ignored if compliance is `off'. + % Grab the file that defines the output intent information: + \makeatletter % Apparently needed when non-*.sty is input within a command! + \IfFileExists{novel-#1.clo}{\input{novel-#1.clo}}{ + \ClassError{novel}{Bad Output Intent argument for \string\SetPDFX}% + {Use filename (without~extension) of a file with *.clo~extension. ^^J% + Filename must begin with novel- ^^J% + The file must be where TeX can find it. Or use standard code: ^^J% + CGATSTR001, FOGRA39, JC200103.}% + } + \makeatother % back to usual + \fi +} % end \@setpdfx +% + +%% + + + +%% +%% End of file `novel-FileData.sty'. + + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-FontDefaults.sty b/Master/texmf-dist/tex/lualatex/novel/novel-FontDefaults.sty new file mode 100644 index 00000000000..72426d40435 --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-FontDefaults.sty @@ -0,0 +1,261 @@ +%% +%% This is file `novel-FontDefaults.sty', part of class `novel'. +%% Copyright 2017 Robert Allgeyer. +%% +%% +%% This file may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% +\ProvidesFile{novel-FontDefaults.sty}% +[2017/03/01 v1.0.6 LaTeX file (default fonts)] +%% + + +%% +%% This file is loaded \AtEndPreamble. +%% +%% Most TeX installations will use Latin Modern or Computer Modern +%% as default fonts. These are unsuitable for commercial fiction. +%% But `novel' class uses Libertinus as defaults. +%% Change them using \SetMasterFont and other fontspec commands, in Preamble. +% Libertinus Serif has Regular, Italic, Bold, Bold Italic. +% Here, Semibold over-rides Bold. +% +%% Now to activate the font definitions: +% +\defaultfontfeatures{} % reset +% +% The mono font: +\defaultfontfeatures[\ttfamily]{% mono font has no kerning or common ligatures + SmallCapsFeatures={Renderer=Basic},Ligatures=TeX,% +}% +\ifthenelse{\equal{\ttdefault}{lmtt} \OR \equal{\ttdefault}{cmtt}}{ % over-ride: + \IfFontExistsTF{Libertinus Mono}{ + \setmonofont[% + ItalicFont={},% Doesn't have these. + BoldFont={},% + BoldItalicFont={},% + ]{Libertinus Mono} + }{ + \IfFontExistsTF{Linux Libertine Mono O}{ + \setmonofont{Linux Libertine Mono O} + }{ + \setmonofont{Latin Modern Mono}% Eeek! Only because you have it! + } + } +}{} % User \setmonofont, so leave alone. +% +%% +\defaultfontfeatures{} % reset +% Main and sans fonts use kerning, ligatures, and OldStyle numbers if available: +\defaultfontfeatures[\rmfamily,\sffamily]{% + SmallCapsFeatures={Renderer=Basic},Kerning=On,Numbers=OldStyle,% + Ligatures=Common,Ligatures=TeX,% +}% +% The sans font: +\ifthenelse{\equal{\sfdefault}{lmss} \OR \equal{\sfdefault}{cmss}}{ % over-ride: + \IfFontExistsTF{Libertinus Sans}{ + \setsansfont{Libertinus Sans} + }{ + \IfFontExistsTF{Linux Biolinum O}{ + \setsansfont{Linux Biolinum O} + }{ + \setsansfont{Latin Modern Sans}% Eeek! Only because you have it! + } + } +}{} % User \setsansfont, so leave alone. +%% +% At this point, if \rmdefault is something other than lmr or cmr, it probably +% means that the user issued \setmainfont. But that's ineffective in this +% class, because it will be over-written. Use \SetMasterFont instead: +\ifthenelse{\equal{\rmdefault}{lmr} \OR \equal{\rmdefault}{cmr}}{}{% + \ClassWarning{novel}{^^JDid you use \string\setmainfont\space in Preamble?^^J% + The \string\setmainfont\space command is ineffective in `novel' class.^^J% + Use \string\SetMasterFont\space instead. This Warning may be spurious if^^J% + you have an unusual configuration for your TeX installation.^^J}% +}% +% The masterfont: +\if@masterfontset\else + \IfFontExistsTF{Libertinus Serif}{ + \SetMasterFont[% + BoldFont=libertinusserif-semibold.otf,% + BoldItalicFont=libertinusserif-semibolditalic.otf,% + ]{Libertinus Serif} + }{ + \IfFontExistsTF{Linux Libertine O}{ + \SetMasterFont[% + BoldFont=LinLibertine_RZ.otf,% + BoldItalicFont=LinLibertine_RZI.otf,% + ]{Linux Libertine O} + }{ + \SetMasterFont[% + SmallCapsFont={Latin Modern Roman Caps}% + ]{Latin Modern Roman}% Eeek! Only because you have it! + \let\scshape\oldscshape % or small caps won't work + \let\smcp\oldscshape % ditto + } + } +\fi +% Now we are ready to set the main font: +\setmainfont[\@masterfontfeatures]{\@masterfontname} +% +%% +\defaultfontfeatures{} % reset +% The novel-specific display fonts use these defaults: +\defaultfontfeatures{% + SmallCapsFeatures={Renderer=Basic},Kerning=On,% + Ligatures=TeX,Ligatures=CommonOff,Numbers=Lining,% +}% +% The novel-specific fonts: +\if@chapterfontset\else + \SetChapterFont[\@masterfontfeatures,Scale=1.6]{\@masterfontname} +\fi +\newfontfamily\chapterfont[\@chapterfontfeatures]{\@chapterfontname} +% +\if@subchfontset\else + \SetSubchFont[\@masterfontfeatures,Scale=1.2]{\@masterfontname} +\fi +\newfontfamily\subchfont[\@subchfontfeatures]{\@subchfontname} +% +\newif \if@headfontdefault +\if@headfontset\else + \SetHeadFont[\@masterfontfeatures,Scale=0.92]{\@masterfontname} + \global\@headfontdefaulttrue +\fi +\newfontfamily\headfont[\@headfontfeatures]{\@headfontname} +%% +\defaultfontfeatures{} % reset +\defaultfontfeatures{% for decofont + SmallCapsFeatures={Renderer=Basic},Kerning=On,Ligatures=TeX,% +}% +%% The decofont must be NovelDeco.otf or a user modification of that font: +\if@decofontset\else + \IfFontExistsTF{NovelDeco.otf}{ + \SetDecoFont{NovelDeco} + }{} +\fi +%% +\gdef\acronym#1{#1}% Re-defined below, if decofont available. +%% +%% Now to get the decofont activated: +% Decorative glyphs, only in this font. Should not be re-set by user: +\gdef\decoglyph#1{~} % If NovelDeco not found, non-breaking space in main text. +% +\if@gotdeco % NovelDeco or a user-defined alternative was found: + \newfontface\@decoglyph[% + \@decofontfeatures,% + ]{\@decofontname} + \newfontface\@decoglypha[% + \@decofontfeatures,RawFeature=+ss01,% + ]{\@decofontname} + \newfontface\@decoglyphb[% + \@decofontfeatures,RawFeature=+ss02,% + ]{\@decofontname} + \newfontface\@decoglyphc[% + \@decofontfeatures,RawFeature=+ss03,% + ]{\@decofontname} + % + \gdef\decoglyph#1{% Be sure to use % without preceding space: + \IfBeginWith{#1}{s}{% numeral superscript + \StrBehind{#1}{s}[\@tempdecoglyph]{\@decoglyph{#1}}% + }{}% + \IfBeginWith{#1}{r}{% regular weight symbol + \StrBehind{#1}{r}[\@tempdecoglyph]{\@decoglyph\symbol{\@tempdecoglyph}}% + }{}% + \IfBeginWith{#1}{l}{% light weight symbol + \StrBehind{#1}{l}[\@tempdecoglyph]{\@decoglypha\symbol{\@tempdecoglyph}}% + }{}% + \IfBeginWith{#1}{e}{% extra light weight symbol + \StrBehind{#1}{e}[\@tempdecoglyph]{\@decoglyphb\symbol{\@tempdecoglyph}}% + }{}% + \IfBeginWith{#1}{t}{% thin weight symbol + \StrBehind{#1}{t}[\@tempdecoglyph]{\@decoglyphc\symbol{\@tempdecoglyph}}% + }{}% + }% end gdef decoglyph + % + % The trouble with acronyms is that they look too big in regular capitals, + % and too small in small caps. Command \acronym{} tries to provide an + % intermediate size. The letters were drawn from Linux Libertine, scaled, + % weights adjusted, the placed in NovelDeco.otf. + \gdef\acronym#1{{\decofont{#1}}} + % +\fi% end \if@gotdeco +% +%% +% Any other fonts will use these defaults: +\defaultfontfeatures{} % reset +% The novel-specific display fonts use these defaults: +\defaultfontfeatures{% + SmallCapsFeatures={Renderer=Basic},% + Ligatures=TeX,% +}% +% +%% + + +% Get rid of previously-defined fake polyglossia commands, +% but you can still use \setkeys from that package: +\let\SetMainLanguage\relax +\let\SetDefaultLanguage\relax +\let\SetOtherLanguage\relax +\let\SetOtherLanguages\relax +\let\setmainlanguage\relax +\let\setdefaultlanguage\relax +\let\setotherlanguage\relax +\let\setotherlanguages\relax +% Now that the basic fonts are defined, we can load these packages: +\RequirePackage{polyglossia} % Instead of babel. +% +\ifthenelse{\equal{\@setmainlang}{}}{ + \setmainlanguage{english} +}{ + \ifthenelse{\equal{\@setmainlangopt}{}}{ + \setmainlanguage{\@setmainlang} + }{ + \setmainlanguage[\@setmainlangopt]{\@setmainlang} + } +} +\ifthenelse{\equal{\@setotherlang}{}}{}{ + \ifthenelse{\equal{\@setotherlangopt}{}}{ + \setotherlanguage{\@setotherlang} + }{ + \setotherlanguage[\@setotherlangopt]{\@setotherlang} + } +} +\ifthenelse{\equal{\@setotherlangs}{}}{}{ + \ifthenelse{\equal{\@setotherlangsopt}{}}{ + \setotherlanguages{\@setotherlangs} + }{ + \setotherlanguages[\@setotherlangsopt]{\@setotherlangs} + } +} +%% This provides default microtype settings, allows the user to over-ride, and +% hopefully prevents the user from choosing inappropriate settings: +\let\microtypesetup\relax % fake command no longer needed +\if@setmicrotype % user wrote \microtypesetup{} in Preamble + \IfSubStr{\@mymicrotypesetup}{config}{% user specified own config file + \gdef\@mymicrotypeset{\@mymicrotypesetup} + }{ % default to novel's config file + \gdef\@mymicrotypeset{% + config=novel-microtype,\@mymicrotypesetup} + } +\else % user did not write \microtypesetup{} in Preamble + \gdef\@mymicrotypeset{% + config=novel-microtype,stretch=20,shrink=20} +\fi +\RequirePackage[\@mymicrotypeset,final,tracking]{microtype} +% +%% + + + +% +%% End of file `novel-FontDefaults.sty' + + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-Footnotes.sty b/Master/texmf-dist/tex/lualatex/novel/novel-Footnotes.sty new file mode 100644 index 00000000000..4cdec984649 --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-Footnotes.sty @@ -0,0 +1,268 @@ +%% +%% This is file `novel-Footnotes.sty', part of class `novel'. +%% Copyright 2017 Robert Allgeyer. +%% +%% +%% This file may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% +\ProvidesFile{novel-Footnotes.sty}% +[2017/03/01 v1.0.6 LaTeX file (commands for footnotes and endnotes)] +%% + + +%% FOOTNOTES +%% ----------------------------------------------------------------------------- +% In `novel' class, you may place footnotes at the botom of the textblock. +% The markers may be symbolic (default begins with asterisk), or +% set so that the asterisk is not used, or the markers may be numbers, +% If symbolic, they will be automatically reset by ChapterDisplay. +% You can manually reset them at any time. +% You can also make a non-marked footnote, which does not increment the count. + + + +%% footnotesize is calculated by layout, based on normal font size and skip. +%% It is used only for actual footnotes! + +% +\newcounter{@fnsymbolcount} % counter, footenote symbolic markers + \setcounter{@fnsymbolcount}{1} +\newcounter{@fnnumbercount} % counter, footnote numerical markers + \setcounter{@fnnumbercount}{1} +\newcounter{@rnnumbercount} % counter, endnote markers (always numerical) + \setcounter{@rnnumbercount}{1} +\newcounter{@maxfnsymbol} % max footnote symbol count before recycle +% +\gdef\ResetFootnote{% symbols or numbers + \setcounter{@fnsymbolcount}{1}% + \setcounter{@fnnumbercount}{1}% +} +\gdef\ResetFootnoteSymbol{\setcounter{@fnsymbolcount}{1}} % only symbols +\gdef\Resetendnote{\setcounter{@rnnumbercount}{1}} +% +\newtoggle{@usenomark} % when true: no mark, no increment count +\newtoggle{@placedfootnotenumber} % true if any numerical footnote placed +% +\let\my@oldfootnote\footnote\relax % copies the original definition +\let\footnote\relax % so it can be re-defined, below +% +\gdef\@fourem{% length of rule separating footnotes from main text + \vspace{-\nbs} + \noindent\strut\smash{\rule[-2pt]{0.33\textwidth}{0.05\normalFontSize}} +} +\let\footnoterule\@fourem +% + + +% \@makefnmark applies to the footnote marker in the flow of main text: +\gdef\@makefnmark{\iftoggle{@usenomark}{}{\@getfnmark}} +% +\long\gdef\@makefntext#1{% the actual footnote, at bottom of textblock + \iftoggle{@usenomark}% + {\forceindent#1}% + {\forceindent\@getbotfnmark\,#1}% +} % end \@makefntext +% Now re-define \footnote: +\newcommand\footnote[2][]{% + \ifthenelse{\equal{#1}{0}}{% + \global\toggletrue{@usenomark}% + }{% + \global\togglefalse{@usenomark}% + }% + \gdef\footnoterule{\@fourem}% + \begingroup% + \def\footnotesize{% Not gdef. Only here in footnote. Calculated during layout. + \@setfontsize\footnotesize{\@myfootnotesizenum pt}{\@myfootnoteskipnum pt}% + }% + \unskip\my@oldfootnote{#2}% + \endgroup% +} % end \footnote +% +% \@rollfnsymbol prevents running out of symbolic markers: +\gdef\@rollfnsymbol{% + \stepcounter{@fnsymbolcount}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{\value{@maxfnsymbol}}}{% + \setcounter{@fnsymbolcount}{1}% + }{}% +} % end \@rollfnsymbol +% +% \@getfnmark places a footnote marker in the running text. +% The marker depends upon whether it should be a number or a symbol. +% If the latter, then it depends on whether the symbols include asterisks. +% And, it depends upon the current count for that type of marker. +\gdef\@getfnmark{% + \iftoggle{@usesymbolmark}% + {% + \global\togglefalse{@placedfootnotenumber}% + \ifthenelse{\equal{\@myfnsymbols}{*}}{% + \ifthenelse{\equal{\value{@fnsymbolcount}}{1}}{\charscale[1,0pt,-\@twast]{*}}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{2}}{\charscale[0.8,0pt,-\@twdag]{†}}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{3}}{\charscale[0.8,0pt,-\@twdbldag]{‡}}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{4}}{\charscale[0.8,0pt,-\@twsect]{§}}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{5}}{\charscale[1,0pt,-\@twast]{**}}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{6}}{\charscale[0.8,0pt,-\@twdag]{††}}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{7}}{\charscale[0.8,0pt,-\@twdbldag]{‡‡}}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{8}}{\charscale[0.8,0pt,-\@twsect]{§§}}{}% + }{}% + \ifthenelse{\equal{\@myfnsymbols}{†}}{% + \ifthenelse{\equal{\value{@fnsymbolcount}}{1}}{\charscale[0.8,0pt,-\@twdag]{†}}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{2}}{\charscale[0.8,0pt,-\@twdbldag]{‡}}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{3}}{\charscale[0.8,0pt,-\@twsect]{§}}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{4}}{\charscale[0.8,0pt,-\@twdag]{††}}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{5}}{\charscale[0.8,0pt,-\@twdbldag]{‡‡}}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{6}}{\charscale[0.8,0pt,-\@twsect]{§§}}{}% + }{}% + }{% + \global\toggletrue{@placedfootnotenumber}% + \sups{\arabic{@fnnumbercount}}% + }% +} % end \@getfnmark +% +% \@getbotfnmark places the marker in front of the actual footnote, +% towards the bottom of the textblock. It duplicates the marker used in +% running text, but is not elevated. Then, it increments the relevant count. +% Note that (unlike some other TeX document classes) this marker is at +% the indent, so that the footnote text is farther inward than the indent. +% This is the preferred style. +\gdef\@getbotfnmark{% + \iftoggle{@usesymbolmark}% + {% + \ifthenelse{\equal{\@myfnsymbols}{*}}{% + \ifthenelse{\equal{\value{@fnsymbolcount}}{1}}{*}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{2}}{†}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{3}}{‡}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{4}}{§}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{5}}{**}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{6}}{††}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{7}}{‡‡}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{8}}{§§}{}% + }{}% + \ifthenelse{\equal{\@myfnsymbols}{†}}{% + \ifthenelse{\equal{\value{@fnsymbolcount}}{1}}{†}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{2}}{‡}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{3}}{§}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{4}}{††}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{5}}{‡‡}{}% + \ifthenelse{\equal{\value{@fnsymbolcount}}{6}}{§§}{}% + }{}% + \@rollfnsymbol% + }{% + \textrm{\arabic{@fnnumbercount}.}% + \stepcounter{@fnnumbercount}% + }% +} %end \@getbotfnmark +% +%% end footnotes + + +%% ENDNOTES +%% ----------------------------------------------------------------------------- +% \endnote only places a marker. It does not store a note for later use. +% The \memo{} command is helpful, to make a non-printing note to yourself. +% Whenever \endnote is used, the marker number and page is added to a list, +% and the list is typed into the log file after the document ends. That way, +% you can hunt down where the endnotes markers were placed. +\newtoggle{@gotendnotes} % true when \endnote used +% +\long\gdef\@endnotelist{} +\newcounter{@endnotecount} +% +\DeclareDocumentCommand \endnote { } +{% +\global\toggletrue{@gotendnotes}% +\stepcounter{@endnotecount}\sups{\arabic{@endnotecount}}% +\long\edef\@endnotelist{\@endnotelist\space (\arabic{@endnotecount},p.\thepage)}% +} +%% +% \endnotetext{ID}{text} where ID is (usually) the endnote number. +% If ID is other than space or tilde, it prints at left margin, followed by +% period. Then the entire text is block-indented. Only one paragraph allowed. +% If ID is space or empty, then the entire text is block-indented. This is +% the method for continuing a prior endnote to a new paragraph. The text +% may begin with \forceindent, according to your needs. +\DeclareDocumentCommand \endnotetext { m +m }% xparse allows \end... commands! +{ + \ifthenelse{\equal{#1}{\space}\OR\equal{#1}{}}% + {\noindent\hangindent=\parindent\flexbox{\space}#2\par}% + {\noindent\hangindent=\parindent\flexbox{#1.}#2\par}% +} +%% end endnotes + + + +%% ATBEGINDOCUMENT +%% ----------------------------------------------------------------------------- +%% +\AtBeginDocument{ + \gdef\SetFootnoteMarker#1{% + \typeout{^^JClass `novel' Alert: % + \string\SetFootnoteMarker\space ineffective after Preamble.^^J}% + } + % Must wait for \nbs to be calculated: + \setlength\footnotesep{0.8\nbs} + % Must wait for main font and its size to be active: + \newlength\@hoaring + \setlength\@hoaring{\heightof{Ã…}} + \global\@hoaring=\@hoaring + \newlength\@twast % tweaks asterisk + \setlength\@twast{\heightof{*}} + \addtolength\@twast{-\@hoaring} + \global\@twast=\@twast + \newlength\@twdag % tweaks dagger + \setlength\@twdag{\heightof{†}} + \addtolength\@twdag{-0.2\@twdag} + \addtolength\@twdag{-\@hoaring} + \global\@twdag=\@twdag + \newlength\@twdbldag % tweaks double dagger + \setlength\@twdbldag{\heightof{‡}} + \addtolength\@twdbldag{-0.2\@twdbldag} + \addtolength\@twdbldag{-\@hoaring} + \global\@twdbldag=\@twdbldag + \newlength\@twsect % tweaks section mark + \setlength\@twsect{\heightof{§}} + \addtolength\@twsect{-0.2\@twsect} + \addtolength\@twsect{-\@hoaring} + \global\@twsect=\@twsect + \newlength\@tweight % tweaks 8, reliably the tallest digit + \setlength\@tweight{\heightof{8}}% + \addtolength\@tweight{-0.2\@tweight}% + \addtolength\@tweight{-\@hoaring}% + \global\@tweight=\@tweight% + % Must wait to see how \SetFootnoteMarker was used: + \ifthenelse{\equal{\@myfnsymbols}{*}}{\setcounter{@maxfnsymbol}{8}}{} + \ifthenelse{\equal{\@myfnsymbols}{†}}{\setcounter{@maxfnsymbol}{6}}{} + % +} % end \AtBeginDocument +%% + + +%% ATENDDOCUMENT +%% ----------------------------------------------------------------------------- +%% Write a list of endnote (number,page) into log file, +% and Big Bad Warning if numerical footnotes and endnotes both used: +\AtEndDocument{% + \iftoggle{@gotendnotes}% + {\typeout{^^J^^JClass `novel' Alert: You placed endnotes (number,page):^^J% + \@endnotelist% + ^^J^^J}% + }{} + % + \iftoggle{@placedfootnotenumber}% + {\iftoggle{@gotendnotes}% + {\typeout{^^JClass `novel' BIG BAD WARNING:^^J% + Numbered footnotes and endnotes! Better use symbolic footnotes!^^J^^J}% + }{}% + }{}% +}% end \AtEndDocument +%% + + +%% end of file `novel-Footnotes.sty' + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-HeadFootStyles.sty b/Master/texmf-dist/tex/lualatex/novel/novel-HeadFootStyles.sty new file mode 100644 index 00000000000..8717ac15fa2 --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-HeadFootStyles.sty @@ -0,0 +1,364 @@ +%% +%% This is file `novel-HeadFootStyles.sty', part of class `novel'. +%% Copyright 2017 Robert Allgeyer. +%% +%% +%% This file may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% +\ProvidesFile{novel-HeadFootStyles.sty}% +[2017/03/01 v1.0.6 LaTeX file (header and footer styles)] +%% + + +%% File `novel-LayoutSettings.sty' reserved space for header/footer, +%% but did not place anything there. In this file, `fancyhdr' syntax +%% defines the standard styles. These styles are not activated until +%% \AtEndPreamble, and only if the user did not already define the styles +%% in the Preamble. + + +% @isVerso true = even page, false = odd page. Only accurate during shipout. +% Not to be used in commands that are inserted in main text! +\newif \if@isVerso \@isVersofalse +\def\check@IsVerso{% + \def\my@PageNum{\arabic{page}}% + \FPdiv{\my@HalfPageNum}{\my@PageNum}{2}% + \FPifint{\my@HalfPageNum}% + \global\@isVersotrue% + \else% + \global\@isVersofalse% + \fi% +} +% +\newtoggle{@inheadfoot} % true in header or footer +%% + + +%% INITIALIZE FANCYHDR +%% ----------------------------------------------------------------------------- +%% Before now now, space was reserved for header/footer. +% Start by loading package `fancyhdr' and blanking everything: +\RequirePackage{fancyhdr} + \renewcommand\headrulewidth{0pt} + \renewcommand\footrulewidth{0pt} + \fancyhead[LO,RE,LE,RO,CE,CO]{} + \fancyfoot[LO,RE,LE,RO,CE,CO]{} +% \textls looseness factor (microtype) 0=tight, 50=default +\gdef\SetLooseHead#1{ + \gdef\@loosehead{#1} + \FPmin{\@looseheadnum}{\@loosehead}{50} % Don't want numbers too loose. +} +\SetLooseHead{50} + +% Create flags to know if \fancyhead and \fancyfoot have been defined by user, +% somewhere in the Preamble. If not, then pre-defined styles based on trimsize +% will be applied \AtEndPreamble. +\LetLtxMacro{\@tempFancyhead}{\fancyhead} % from package `letltxmacro' +\renewcommand\fancyhead[2][]{% + \@styledHeadertrue% + \@tempFancyhead[#1]{\toggletrue{@inheadfoot}{\normalsize#2}}% +} +% +\LetLtxMacro{\@tempFancyfoot}{\fancyfoot} +\renewcommand\fancyfoot[2][]{% + \@styledFootertrue% + \FPsub{\@footraise}{\@footjump}{1}% + \FPmul{\@footraise}{-\@footraise}{\Current@BaselineSkipNum}% + \@tempFancyfoot[#1]{% + \toggletrue{@inheadfoot}% + \stake\smash{\raisebox{\@footraise pt}{{\normalsize#2}}}% + }% +} +% +\LetLtxMacro{\@myTempTPS}{\thispagestyle} +% Re-define \thispagestyle based on layout. When style requests only the page +% number, decide what to do based on this command and whether footer is used: +\newif \if@thispagestyleset \@thispagestylesetfalse +\AtBeginShipout{\global\@thispagestylesetfalse} +% +\gdef\thispagestyle#1{% + \global\@thispagestylesettrue% + \gdef\@pagestyleOK{false}% + \ifthenelse{\equal{#1}{fancy}}{% + \gdef\@pagestyleOK{true}% + \@myTempTPS{fancy}% + }{}% + \ifthenelse{\equal{#1}{empty}}{% + \gdef\@pagestyleOK{true}% + \@myTempTPS{empty}% + }{}% + \ifthenelse{\equal{#1}{plain}\OR\equal{#1}{fancyplain}\OR\equal{#1}{footer}}{% + \gdef\@pagestyleOK{true}% + \if@gotFooter \@myTempTPS{fancyplain}% + \else \@myTempTPS{empty}% + \fi% + }{}% + \ifthenelse{\equal{#1}{forcenumber}}{% + \gdef\@pagestyleOK{true}% + \if@gotFooter \@myTempTPS{fancyplain}% + \else \@myTempTPS{fancynumber}% + \fi% + }{}% + % + \ifthenelse{\equal{#1}{dropfolioinside}% after \clearpage + \OR \equal{#1}{dropfolio} \OR \equal{#1}{dropfoliolater}}{% compatibility + \gdef\@pagestyleOK{true}% + \if@gotFooter% + \@myTempTPS{fancyplain}% + \else% + \global\@addCTlinefalse% + \@myTempTPS{empty}% + \@dropfolioinside + \fi% + }{}% + % With `dropfoliobeneath` only a footer is used, if present. If no footer, + % then the styled page number is centered at one baselineskip beneath the + % ordinary bottom of the textblock. Thus, the number intrudes into the + % bottom margin. This is OK if the bottom margin is wider than minimum. + % Whether the margin is wide enough, is for the user to determine, because + % the document class does not know the printer's limitations. + \ifthenelse{\equal{#1}{dropfoliobeneath}}{% after \clearpage + \gdef\@pagestyleOK{true}% + \if@gotFooter% + \@myTempTPS{fancyplain}% + \else% + \@myTempTPS{empty}% + \@dropfoliobeneath + \fi% + }{}% + %% + \ifthenelse{\equal{\@pagestyleOK}{true}}{}{% + \ClassWarning{novel}{^^JPage \pagenumberstyle\space has % + \string\thispagestyle{}^^J% + but its argument is not defined. Default substituted. Better fix that.^^J}% + }% +} +% +%% End initialize fancyhdr. + + + +%% ACTIVATE HEADER/FOOTER STYLES AT BEGIN DOCUMENT +%% ----------------------------------------------------------------------------- +% +\gdef\@activateHeadFootStyles{ % called \AtBeginDocument by novel.cls + % Pre-configured header/footer styles, unless user over-rode them: + % \versoheadtext is initialized to \theauthor + % \rectoheadtext is initialized to \thetitle + \@ifundefined{versoheadtext}{ + \NewVersoHeadText{\smcp{\StrSubstitute{\theauthor}{\space}{~}}} + }{} + \@ifundefined{rectoheadtext}{ + \NewRectoHeadText{\smcp{\StrSubstitute{\thetitle}{\space}{~}}} + }{} + % + % ---------------------------------------------------------------------------- + % IF YOU ARE WRITING YOUR OWN HEADER/FOOTER STYLE: + % Look here for the pre-defined styles, for use as models. + % Note that if you write \fancyhead or \fancyfoot in the Preamble, + % that sets the \@styledHeader flag, so these codes do not over-ride yours. + \ifthenelse{\equal{\my@HeadFootStyle}{1}}{ % default + \if@styledHeader\else + \fancyhead[LE]{\makebox[2.5em][l]{% + {\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}\my@VersoEmblem% + } + \fancyhead[RO]{\my@RectoEmblem\makebox[2.5em][r]{% + {\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}% + } + \fancyhead[CE]{{\headfont\textls[\@loosehead]{\versoheadtext}}} + \fancyhead[CO]{{\headfont\textls[\@loosehead]{\rectoheadtext}}} + \fi + }{} + % + \ifthenelse{\equal{\my@HeadFootStyle}{2}}{ + \if@styledFooter\else + \fancyfoot[LE]{\makebox[2.5em][l]{% + {\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}\my@VersoEmblem% + } + \fancyfoot[RO]{\my@RectoEmblem\makebox[2.5em][r]{% + {\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}% + } + \fi + }{} + % + \ifthenelse{\equal{\my@HeadFootStyle}{3}}{ + \if@styledFooter\else + \fancyfoot[CO,CE]{{% + \headfont\textls[\@looseheadnum]{\pagenumberstyle}}% + } + \fi + }{} + % + \ifthenelse{\equal{\my@HeadFootStyle}{4}}{ + \if@styledHeader\else + \fancyhead[LE]{\makebox[2.5em][l]{% + {\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}% + \my@VersoEmblem\hspace{1em}% + {\headfont\textls[\@loosehead]{\versoheadtext}}% + } + \fancyhead[RO]{{\headfont\textls[\@loosehead]{\rectoheadtext}}% + \hspace{1em}\my@RectoEmblem\makebox[2.5em][r]{{% + \headfont\textls[\@looseheadnum]{\pagenumberstyle}}}% + } + \fi + }{} + % + \ifthenelse{\equal{\my@HeadFootStyle}{5}}{ + \if@styledHeader\else + \fancyhead[CE]{{\headfont\textls[\@loosehead]{\versoheadtext}}} + \fancyhead[CO]{{\headfont\textls[\@loosehead]{\rectoheadtext}}} + \fi + \if@styledFooter\else + \fancyfoot[CO,CE]{% + {\headfont\textls[\@looseheadnum]{\pagenumberstyle}}% + } + \fi + }{} + % + \ifthenelse{\equal{\my@HeadFootStyle}{6}}{ + \if@styledHeader\else + \fancyhead[LE]{\makebox[2.5em][l]{% + {\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}\my@VersoEmblem% + } + \fancyhead[RO]{\my@RectoEmblem\makebox[2.5em][r]{% + {\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}% + } + \fancyhead[RE]{{\headfont\textls[\@loosehead]{\versoheadtext}}} + \fancyhead[LO]{{\headfont\textls[\@loosehead]{\rectoheadtext}}} + \fi + }{} + % + % END PRE-DEFINED STYLES. + % ---------------------------------------------------------------------------- + % + % Substitute for \thispagestyle{plain} + \fancypagestyle{fancyplain}{ % if has footer + \renewcommand\headrulewidth{0pt} + \renewcommand\footrulewidth{0pt} + \fancyhead[LO,RE,LE,RO,CE,CO]{} + \fancyfoot[LO,RE,LE,RO,CE,CO]{} + \fancyfoot[CO,CE]{{\headfont\textls[\@looseheadnum]{\pagenumberstyle}}} + } + % Not a user command, use plain or fancyplain: + \fancypagestyle{fancynumber}{ % if has header but not footer + \renewcommand\headrulewidth{0pt} + \renewcommand\footrulewidth{0pt} + \fancyhead[LO,RE,LE,RO,CE,CO]{} + \fancyhead[LE]{\makebox[2.5em][l]{% + {\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}\my@VersoEmblem% + } + \fancyhead[RO]{\my@RectoEmblem\makebox[2.5em][r]{% + {\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}% + } + \fancyfoot[LO,RE,LE,RO,CE,CO]{} + } + % Now put `fancyhdr' to work: + \pagestyle{fancy} % default unless over-ridden by \thispagestyle{} + % +} % end \@activateHeadFootStyles +% +%% end initialize fancyhdr + + + +%% DROPFOLIO +%% ----------------------------------------------------------------------------- +\newlength\temp@pgnumwidth +\newlength\temp@pgnumraise +% +% \@dropfolioinside reduces the textblock height by one lineskip. At the bottom, +% where the last line would have been, the styled page number is centered. +\newcommand\@dropfolioinside{% + \thispagestyle{empty}% + \enlargethispage{-\nbs} + \setlength\temp@pgnumwidth{% + \widthof{{\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}}% + \if@offcenterTrim% + \setlength\temp@pgnumraise{% + \New@BottomMargin+\New@MediaHeight-\New@TrimHeight}% + \else% + \setlength\temp@pgnumraise{% + \New@BottomMargin+0.5\New@MediaHeight-0.5\New@TrimHeight}% + \fi% + \check@IsVerso% + \if@isVerso% + \AddToShipoutPicture*{\@getPageXY\AtPageLowerLeft{% + \hspace{\dimexpr\Trim@Lx+\New@OutsideMargin+0.5\textwidth-0.5\temp@pgnumwidth}\raisebox{% + \temp@pgnumraise}{{\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}}}% + \else% + \AddToShipoutPicture*{\@getPageXY\AtPageLowerLeft{% + \hspace{\dimexpr\Trim@Lx+\New@InsideMargin-0.5\temp@pgnumwidth}% + \charscale[1,0.5\textwidth,\temp@pgnumraise]{% + {\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}}}% + \fi% +} % end \@dropfolioinside +% +\let\dropfolionow\relax % compatibility with earlier version. +% +% \@dropfoliobeneath does not change the textblock height. The styled page +% number is centered where an extra line would be, within the bottom margin. +\newcommand\@dropfoliobeneath{% + \thispagestyle{empty}% + \setlength\temp@pgnumwidth{% + \widthof{{\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}}% + \if@offcenterTrim% + \setlength\temp@pgnumraise{% + \New@BottomMargin-\nbs+\New@MediaHeight-\New@TrimHeight}% + \else% + \setlength\temp@pgnumraise{% + \New@BottomMargin-\nbs+0.5\New@MediaHeight-0.5\New@TrimHeight}% + \fi% + \check@IsVerso% + \if@isVerso% + \AddToShipoutPicture*{\@getPageXY\AtPageLowerLeft{% + \hspace{\dimexpr\Trim@Lx+\New@OutsideMargin-0.5\temp@pgnumwidth}\raisebox{% + \temp@pgnumraise}{{\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}}}% + \else% + \AddToShipoutPicture*{\@getPageXY\AtPageLowerLeft{% + \hspace{\dimexpr\Trim@Lx+\New@InsideMargin-0.5\temp@pgnumwidth}% + \charscale[1,0.5\textwidth,\temp@pgnumraise]{% + {\headfont\textls[\@looseheadnum]{\pagenumberstyle}}}}}% + \fi% +} % end \@dropfoliobeneath +%% +% +% Content of header text (if present) can be changed at any time within +% the body, using the following commands. If not used, then +% Verso is initialized to \theauthor and Recto is initialized to \thetitle +% AtBeginDocument, with adjustments to interword spacing. +% If you wish, you may write the commands with empty arguments, in which case +% the header still appears with page number (if present), but no text. +% +\newlength\@mykem +% +\gdef\NewVersoHeadText#1{ + \FPdiv{\@myk}{\@loosehead}{500} + \setlength\@mykem{\@myk em} + \gdef\versoheadtext{\gdef~{\kern\@mykem\space}#1\gdef~{\nobreakspace {}}} +} +\let\SetVersoHeadText\NewVersoHeadText\relax % for convenience +\let\RenewVersoHeadText\NewVersoHeadText\relax % for convenience +% +\gdef\NewRectoHeadText#1{ + \FPdiv{\@myk}{\@loosehead}{500} + \setlength\@mykem{\@myk em} + \gdef\rectoheadtext{\gdef~{\kern\@mykem\space}#1\gdef~{\nobreakspace {}}} +} +\let\SetRectoHeadText\NewRectoHeadText\relax % for convenience +\let\RenewRectoHeadText\NewRectoHeadText\relax % for convenience +% +%% end dropfolio. + + + +% +%% End of file `novel-HeadFootStyles.sty' + + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-Images.sty b/Master/texmf-dist/tex/lualatex/novel/novel-Images.sty new file mode 100644 index 00000000000..9a823653d37 --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-Images.sty @@ -0,0 +1,268 @@ +%% +%% This is file `novel-Images.sty', part of class `novel'. +%% Copyright 2017 Robert Allgeyer. +%% +%% +%% This file may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% +\ProvidesFile{novel-Images.sty}% +[2017/03/01 v1.0.6 LaTeX file (image placement)] +%% + + +%% +%% Be sure to read the separate documentation about how to prepare images. +%% In general: (1) png or jpg only. (2) Flattened, no transparency. +%% (3) 300dpi (grayscale) or 600dpi (black/white) are industry norms. +%% (4) Image file must contain its resolution. (5) Exact size, without scaling. +%% (6) No private metadata. (7) Be sure grayscale is 1-channel, not rgb gray. +%% + + + +% \InlineImage[hoffset,voffset]{imagefile.png or jpg} and starred version. +% +% Use hoffset to displace the image horizontally. Positive is to the right. +% Use voffset to displace the image vertically. Positive is upward. +% Can use hoffset by itself, then voffset defaults to 0pt. +% +% The TOP of the image is placed at the baseline of text (unless offset). +% To place image so that its BOTTOM (rather than top) is at the text baseline, +% use voffset b. Can also use b+2em or b-3.4pt etc. without spaces. +% To place image so that its top is as text X height, voffset \heightof{X}. +% +% You can combine lengths, such as: +% voffset 0.2em+\heightof{X} or b-\heightof{Aring}+0.5em +% However, do not begin the string with + or - followed directly by \heightof. +% +% Unstarred command: Image occupies its natural width, so that following text +% (if on same line) is after the image. +% Starred command: Image occupies zero width, so that following text (if on +% the same line) overlays the image. +% In all cases, the image occupies zero height, so that following text lines +% will overlay the image, unless you insert some \null lines. +% In some case, having following text overlay the image is desirable. But talk +% with your print service about that. Not all like it. +% If the image rises above its line of text, it may overlay text on the +% preceding line, which obscures that text. Don't do it. +% +% Clever use of hoffset, with narrowed textblock, can place text beside image. +% +% \imagewidth and \imageheight may be used for offsets, or for any other +% purpose once the image is placed. These lengths retain their values +% until a subsequent image is placed, not including anything in header/footer. +% +\def\Aring{Ã…} % has typical maximum accented character height in Latin-1. +% +\newlength\imagewidth +\newlength\imageheight +\newlength\imagehoffset +\newlength\imagevoffset +\newlength\@imagewidth +\newlength\@imageheight +\newlength\@imagehoffset +\newlength\@imagevoffset +\gdef\imagestarred{false} +\gdef\imagefilename{unknown} +% Neutralize \includegraphics, so it is no longer a user command: +\let\@includegraphics\includegraphics\relax +\let\includegraphics\relax +\newcommand\includegraphics[2][]{ + \ClassError{novel}{Cannot use \string\includegraphics\space on page \thepage} + {The `novel' class has its own commands for placing images. See docs.^^J% + You cannot use the \string\includegraphics\space command.}% +} +% +% \InlineImage can be used in body, header, footer. +% However, macros such as \imagefilename, \imagewidth, etc. +% are only set or re-set when the image in in the body. +% That prevents an intervening header/footer image from over-writing +% values set by the most recent body image. +% The unstarred command occupies the width of the image. +% The starred command occupies zero width. +% +\ExplSyntaxOn +\DeclareDocumentCommand \InlineImage { s O{0pt} m }{% + \newif\if@imgExtOK% + \IfEndWith{#3}{png}{\@imgExtOKtrue}{}% + \IfEndWith{#3}{PNG}{\@imgExtOKtrue}{}% + \IfEndWith{#3}{jpg}{\@imgExtOKtrue}{}% + \IfEndWith{#3}{JPG}{\@imgExtOKtrue}{}% + \IfEndWith{#3}{jpeg}{\@imgExtOKtrue}{}% + \IfEndWith{#3}{JPEG}{\@imgExtOKtrue}{}% + \if@imgExtOK\else% + \ClassError{novel}{^^JImage~`#3'~format~not~allowed}% + {^^JImage~`#3'~has~file~type~not~allowed~in~`novel'~class.^^J% + Must~have~file~extension~png,~jpg,~jpeg~(or~capitalized).^^J% + Others~such~as~pdf~bmp,~tiff,~eps,~pdf,~svg~are~not~allowed.^^J}% + \fi% + \StrDel{#2}{\space}[\@myila]% + \StrCut{\@myila}{,}{\@myilxa}{\@myilya}% + \ifthenelse{\equal{\@myilxa}{} \OR \equal{\@myilxa}{0}}{% + \def\@myilx{0pt}}{\def\@myilx{\@myilxa}% + }% + \ifthenelse{\equal{\@myilya}{} \OR \equal{\@myilya}{0}}{% + \def\@myily{0pt}}{\def\@myily{\@myilya}% + }% + \iftoggle{@inheadfoot}{}{\gdef\imagefilename{#3}}% for possible later use + \gdef\my@graphic{\@includegraphics[draft=false]{#3}}% + \setlength\@imagewidth{\widthof{\my@graphic}}% + \global\@imagewidth=\@imagewidth% + \iftoggle{@inheadfoot}{}{\setlength\imagewidth{\@imagewidth}}% + \setlength\@imageheight{\heightof{\my@graphic}}% + \global\@imageheight=\@imageheight% + \iftoggle{@inheadfoot}{}{% + \setlength\imageheight{\@imageheight}% + \global\imageheight=\imageheight% + \typeout{^^JClass~`novel'~Info:~An~image~was~placed~on~page~\thepage.^^J% + Review~layout~to~ensure~that~it~does~not~overflow~into~margins.^^J}% + }% + \gdef\@imageheightnum{\strip@pt\@imageheight}% + \FPdiv{\@imagelines}{\@imageheightnum}{\nbsnum}% + \FPadd{\@imagelines}{\@imagelines}{0.5}% round up to integer, not down + \FPround{\@imagelines}{\@imagelines}{0}% + \FPclip{\@imagelines}{\@imagelines}% + \iftoggle{@inheadfoot}{}{\gdef\imagelineskip{\@imagelines}}% + % + \setlength\@imagehoffset{\@myilx}% + \IfBeginWith{\@myily}{b}{% + \StrDel[1]{\@myily}{b}[\temp@adjVoffseta]% + \ifthenelse{\equal{\temp@adjVoffseta}{} \OR \equal{\temp@adjVoffseta}{0}}{% + \def\temp@adjVoffset{0pt}}{\def\temp@adjVoffset{\temp@adjVoffseta}% + }% + \setlength\@imagevoffset{\temp@adjVoffset}% + }{% + \setlength\@imagevoffset{-\@imageheight}% + \addtolength\@imagevoffset{\@myily}% + }% + % + \IfBooleanTF{#1}% + % starred: + {% + \iftoggle{@inheadfoot}{}{\gdef\imagestarred{true}}% + \makebox[0pt][l]{% + \hspace{\@imagehoffset}% + \stake\smash{\raisebox{\@imagevoffset}{\my@graphic}}% + }% + }% + % unstarred: + {% + \iftoggle{@inheadfoot}{}{\gdef\imagestarred{false}}% + \hspace{\@imagehoffset}% + \stake\smash{\raisebox{\@imagevoffset}{\my@graphic}}% + }% end IfBooleanTF{#1} + \iftoggle{@inheadfoot}{}{\setlength\imagehoffset{\@imagehoffset}}% + \iftoggle{@inheadfoot}{}{\setlength\imagevoffset{\@imagevoffset}}% +} % end DeclareDocumentCommand \InlineImage +\ExplSyntaxOff +% +%% + + + +%% \BlockImage[alignment]{image}[text] +% Alignment may have up to 3 comma-separated values. Default is [c] +% First alignment: l, c, r (left, center, right). +% Second alignment: x-offset of image (not text). Default 0pt. May use 0. +% Third alignment: y-offset of image (not text). Default 0pt. May use 0. +% Offsets are positive right and up. +% The optional text, if used, must have its opening bracket immediately +% follow the image closing brace, without intervening space. +% Text may have line break or more than one paragraph, and may be styled. +% But any font family change must go outside this command, not within the text. +% The text will begin in the same block of vertical space as the image. +% If image is centered, the text will automatically be centered, so that +% it necessarily overlies the image. +% \forceindent or \backindent may be needed. Text may have several paragraphs. +% Subsequent text (after all that) will clear the image bottom, and also +% be at the baseline grid. Beware of using this command near bottom of page. +\ExplSyntaxOn +\DeclareDocumentCommand \BlockImage { O{c} m +O{} }{ + % Allows empty or blank to be used, and still provide default values: + \ifthenelse{\equal{#1}{}\OR\equal{#1}{\space}}{% + \def\@myargs{c}}{\def\@myargs{#1}% + } + \StrDel{\@myargs}{\space}[\@myargsns] % needs {\space} not { } + \StrCut{\@myargsns}{,}{\@myalign}{\@mycoord} + \StrCut{\@mycoord}{,}{\@myxt}{\@myyt} + \ifthenelse{\equal{\@myxt}{}\OR\equal{\@myxt}{0}}{% + \def\@myx{0pt}}{\def\@myx{\@myxt}% + } + \ifthenelse{\equal{\@myyt}{}\OR\equal{\@myyt}{0}}{% + \def\@myy{0pt}}{\def\@myy{\@myyt}% + } + \newdimen\@sbsheight + \ifthenelse{\equal{\@myalign}{c}\OR\equal{\@myalign}{}}{% + {\centering\InlineImage*[{\@myx-0.5\imagewidth},{\@myy}]{#2}\par} + \vspace{-\nbs} + {\centering #3\par} + \setbox0=\vbox{{\centering #3\par}} + }{} + \ifthenelse{\equal{\@myalign}{r}}{% + \noindent\InlineImage*[{\textwidth-\imagewidth+\@myx},{\@myy}]{#2}\par% + \vspace{-\nbs} + \begin{adjustwidth}{0pt}{\imagewidth+\parindent}% + #3\par% + \end{adjustwidth}% + \setbox0=\vbox{% + \begin{adjustwidth}{0pt}{\imagewidth+\parindent}% + #3\par% + \end{adjustwidth}% + }% + }{} + \ifthenelse{\equal{\@myalign}{l}}{% + \noindent\InlineImage*[{\@myx},{\@myy}]{#2}\par% + \vspace{-\nbs} + \begin{adjustwidth}{\imagewidth+\parindent}{0pt}% + #3\par% + \end{adjustwidth}% + \setbox0=\vbox{% + \begin{adjustwidth}{\imagewidth+\parindent}{0pt}% + #3\par% + \end{adjustwidth}% + }% + }{} + % portion here, inspired by post from user Killian Foth, + % at stackoverflow.com, license CC-by-sa-3.0. + \@sbsheight=\ht0 \advance\@sbsheight by \dp0 + \def\@sbsheightnum{\strip@pt\@sbsheight} + \FPdiv{\@roughlines}{\@sbsheightnum}{\nbsnum} + \FPadd{\@roughlines}{\@roughlines}{0.5} % round up, not down + \FPround{\@roughlines}{\@roughlines}{0} + \FPclip{\@roughlines}{\@roughlines} + \FPadd{\@adjimagelines}{\imagelineskip}{1} % \imagelineskip from \InlineImage* + \FPsub{\@skipme}{\@adjimagelines}{\@roughlines} + \FPmax{\@skipme}{\@skipme}{0} + \vspace{\@skipme\nbs} +} +\ExplSyntaxOff +%% + + + + +% Returns 1 for monochrome, 8 for grayscale (or rgb). EXPERIMENTAL. +% Not documented. Not used as part of any other commands. +\gdef\imagecolordepth{% + \ifthenelse{\equal{\imagefilename}{unknown}}{unknown}{% + \directlua{% + img1=img.scan{filename="\imagefilename"}% + tex.print(tostring(img1.colordepth))% + }% + }% +} +% + + + +%% +%% End of file `novel-Images.sty'. + + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-JC200103.clo b/Master/texmf-dist/tex/lualatex/novel/novel-JC200103.clo new file mode 100644 index 00000000000..5fb491ab202 --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-JC200103.clo @@ -0,0 +1,14 @@ +% Typically used in Japan. Novel file version 1.0.6 + +% The values of the arguments are public industry standards. + +% Remember: TeX special characters must be backslashed here. +% You may see % or # or _ in the data or file names. +% Be sure that they are written as \% \# \_ or there will be trouble. + +\gdef\@OIidentifier{JC200103} % also called "reference name" +\gdef\@OIcondition{Japan Color 2001 Coated: Printing process definition: ISO 12647-2:2004, sheet-fed offset printing, positive plates, paper type 3 (coated, 105 gsm), screen frequency 69/cm.} +\gdef\@OIinfo{Japan Color 2001 Coated} +\gdef\@OIregistry{http://www.color.org} +\gdef\@OIprofile{JapanColor2001Coated.icc} + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-LayoutSettings.sty b/Master/texmf-dist/tex/lualatex/novel/novel-LayoutSettings.sty new file mode 100644 index 00000000000..1de97130d1d --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-LayoutSettings.sty @@ -0,0 +1,805 @@ +%% +%% This is file `novel-LayoutSettings.sty', part of class `novel'. +%% Copyright 2017 Robert Allgeyer. +%% +%% +%% This file may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% +\ProvidesFile{novel-LayoutSettings.sty}% +[2017/03/01 v1.0.6 LaTeX file (layout settings)] +%% + + +%% Note that nearly all layout settings are pre-configured based on Trim Size. +%% In general, these user commands may be used to over-ride the presets. + +\newlength\Old@TrimWidth % finished width of printed book +\newlength\Old@TrimHeight % finished height of printed book +\newlength\New@TrimWidth % Initialized to \Old@TrimWidth. +\newlength\New@TrimHeight % Initialized to \Old@TrimHeight. +\newlength\Old@TopMargin +\newlength\Old@OutsideMargin +\newlength\Old@BottomMargin +\newlength\Old@InsideMargin +\newlength\New@TopMargin +\newlength\New@OutsideMargin +\newlength\New@BottomMargin +\newlength\New@InsideMargin +\newlength\Old@MediaWidth % Defaults to trim width, but can be set larger. +\newlength\Old@MediaHeight % Defaults to trim height, but can be set larger. +\newlength\New@MediaWidth % Initialized to \Old@MediaWidth. +\newlength\New@MediaHeight % Initialized to \Old@MediaHeight. +\newlength\Old@FontSize +% +\gdef\my@HeadFootStyle{1} % default: header but not footer +\gdef\my@VersoEmblem{} % no default emblem +\gdef\my@RectoEmblem{} % no default emblem +\gdef\novel@checkfeatures#1{} % re-defined below +% +\newif \if@TrimSizeSet +\newif \if@MarginsSet +\newif \if@MediaSizeSet +\newif \if@LinesPerPageSet +\newif \if@FontSizeSet +\newif \if@ReworkTrimSet +\newif \if@ReworkMarginsSet +% +\newlength\normalxheight +\newlength\normalXheight +%% + + +%% SIZE-RELATED COMMANDS AVAILABLE IN PREAMBLE. +%% ----------------------------------------------------------------------------- +%% Use if necessary for customization. +%% If you like a class option that pre-sets these values, +%% then you do not have to use any of these commands. +% +% Note: This class does not ask you to set the width or height of the textblock. +% Instead, these values are automatically calculated from other dimensions. +% + +% +% \SetTrimSize{}{} width and height of printed book. +\newcommand\SetTrimSize[2]{% + \global\@TrimSizeSettrue + \ifthenelse{\dimtest{#1}{<}{2.99in}}{ + \ClassError{novel}{Unacceptably small Trim Width}% + {Trim Width must be at least 3in.}% + }{} + \ifthenelse{\dimtest{#2}{<}{2.99in}}{ + \ClassError{novel}{Unacceptably small Trim Height}% + {Trim Height must be at least 3in.}% + }{} + \if@ReworkTrimSet + \ClassError{novel}{^^JCannot set Trim after reworking Trim or Margins}% + {\string\SetTrimSize\space cannot follow \string\ReworkTrimSize.}% + \fi + \if@ReworkMarginsSet + \ClassError{novel}{^^JCannot set Trim after reworking Trim or Margins}% + {\string\SetTrimSize\space cannot follow \string\ReworkTrimSize^^J% + and cannot follow \string\ReworkMargins.}% + \fi + \setlength\Old@TrimWidth{#1}% + \setlength\Old@TrimHeight{#2}% + \setlength\New@TrimWidth{#1}% + \setlength\New@TrimHeight{#2}% + \if@MediaSizeSet\else + \setlength\Old@MediaWidth{#1}% + \setlength\Old@MediaHeight{#2}% + \setlength\New@MediaWidth{#1}% + \setlength\New@MediaHeight{#2}% + \fi +} +% +% Retroactively change Trim Size after layout. See documentation: +\newcommand\ReworkTrimSize[2]{% + \global\@ReworkTrimSettrue + \setlength\New@TrimWidth{#1}% + \setlength\New@TrimHeight{#2}% + \setlength\New@MediaWidth{#1}% + \setlength\New@MediaHeight{#2}% + \typeout{^^J Class `novel' Info: % + Used \string\ReworkTrimSize{}{} command.^^J% + Carefully review your PDF to ensure that line breaks, paragraphs,^^J% + and page breaks are where you expect them to be.^^J}% +} +% Margins at top and bottom are relative to: +% top of header, or top of textblock if no header; +% bottom of footer, or bottom of textblock if no footer. +% Inside margin generally greater than outside, due to gutter. +% Standard margins command ("TOBI, or not TOBI, that is the question."): +\newcommand\SetMargins[4]{ % top, outside, bottom, inside + \global\@MarginsSettrue + \if@ReworkMarginsSet + \ClassError{novel}{^^JCannot set Margins after reworking them}% + {\string\SetMargins\space cannot follow \string\ReworkMargins.}% + \fi + \setlength\Old@TopMargin{#1} + \setlength\New@TopMargin{#1} + \setlength\Old@OutsideMargin{#2} + \setlength\New@OutsideMargin{#2} + \setlength\Old@BottomMargin{#3} + \setlength\New@BottomMargin{#3} + \setlength\Old@InsideMargin{#4} + \setlength\New@InsideMargin{#4} +} +% Retroactively change margins after layout. See documentation: +\newcommand\ReworkMargins[4]{ + \global\@ReworkMarginsSettrue + \setlength\New@TopMargin{#1} + \setlength\New@OutsideMargin{#2} + \setlength\New@BottomMargin{#3} + \setlength\New@InsideMargin{#4} + \typeout{^^J Class novel Info: % + Used \string\ReworkMargins{}{} command.^^J% + Carefully review your PDF to ensure that line breaks, paragraphs,^^J% + and page breaks are where you expect them to be.^^J}% +} +% \SetMediaSize[]{}{} such as {8.5in}{11in}. +% This command is only used when the Trim Size must be placed in a larger +% Media Size. Otherwise, Media Size is automatically set to Trim Size. +% This command cannot be used until after Trim Size is set, either by +% class option or by \SetTrimSize{}{}. +% Trim will be horizontally and vertically centered in media. +% No `rework' is needed for Media Size, because interior layout is relative +% to Trim Size, not Media Size. +% +\newif \if@offcenterTrim \@offcenterTrimfalse +\newcommand\SetMediaSize[3][center]{ % [alignment] width, height + \ifthenelse{\equal{#1}{center} \OR \equal{#1}{edge}}{ + \global\@MediaSizeSettrue + \setlength\Old@MediaWidth{#2} + \setlength\New@MediaWidth{#2} + \setlength\Old@MediaHeight{#3} + \setlength\New@MediaHeight{#3} + }{ + \ClassError{novel}{Bad optional argument for \string\SetMediaSize}% + {\string\SetMediaSize\space optional argument must be `center' or `edge'.}% + } + \ifthenelse{\equal{#1}{edge}}{\@offcenterTrimtrue}{} +} +% \SetLinesPerPage{} may be limited due to fontsize and Trim Size constraints. +% There is no `rework' command, because as long as the number of lines fit, +% the line spacing will be automatically changed to fit a reworked size. +% The only possible problem is if lines were originally so tight that +% a reworked size cannot fit. In that case, the user's best plan is to remove +% header or footer (if possible), or reduce vertical margins (if possible). +\newcommand\SetLinesPerPage[1]{ + \global\@LinesPerPageSettrue + \FPiflt{#1}{1}% + \ClassError{novel}{\string\SetLinesPerPage\ must be at least 1}% + {You requested less than one line per page. Naughty!^^J}% + \else\fi % + \FPround{\temp@IntegerLines}{#1}{0} + \def\my@LinesPerPage{\temp@IntegerLines} +} +% \SetFontSize{} may be in any units, even decimals: 12.2pt, 11.5bp, etc. +% When packages load, the font size is temporarily set to 11pt at 15pt skip, +% so that moldy-oldie packages don't get confused about metrics. +% Then the size is changed to its actual value based on this command, or on +% the defaults for Trim Size, or on the effects of \Rework. +\newcommand\SetFontSize[1]{ + \global\@FontSizeSettrue + \global\setlength\Old@FontSize{#1} +} +% +%% End size-related commands available in Preamble. + + + +%% RESERVE SPACE FOR HEADER/FOOTER, AND SET DEFAULT CHAPTER DISPLAY PAGE +%% ----------------------------------------------------------------------------- +%% At this point, `novel' needs to know whether or not header/footer used, +%% so that space can be reserved at top/bottom. Actual styling comes later. +% +% If the user wishes to tweak layout, these Preamble commands store info, +% that will be used in novel-CalculateLayout.sty. +% The jumps are scale factors, which increase or decrease headsep and footskip +% relative to normal baselineskip. Do not use \setlength\headsep or +% \setlength\footskip directly, because direct settings will lead to +% improper calculations. +% These "jumps" are measured baseline-to-baseline. So, \SetHeadJump{1} means +% that the baseline of the header is 1 baselineskip above the baseline of +% the first line of textblock. In other words, on-grid. Value 2 would be +% equivalent to double-spaced vertically. A value of 1.5 is default, based +% on observations of actual novels. +% If \SetHeadJump is less than 1, then a warning appears in the log. +\gdef\SetHeadJump#1{\gdef\@headjump{#1}} +\SetHeadJump{1.5} % default +\gdef\SetFootJump#1{\gdef\@footjump{#1}} +\SetFootJump{1.5} % default +% See docs part 7 for available style choices: +\gdef\SetHeadFootStyle#1{\gdef\my@HeadFootStyle{#1}} +% See docs part 7 for what these emblems do, if used: +\newcommand\SetEmblems[2]{ % verso, recto + \gdef\my@VersoEmblem{{\headfont #1}} + \gdef\my@RectoEmblem{{\headfont #2}} +} +\let\SetEmblem\SetEmblems% for convenience +% If you want something fancier than \thepage: +\gdef\SetPageNumberStyle#1{\gdef\pagenumberstyle{#1}} +\AtBeginDocument{ + \ifcsname pagenumberstyle\endcsname\else + \SetPageNumberStyle{\thepage} + \fi +} +% +\newif \if@gotHeader \@gotHeaderfalse +\newif \if@gotFooter \@gotFooterfalse +\newif \if@styledHeader \@styledHeaderfalse +\newif \if@styledFooter \@styledFooterfalse +\newif \if@validHF \@validHFfalse +% +\gdef\@reserveHFspace{ % used for layout calculations + \ifthenelse{\equal{\my@HeadFootStyle}{0}}{ + \@gotHeaderfalse\@gotFooterfalse\@validHFtrue + }{} + \ifthenelse{\equal{\my@HeadFootStyle}{1}}{ % default + \@gotHeadertrue\@gotFooterfalse\@validHFtrue + }{} + \ifthenelse{\equal{\my@HeadFootStyle}{2}}{ + \@gotHeaderfalse\@gotFootertrue\@validHFtrue + }{} + \ifthenelse{\equal{\my@HeadFootStyle}{3}}{ + \@gotHeaderfalse\@gotFootertrue\@validHFtrue + }{} + \ifthenelse{\equal{\my@HeadFootStyle}{4}}{ + \@gotHeadertrue\@gotFooterfalse\@validHFtrue + }{} + \ifthenelse{\equal{\my@HeadFootStyle}{5}}{ + \@gotHeadertrue\@gotFootertrue\@validHFtrue + }{} + \ifthenelse{\equal{\my@HeadFootStyle}{6}}{ + \@gotHeadertrue\@gotFootertrue\@validHFtrue + }{} + % Ensure that user choice was on the allowed list: + \if@validHF\else + \ClassError{novel}{Invalid choice for \string\SetHeadFootStyle}% + {\string\SetHeadFootStyle\space needs choice of 0,1,2,3,4,5,6,^^J% + even if you wish to customize using fancyhdr syntax.^^J}% + \fi +} % end \@reserveHFspace +% Each new chapter generally has its own header/footer style. This allows a +% default setting when chapters begin with ChapterDisplay environment: +\gdef\SetChapterDisplay#1{\gdef\@setchapterdisplay{#1}} +\SetChapterDisplay{footer} % default +\AtBeginDocument{% check if user wrote good command or not + \def\@setchapterdisplayOK{false}% + \ifthenelse{\equal{\@setchapterdisplay}{empty}}{% + \def\@setchapterdisplayOK{true}% + }{}% + \ifthenelse{\equal{\@setchapterdisplay}{plain}}{% + \def\@setchapterdisplayOK{true}% + }{}% + \ifthenelse{\equal{\@setchapterdisplay}{footer}}{% + \def\@setchapterdisplayOK{true}% + }{}% + \ifthenelse{\equal{\@setchapterdisplay}{fancyplain}}{% + \def\@setchapterdisplayOK{true}% + }{}% + \ifthenelse{\equal{\@setchapterdisplay}{fancy}}{% + \def\@setchapterdisplayOK{true}% + }{}% + \ifthenelse{\equal{\@setchapterdisplay}{forcenumber}}{% + \def\@setchapterdisplayOK{true}% + }{}% + \ifthenelse{\equal{\@setchapterdisplay}{dropfolio}}{% no footnote there + \def\@setchapterdisplayOK{true}% + }{}% + \ifthenelse{\equal{\@setchapterdisplay}{dropfoliolater}}{% has footnote(s) there + \def\@setchapterdisplayOK{true}% + }{}% + \ifthenelse{\equal{\@setchapterdisplay}{foliobeneath}}{% + \def\@setchapterdisplayOK{true}% + }{}% + \ifthenelse{\equal{\@setchapterdisplayOK}{true}}{}{% + \ClassError{novel}{\string\SetChapterDisplay\space bad argument}% + {\string\SetChapterDisplay\space only allows certain choices.^^J}% + }% +} +% +%% End reserve space for header/footer and set default ChapterDisplay + + +%% +\newtoggle{@usesymbolmark} % true when footnote markers are symbolic +\newtoggle{@realmarker} % true when OT features sups, sinf, subs requested +% +% \SetMarkers does two things. +% Option real: OT features sups, sinf, subs requested. Fake if not available. +% Option fake: Always fake OT features sups, sinf, subs. +% Mandatory: asterisk, dagger, number. Pertains to footnote markers only. +% No matter real or fake, the asterisk symbol is always real, and the +% dagger, dbldagger, and section (when used as footnote markers) +% are always partially faked. +\newcommand\SetMarkerStyle[2][real]{ + \def\@goodfnm{no} + \ifthenelse{\equal{#2}{asterisk}}{% + \def\@goodfnm{yes}\global\toggletrue{@usesymbolmark}\gdef\@myfnsymbols{*}}{} + \ifthenelse{\equal{#2}{dagger}}{% + \def\@goodfnm{yes}\global\toggletrue{@usesymbolmark}\gdef\@myfnsymbols{†}}{} + \ifthenelse{\equal{#2}{number}}{% + \def\@goodfnm{yes}\global\togglefalse{@usesymbolmark}}{} + \def\@goodfnk{no} + \ifthenelse{\equal{#1}{real}\OR\equal{#1}{}}{% + \def\@goodfnk{yes}\global\toggletrue{@realmarker}}{} + \ifthenelse{\equal{#1}{fake}}{% + \def\@goodfnk{yes}\global\togglefalse{@realmarker}}{} + \ifthenelse{\equal{\@goodfnm}{no}\OR\equal{\@goodfnk}{no}}{% + \ClassError{novel}{Bad choice for \string\SetMarkers}% + {Optional: real, fake. Required: asterisk, dagger, number.}% + }{} +} +% +\SetMarkerStyle[real]{asterisk} % default +%% + + +%% Sets the gap between cropmarks and trim area: +\newlength\@mygap +\def\SetCropmarkGap#1{ + \ifthenelse{\lengthtest{#1 < 0pt}}{ + \setlength\@mygap{0pt} + }{ + \setlength\@mygap{#1} + } +} +\SetCropmarkGap{0.125in} % default +%% + + +%% Fake \microtypesetup until package is loaded later: +\newif \if@setmicrotype +\gdef\microtypesetup#1{ + \gdef\@mymicrotypesetup{#1} % used in novel-FontDefaults.sty + \global\@setmicrotypetrue +} +%% + + + + +%% MISCELLANOUS SETTINGS. Mostly remove "glue". Best to leave as-is. +%% ----------------------------------------------------------------------------- +%% +% +\@twocolumnfalse +\@twosidetrue +\@mparswitchtrue +% +\abovedisplayskip \z@ +\abovedisplayshortskip \z@ +\belowdisplayshortskip \z@ +\belowdisplayskip \abovedisplayskip +\global\@topnum \z@ +% +\setlength\smallskipamount{0pt} +\setlength\medskipamount{0pt} +\setlength\bigskipamount{0pt} +\setlength\topsep{0pt} +\setlength\partopsep{0pt} +\setlength\parsep{0pt} +\setlength\marginparwidth{0pt} +\setlength\marginparsep{0pt} +\setlength\marginparpush{0pt} +\setlength\textfloatsep{0pt} +\setlength\dbltextfloatsep{0pt} +% +\setlength\lineskip{0pt} +\setlength\normallineskip{0pt} +\renewcommand\baselinestretch{1} % multiplier +\setlength\parskip{0pt} +\@lowpenalty 51 +\@medpenalty 151 +\@highpenalty 301 +% +\setcounter{topnumber}{2} +\renewcommand\topfraction{.7} +\setcounter{bottomnumber}{1} +\renewcommand\bottomfraction{.3} +\setcounter{totalnumber}{3} +\renewcommand\textfraction{.2} +\renewcommand\floatpagefraction{.5} +\setcounter{dbltopnumber}{2} +\renewcommand\dbltopfraction{.7} +\renewcommand\dblfloatpagefraction{.5} +% +\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\normalfont\rmfamily} +\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\normalfont\sffamily} +\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\normalfont\ttfamily} +\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\normalfont\bfseries} +\DeclareOldFontCommand{\it}{\normalfont\itshape}{\normalfont\itshape} +\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\normalfont\slshape} +\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\normalfont\scshape} +% +\setlength\columnsep{12pt} % usually not needed, picked something at random +\setlength\columnseprule{0pt} +\pagestyle{empty} % will be over-ridden by fancyhead in separate file +\pagenumbering{arabic} % may be over-ridden in document +\flushbottom % may be over-ridden in document, but not advised +% +%% End miscellaneous settings. + + +% The following might become unnecessary if fontspec adds the capability +% to disable keys. For now: Color and Opacity cannot be used as font features, +% for a black/white printed book. Alas, fontspec over-rules xcolor. +% So, this code over-rules fontspec: +\gdef\novel@checkfeatures#1{% + \def\@featuresareok{yes} + \IfSubStr{#1}{Color}{\def\@featuresareok{no}}{}% + \IfSubStr{#1}{Colour}{\def\@featuresareok{no}}{}% + \IfSubStr{#1}{color}{\def\@featuresareok{no}}{}% + \IfSubStr{#1}{colour}{\def\@featuresareok{no}}{}% + \IfSubStr{#1}{Opacity}{\def\@featuresareok{no}}{}% + \IfSubStr{#1}{opacity}{\def\@featuresareok{no}}{}% + \ifthenelse{\equal{\@featuresareok}{yes}}{}{% + \ClassError{novel}{Color and Opacity forbidden as font features}% + {You defined a font, or added a font feature, with Color or Opacity.^^J% + That is disallowed in `novel' class.}% + } +} +%% + + + +%% DEFINITION OF MASTER AND OTHER FONTS +%% ----------------------------------------------------------------------------- +%% +% The `no-math' option prevents fontspec from tracking certain font changes. +% This is probably necessary, since novel does some of its own font tracking: +\RequirePackage[no-math]{fontspec} % For LuaLaTeX. NOT package `fontenc'. +\defaultfontfeatures{} % reset +% User-created fonts (not standard, not novel-specific defaults: +\defaultfontfeatures{% + SmallCapsFeatures={Renderer=Basic},Kerning=On,% + Ligatures=TeX,% +}% +% Latin Modern Math (Open Type) fonts will be selected by default, for math. +% You shouldn't be doing math! You can use \setmathfont, if you wish. +% If you must load a math font package, it should be done using \RequirePackage +% before (yes, before) calling the document class. +\RequirePackage{unicode-math} +%% +%% This could have been easier, but fontspec allows mandatory and optional +% arguments to appear in either order. We wish to store the fontnames +% and arguments, but need Expl syntax to tell which is which. +\ExplSyntaxOn +%% Store settings for the master font: +% The master font will become the main font AtEndPreamble. It will also become +% the default ancestor of all novel-defined fonts, except the deco font. +\newif \if@masterfontset +\gdef\@masterfontfeatures{} +\gdef\@masterfontname{} +\DeclareDocumentCommand \SetMasterFont { O{} m O{} } {% + \novel@checkfeatures{#1,#3} + \gdef\@masterfontfeatures{#1,#3} + \gdef\@masterfontname{#2} + \global\@masterfontsettrue +}% +%% Store settings for the chapterfont: +% The chapter font is used by the \ChapterTitle{} command. +\newif \if@chapterfontset +\gdef\@chapterfontfeatures{} +\gdef\@chapterfontname{} +\DeclareDocumentCommand \SetChapterFont { O{} m O{} } {% + \novel@checkfeatures{#1,#3} + \gdef\@chapterfontfeatures{#1,#3} + \gdef\@chapterfontname{#2} + \global\@chapterfontsettrue +}% +%% Store settings for the subchfont: +% The subch font is used by the \ChapterSubtitle{} command. +\newif \if@subchfontset +\gdef\@subchfontfeatures{} +\gdef\@subchfontname{} +\DeclareDocumentCommand \SetSubchFont { O{} m O{} } {% + \novel@checkfeatures{#1,#3} + \gdef\@subchfontfeatures{#1,#3} + \gdef\@subchfontname{#2} + \global\@subchfontsettrue +}% +%% Store settings for the headfont: +% The headfont is used in headers and footers. +\newif \if@headfontset +\gdef\@headfontfeatures{} +\gdef\@headfontname{} +\DeclareDocumentCommand \SetHeadFont { O{} m O{} } {% + \novel@checkfeatures{#1,#3} + \gdef\@headfontfeatures{#1,#3} + \gdef\@headfontname{#2} + \global\@headfontsettrue +}% +%% Store settings for the deco font: +% The deco font is used for decorations and acronyms. +% It must be NovelDeco.otf or a font based on NovelDeco.otf. No other! +\newif \if@decofontset +\newif \if@gotdeco +\gdef\@decofontfeatures{} +\gdef\@decofontname{} +\DeclareDocumentCommand \SetDecoFont { O{} m O{} } {% + \novel@checkfeatures{#1,#3} + \gdef\@decofontfeatures{#1,#3} + \gdef\@decofontname{#2} + \global\@decofontsettrue + \global\@gotdecotrue + \newfontface\decofont[#1,#3]{#2} +}% +% +\msg_set:nnnn {fontspec} {font-not-found} { % rewrites the standard message + Font~ "#1"~ cannot~ be~ found. + }{ + If~the~missing~font~is~Libertinus~or~Libertine~or~Biolinum~or~NovelDeco,\\ + see~the~`novel'~class~documents~for~help.\\ + If~the~missing~font~is~anything~else,~then~the~missing~font~is\\ + not~caused~by~`novel'~class.\\ +}% +%% For syntax consistency: +\cs_new_eq:NN \NewFontFamily \newfontfamily +\cs_new_eq:NN \NewFontFace \newfontface +\cs_new_eq:NN \SetSansFont \setsansfont +\cs_new_eq:NN \SetMonoFont \setmonofont +\cs_new_eq:NN \SetMathFont \setmathfont +\cs_new_eq:NN \AddFontFeatures \addfontfeatures +\cs_new_eq:NN \AddFontFeature \addfontfeatures +%% +%% \CreateFontFeature{substitutions}{feature code} +% Problem: The font has one or more alternate glyphs that you would like to use, +% but they are not listed in a feature set for the font. +% Solution: Create your own feature set, with \CreateFontFeature. The created +% feature may then be used like a real feature, in any font definition. +% The substitutions are a comma-separated list, char=char.alt and so forth. +% For example, the following substitutions are syntactically OK: +% emdash=emdah.alt, one=one.rev, ntilde=ntilde.03 +% If a substitution is not available in a particular font, it is ignored. +% You have to look at the font in a font editor, to know what is available. +% It is possible to make silly substitutions, such as a=b, five=three without +% throwing an error, unless your code causes a cycle. +% The most useful application of this command is to reach alternate emdash, +% and alternate oldstyle one. Not every font has these. +% The feature code is a 4-character pseudo- Open Type code, otherwise unused. +% For example, the feature code might be myfs (my fake substitution) +% but it cannot be a pre-defined code such as lnum or smcp. It may be +% a style set such as ss03 if you are sure that the font in question +% do not already have ss03 (but this is taking a chance). +% Once defined, you may use it like this (for example): +% \SetMasterFont[RawFeature=+myfs]{fontname} +% \NewFontFamily\myfake[RawFeature=+myfs]{fontname} +% In the document body: {\addfontfeature{myfs} text} +\DeclareDocumentCommand \CreateFontFeature { m m } {% + \IfEndWith{#1}{,}{\StrGobbleRight{#1}{1}[\@fakezero]}{\def\@fakezero{#1}} + \def\@fakeone{["\@fakezero"} + \StrSubstitute{\@fakeone}{=}{"]="}[\@fakeone] + \StrSubstitute{\@fakeone}{,}{",\space["}[\@fakeone] + \directlua{ + fonts.handlers.otf.addfeature { + name = "#2", + type = "substitution", + data = {\@fakeone}, + } + } +} %% end \CreateFontFeature. Above thanks to fontspec 2016. +%% +\ExplSyntaxOff +%% +%% end definition of master and other fonts. + + + +%% FAKE POLYGLOSSIA COMMANDS +%% ----------------------------------------------------------------------------- +% The polyglossia package is not loaded until \AfterEndPreamble. +% So, its commands are not directly available in the Preamble. +% These fake commands store the data. Later, the commands will be relaxed, +% then the real polyglossia commands can work, and the data will be passed +% to the real commands at that time. +% Default main language will be set to english by novel-FontDefaults.sty. +\newcommand\SetMainLanguage[2][]{ + \gdef\@setmainlangopt{#1} + \gdef\@setmainlang{#2} +} +\let\setmainlanguage\SetMainLanguage\relax +\newcommand\SetDefaultLanguage[2][]{ + \gdef\@setmainlangopt{#1} + \gdef\@setmainlang{#2} +} +\let\setdefaultlanguage\SetDefaultLanguage\relax +\SetMainLanguage[]{} % if not user-specified, defaults to english +\newcommand\SetOtherLanguage[2][]{ + \gdef\@setotherlangopt{#1} + \gdef\@setotherlang{#2} +} +\let\setotherlanguage\SetOtherLanguage\relax +\SetOtherLanguage[]{} % default empty +\newcommand\SetOtherLanguages[2][]{ + \gdef\@setotherlangsopt{#1} + \gdef\@setotherlangs{#2} +} +\let\setotherlanguages\SetOtherLanguages\relax +\SetOtherLanguages[]{} % default empty +% +%% end fake polyglossia commands. + + + +%% FRONTMATTER, MAINMATTER, BACKMATTER +%% ----------------------------------------------------------------------------- +% +\newif \ifWithinFrontmatter \WithinFrontmatterfalse +\newif \ifWithinMainmatter \WithinMainmatterfalse +\newif \ifWithinBackmatter \WithinBackmatterfalse +\newcounter{frontmatterpages} +\newcounter{runningpages} +\AtBeginShipout{\stepcounter{runningpages}} +% +\def\frontmatter{ % starts page count and frontmatter count at 1. + \ifWithinFrontmatter + \ClassError{novel}{\string\frontmatter\ used more than once}% + {You issued \string\frontmatter\ more than once.^^J}% + \fi + \ifWithinMainmatter + \ClassError{novel}{\string\frontmatter\ cannot follow \mainmatter}% + {In order: \string\frontmatter\ \string\mainmatter\ \string\backmatter^^J% + but you do not need all of them.^^J}% + \fi + \ifWithinBackmatter + \ClassError{novel}{\string\frontmatter\ cannot follow \backmatter}% + {In order: \string\frontmatter\ \string\mainmatter\ \string\backmatter^^J% + but you do not need all of them.^^J}% + \fi + \WithinFrontmattertrue\WithinMainmatterfalse\WithinBackmatterfalse + \pagenumbering{roman} + \setcounter{page}{1} + \setcounter{frontmatterpages}{1} +} +% +\def\mainmatter{ % restarts page to 1, arabic numbers; freeze frontpagecount + \ifWithinMainmatter + \ClassError{novel}{\string\mainmatter\ used more than once}% + {You issued \string\mainmatter\ more than once.}% + \fi + \ifWithinBackmatter + \ClassError{novel}{\string\mainmatter\ cannot follow \backmatter}% + {In order: \string\frontmatter\ \string\mainmatter\ \string\backmatter^^J% + but you do not need all of them.^^J}% + \fi + \WithinFrontmatterfalse\WithinMainmattertrue\WithinBackmatterfalse + \setcounter{frontmatterpages}{\value{page}} + \addtocounter{frontmatterpages}{-1} + \pagenumbering{arabic} + \setcounter{page}{1} +} +% +\def\backmatter{\@ifstar\@backmatterst\@backmatterns} +% +\def\@backmatterst{ % continues frontmatter count with lowercase roman numerals + \ifWithinBackmatter + \ClassError{novel}{\string\backmatter\space used more than once}% + {You issued \string\backmatter\space more than once.^^J}% + \fi + % If you really must go directly from front to back without main, + % simply issue \mainmatter\backmatter together. Not advised. + \ifWithinFrontmatter + \ClassError{novel}{Missing \string\mainmatter}% + {You went directly from \string\frontmatter\space to \string\backmatter^^J% + Must have \string\mainmatter\space in between.^^J}% + \fi + \WithinFrontmatterfalse\WithinMainmatterfalse\WithinBackmattertrue + \addtocounter{frontmatterpages}{1} + \pagenumbering{roman} + \setcounter{page}{\value{frontmatterpages}} +} +% +\def\@backmatterns{ % continues mainmatter arabic numerals + \ifWithinBackmatter + \ClassError{novel}{\string\backmatter\space used more than once}% + {You issued \string\backmatter\space more than once.^^J}% + \fi + % If you really must go directly from front to back without main, + % simply issue \mainmatter\backmatter together. Not advised. + \ifWithinFrontmatter + \ClassError{novel}{Missing \string\mainmatter}% + {You went directly from \string\frontmatter\space to \string\backmatter^^J% + Must have \string\mainmatter\space in between.^^J}% + \fi + \WithinFrontmatterfalse\WithinMainmatterfalse\WithinBackmattertrue +} +% +\def\Backmatter{\@ifstar\@Backmatterst\@Backmatterns} +% +\def\@Backmatterst{ % continues frontmatter count with uppercase Roman numerals + \ifWithinBackmatter + \ClassError{novel}{\string\backmatter\space used more than once}% + {You issued \string\backmatter\space more than once.^^J}% + \fi + % If you really must go directly from front to back without main, + % simply issue \mainmatter\backmatter together. Not advised. + \ifWithinFrontmatter + \ClassError{novel}{Missing \string\mainmatter}% + {You went directly from \string\frontmatter\space to \string\backmatter^^J% + Must have \string\mainmatter\space in between.^^J}% + \fi + \WithinFrontmatterfalse\WithinMainmatterfalse\WithinBackmattertrue + \addtocounter{frontmatterpages}{1} + \pagenumbering{Roman} + \setcounter{page}{\value{frontmatterpages}} +} +% +\def\@Backmatterns{ % restarts page count with uppercase Roman numerals + \ifWithinBackmatter + \ClassError{novel}{\string\backmatter\ used more than once}% + {You issued \string\backmatter\ more than once.^^J}% + \fi + % If you really must go directly from front to back without main, + % simply issue \mainmatter\backmatter together. Not advised. + \ifWithinFrontmatter + \ClassError{novel}{Missing \string\mainmatter}% + {You went directly from \string\frontmatter\space to \string\backmatter^^J% + Must have \string\mainmatter\space in between.^^J}% + \fi + \WithinFrontmatterfalse\WithinMainmatterfalse\WithinBackmattertrue + \pagenumbering{Roman} + \setcounter{page}{1} +} +% +%% end frontmatter, mainmatter, backmatter. + + + +%% DISABLE OR NEUTRALIZE SOME STANDARD LATEX COMMANDS +%% ----------------------------------------------------------------------------- +% The `novel' class disallows these commands, or neutralizes them by simply +% repeating their arguments. In some cases, they request functionality that is +% not implemented in `novel'. In other cases, the functionality is part of core, +% but would interfere with the `novel' emphasis on constant line skip. +% You may re-define the commands using your own code in Preamble (discouraged). +% +\gdef\null{\hbox{\strut}} % May be important! +% +% Standard LaTeX font sizes are ineffective: +\let\small\relax +\let\footnotesize\relax +\let\scriptsize\relax +\let\tiny\relax +% +\let\large\relax +\let\Large\relax +\let\LARGE\relax +\let\huge\relax +\let\Huge\relax +\let\HUGE\relax +% All these do is echo the argument, if any: +\long\gdef\part#1{#1} +\long\gdef\chapter#1{#1} +\long\gdef\section#1{#1} +\long\gdef\subsection#1{#1} +\long\gdef\subsubsection#1{#1} +\long\gdef\paragraph#1{#1} +\long\gdef\subparagraph#1{#1} +% In some situations, the use will be interrupted: +\gdef\@nodocommand#1{ + \ClassError{novel}{No command `\string\#1' in this class}% + {The `\string\#1' command is not implemented in `novel' class.^^J}% +} +% Here is the interruption list: +\long\gdef\maketitle\@nodocommand{maketitle} +\long\gdef\makeindex\@nodocommand{makeindex} +\long\gdef\tableofcontents\@nodocommand{tableofcontents} +\long\gdef\listoftables\@nodocommand{listoftables} +\long\gdef\listoffigures\@nodocommand{listoffigures} +% +%% end disable or neutralize. + + + +%% +%% End of file `novel-LayoutSettings.sty'. + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-TextMacros.sty b/Master/texmf-dist/tex/lualatex/novel/novel-TextMacros.sty new file mode 100644 index 00000000000..613202fe5c4 --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-TextMacros.sty @@ -0,0 +1,529 @@ +%% +%% This is file `novel-TextMacros.sty', part of class `novel'. +%% Copyright 2017 Robert Allgeyer. +%% +%% +%% This file may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% +\ProvidesFile{novel-TextMacros.sty}% +[2017/03/01 v1.0.6 LaTeX file (text macros usable within document body)] +%% + + +%% This file contains commands that are usable within the document body, +%% for styling and otherwise manipulating text. +%% These are not commands used in Preamble for setup, although a few of them +%% can be used in Preamble for setup, then again in body for change. + + + +%% The following commands were defined in other files of `novel' class: +%% ----------------------------------------------------------------------------- +% \thetitle or \theTitle returns string set by \title{} or \SetTitle{} -- See novel-LayoutSettings.sty. +% \theauthor or \theAuthor returns string set by \author or \SetAuthor{} -- See novel-LayoutSettings.sty. +% \normalFontSize length of main font setting. May be tweaked during rework. -- See novel-CalculateLayout.sty. +% \normalBaselineSkip and \nbs (calculated) length of main baselineskip. -- See novel-CalculateLayout.sty. +% \thesubtitle or \theSubtitle returns string set by \subtitle{} or \SetSubtitle{} -- See novel-LayoutSettings.sty. +% \InlineImage, \BlockImage, \ClearImage -- See novel-Images.sty. +% \scenebreak, \sceneline, \scenestars -- See novel-ChapterScene.sty. +% ChapterDisplay, \ChapterTitle{}, \ChapterSubtitle{}, \ChapterDeco{}, \ChapterText -- See novel-ChapterScene.sty. +% \DecoChapterTitle{}{}, \SideDecoChapterTitle{}, ModernChapterTitle[]{}{} -- See novel-ChapterScene.sty. +% {\chapterfont text} and other pre-defined font selection commands -- See novel-LayoutSettings.sty. +% \decoglyph{} and \acronym{} -- See novel-FontDefaults.sty. +% \frontmatter, \mainmatter, \backmatter and variations -- See novel-LayoutSettings.sty. +% \footnote[]{}, \endnote, \endnotetext[]{} -- See novel-Footnotes.sty. +% \thispagestyle{choice} and \dropfolio -- See novel-HeadFootStyles.sty. +% \NewVersoHeadText{}, \NewRectoHeadText{} Also \Set and \Renew forms. -- See novel-HeadFootStyles.sty. +% \CreateFeature{substitutions}{feature code} fakes an Open Type feature -- See novel-LayoutSettings.sty. +% \Epigraph[align,scale,width]{text} creates an Epigraph -- See novel-ChapterScene.sty. + + + +%% The following commands are defined on this page: +%% ----------------------------------------------------------------------------- +% \memo{text} is a memo to yourself. Does not print, is not saved. +% \forceindent and \backindent when \indent and \noindent fail. +% \smcp{text} or \textsc{text} for lowercase to small caps. +% \allsmcp{text} puts both caps and lowercase into small caps. +% \charscale[scale,x,y]{text} for brief change of text size/position. No line wrap. +% parascale environment for long change in text size. Will go off-grid. +% toc environment for table of contents. +% \tocitem[]{}{} and \tocitem*[]{}{} for one-line entries in toc. +% legalese environment uses ragged right, disables hyphenation, and reduces microtype tweaks. +% poem environment uses ragged right, disables hyphenation, parindent zero, and optional increased right margin. +% \showlength[round]{length}{units} returns the length, re-calculated in units, rounded. +% \supersub{raise}{scale}{text} alternative to superscript and subscript commands. +% \sups{text}, \subs{text}, and \sinf{text} other alternatives to super/subscripts. +% \bigemdash[raise,thickness] provides a raised rule of flexible length, a "big em dash." +% \stake inserts zero-width rule, 1pt thick, as placeholder. +% \color and \textcolor (from package xcolor) have been modified to ensure black, or grayscale when permitted. +% \squeeze{} and \crush{} for emergency text adjustment. + + +%% The following useful commands are from core code, or other pre-loaded packages. +%% ----------------------------------------------------------------------------- +%% They are listed here as a reminder of their existence. Not a complete list. +%% A description is only provided here, when it is brief and simple. +% +% {\centering text\par} centers text. Needs the \par to finish. May also use internal \\ or \par. Avoid center environment. +% \makebox[length][alignment]{text} +% \hspace{length} +% \vspace{length} Caution: may disrupt text line grid! +% \kern +% \hfill and \dotfill +% \vfill (use only with discretion) +% \linebreak (use only with discretion) +% \null inserts an empty line. See also the scene break commands. +% \clearpage begins a new page. Two consecutive \clearpage does not make 2 pages (use \null if blank page desired). +% \strut is useful for occupying the full line height. +% \smash{text} allows its included text to overlay other content. Sometimes useful when text is too tall to fit the line grid. +% \textwidth (length) is the width of the textblock. +% adjustwidth environment (package: changepage) for block indents, etc. +% \FirstLine{} (package: magaz) may be useful for first line of new chapter. Patched by me. +% \textsuperscript{} and \textsubscript{} are re-defined. + + + +%% The following commands are available, but STRONGLY DISCOURAGED. +%% ----------------------------------------------------------------------------- +%% Beware: Their usage is likely to disturb the line grid. +%% That is less of an issue on pages where the line grid does not matter. +% +% Environments: center, minipage, sloppypar +% \parbox +% \framebox or \fbox +% \raisebox BUT can be used inside \smash or \charscale. +% \linespread +% Anything involving math mode. Note that $ is a normal text character. + + +%% The following commands are BANNED. +%% ----------------------------------------------------------------------------- +% The `novel' class disallows these commands, or neutralizes them by simply +% repeating their arguments. In some cases, they request functionality that is +% not implemented in `novel'. In other cases, the functionality is part of core, +% but would interfere with the `novel' emphasis on constant line skip. +% You may re-define the commands using your own code in Preamble (discouraged). +% +%% Standard LaTeX font sizes are ineffective. Use novel's own methods. +% If you write one of these size commands, it will silently be ignored: +% \small, \footnotesize, \scriptsize, \tiny, +% \large, \Large, \LARGE, \huge, \Huge, \HUGE. +% +%% Internal subdivisions are ineffective. +% The command will merely echo its argument, without any functionality: +% \part{}, \chapter{}, \section{}, \subsection{}, \subsubsection{}, \paragraph{}, \subparagraph{} +% +%% Certain commands will generate an error, so that you know they cannot be used: +% \maketitle, \makeindex, \tableofcontents, \listoftables, \listoffigures +% +%% You cannot use \includepdf (package: pdfpages). +% +%% You cannot use \includegraphics. Instead use novel's own image commands. +% +%% Commands normally provided in other classes, pertaining to floats, figures, and tables, +%% are not defined in `novel' class. If you attempt to use them, an error will result. + + + +%% AND NOW TO THE GOOD STUFF +%% ----------------------------------------------------------------------------- +% +%% \memo{} does not print or save its argument. +% Useful when you wish to put a note to yourself in the *.tex document. +% Not the same as % comment, because anything after the braces will print. +\long\gdef\memo#1{} +% +\gdef\stake{\rule{0pt}{1pt}} % placeholder +% +% \forceindent and \backindent perform or remove indent, using \hspace{}. +% Rationale: Sometimes \indent and \noindent are neutralized by another command. +\newlength\forceparlength % holds default value, even when \parindent changed +\AtBeginDocument{ + \setlength\forceparlength{\parindent} + \global\forceparlength=\forceparlength + \gdef\forceindent{\ifvmode\else\unskip\fi\stake\hspace{\forceparlength}} + \gdef\backindent{\ifvmode\else\unskip\fi\hspace{-\forceparlength}} +} +%% +% \smcp{} and \textsc{} small caps (Open Type) and \allsmcp{}: +% +\ExplSyntaxOn +% +\DeclareDocumentCommand \smcp { +m } + {% + {\AddFontFeature{Letters=SmallCaps}#1}% + } +% +\DeclareDocumentCommand \allsmcp { +m } + {% + \fontspec_if_feature:nTF {c2sc}{% + {\AddFontFeatures{Letters=UppercaseSmallCaps, Letters=SmallCaps}#1}% + }{% + {\AddFontFeature{Letters=SmallCaps}\MakeLowercase{#1}}% + }% + } +% +\ExplSyntaxOff +% +\let\textsc\smcp\relax % unified +\let\oldscshape\scshape\relax % in case needed later +\let\scshape\smcp\relax % unified +% +\providecommand\FirstLineFont{\smcp} % package `magaz' +\renewcommand\FirstLineFont{\smcp} +%% + +%% The `novel' class normally allows only black text on white paper. +%% In draft mode, option `shademargins` provides light gray margins, +%% but still black text on white paper. +%% However, with option `graytext' (in any mode) then grayscale text +%% is allowed. Images are always allowed grayscale. +%% Just in case `xcolor' re-defines its internals, to prevent code bomb: +\ProvideDocumentCommand\@declaredcolor { m } {} +\ProvideDocumentCommand\@undeclaredcolor { o m } {} +%% +\if@graytext % and the usual colors, including black and white. + \definecolor[named]{gray1}{gray}{0.15} % ten percent gray, etc. + \definecolor[named]{gray2}{gray}{0.25} + \definecolor[named]{gray3}{gray}{0.33} + \definecolor[named]{gray4}{gray}{0.4} + \definecolor[named]{gray5}{gray}{0.5} + \definecolor[named]{gray6}{gray}{0.6} + \definecolor[named]{gray7}{gray}{0.68} + \definecolor[named]{gray8}{gray}{0.75} + \definecolor[named]{gray9}{gray}{0.87} +\else + \let\my@color\color\relax + \let\color\relax + \DeclareDocumentCommand \color { o m } + {% + \ifthenelse{\equal{#1}{gray} \AND \equal{#2}{0.903215}}{\@undeclaredcolor[gray]{0.903215}}{}% shademargins + \ifthenelse{\equal{#2}{hingledingle}}{\@declaredcolor{white}}{}% hingledingle is internal alias for white + } +\fi +%% + + +% This code is slightly modified from package `etextools' by Florent Chervet. +% Its license: "This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 of this +% license or (at your option) any later version." +% My rationale for not simply loading the package: Other parts of the package +% generate warning messages, but the warnings do not apply. Also, I might +% wish to hack the code at some point. +\newcount\nov@ettl@fter +\newrobustcmd\nov@AfterGroup{% + \@ifstar{\nov@ettl@AfterGroup\@firstofone}{\nov@ettl@AfterGroup\unexpanded}% +} +\newrobustcmd\nov@ettl@AfterGroup[2]{% + \csxdef{nov@ettl@fterGroup\number\numexpr\the\nov@ettl@fter+1}% + {\global\csundef{nov@ettl@fterGroup\number\numexpr\the\nov@ettl@fter+1}#1{#2}}% + \global\advance\nov@ettl@fter\@ne% + \expandafter\aftergroup\csname nov@ettl@fterGroup\the\nov@ettl@fter\endcsname% +} +% End code from `etextools`. + + + + + +%% \flexbox based on code by Werner at tex.stackexchange.com, CC-by-sa-3.0: +% Optional first argument is minimum width of box. +% Second argument is contents of box. +% Box width will be the greater of #1 or the width of #2. +\newlength\@mylen +\newcommand{\flexbox}[2][\parindent]{% + \settowidth{\@mylen}{#2}% + \ifdim\@mylen < #1% + \makebox[#1][l]{#2}% + \else% + #2% + \fi% +} +%% \bigemdash inspired by code by RTBarnard at stackoverflow.com, CC-by-sa-3.0: +% Allows a rule of variable length to fill available space at its right. +% There must be a "right-hand limit" imposed by something, such as by enclosing +% the rule in a \makebox of known width, or by an immediate \par. +% Without this limit, rule will be missing (zero width) or excessively long, +% or an error will result (referring to \leaders). +% Takes a single optional argument: Comma-separated raise, line thickness. +% If no argument or empty, defaults to [1,1]. +% Without comma, argument defaults to [argument,1]. +% First number: Scales the raise up or down. 1 = raise of emdash in typical fonts. +% Second number: Scales the line thickness. 1 = thickness of emdash in typical fonts. +% NOTE: Built-in TeX PDF viewer might show the line at slightly incorrect +% width and height. Best seen in a "real" PDF viewer. +\DeclareDocumentCommand \bigemdash { O{1,1} } + {% + \ifthenelse{\equal{#1}{}\OR\equal{#1}{\space}}{\def\@myargsi{1,1}}{\def\@myargsi{#1}}% + \StrDel{\@myargsi}{\space}[\@myargs]% + \StrCut{\@myargs}{,}{\@myraisei}{\@mythicki}% + \ifthenelse{\equal{\@myraisei}{}\OR\equal{\@myraisei}{\space}}{\def\@myraise{1}}{\def\@myraise{\@myraisei}}% + \ifthenelse{\equal{\@mythicki}{}\OR\equal{\@mythicki}{\space}}{\def\@mythick{1}}{\def\@mythick{\@mythicki}}% + \FPmul{\@myraise}{\@myraise}{0.56}% ex, typical font emdash raise + \FPmul{\@mythick}{\@mythick}{0.049}% em, typical font emdash thickness + {\leaders\hbox{\rule[\@myraise ex]{1pt}{\@mythick em}}\hfill\stake}% + } +%% + + +%% +% \charscale[scale,x,y]{text} and starred version +% This is an "in-line" means of adjusting font size +% and position, without changing the baselineskip. +% If the optional argument is unused or empty, then the text is not scaled +% or moved, but equivalent to \stake\smash{text}. +% Up to 3 arguments may be used in the single optional argument. +% They are separated by commas. Spaces ignored. +% First argument is scale. Number>=0.5. Default 1. Relative to what the size +% would otherwise be. May multiply with an already-scaled font. +% Second and third arguments are x-offset and y-offset, respectively. +% Offsets are lengths, best measured in em or \nfs for x, +% and em or \nfs or \nbs for y. Default 0pt. Can abbreviate as 0. +% Posiive offsets are x right, y up. +% Text is "smashed" and may go anywhere, even overlying other text or image. +% The unstarred command occupies width equal to the scaled text, +% thus leaving a "hole" where the text would have been. +% The starred command occupies zero width, thus no hole. Consecutive starred +% commands, without intervening space, displace from same origin. +% The text must be on a single line, without break or wrap. +% Do not use \\ or \par inside \charscale, but you sometimes need \par after it. +% If the text is in a font other than usual, place the font command +% outside \charscale, not inside. +\ExplSyntaxOn +\DeclareDocumentCommand \charscale { s O{1} m } + { + % Allows empty or blank to be used, and still provide default values: + \ifthenelse{\equal{#2}{}\OR\equal{#2}{\space}}{\def\@myargs{1}}{\def\@myargs{#2}} + \StrDel{\@myargs}{\space}[\@myargsns] % needs {\space} not { } + \StrCut{\@myargsns}{,}{\@myscalet}{\@mycoord} + \ifthenelse{\equal{\@myscalet}{}}{\def\@myscale{1}}{\def\@myscale{\@myscalet}} + \FPmax{\@myscale}{\@myscale}{0.5}% not permitted below this scale + \StrCut{\@mycoord}{,}{\@myxt}{\@myyt} + \ifthenelse{\equal{\@myxt}{}\OR\equal{\@myxt}{0}}{\def\@myx{0pt}}{\def\@myx{\@myxt}} + \ifthenelse{\equal{\@myyt}{}\OR\equal{\@myyt}{0}}{\def\@myy{0pt}}{\def\@myy{\@myyt}} + \IfBooleanTF{#1} + {% starred + \ifvmode\else\unskip\fi% + \stake\makebox[0pt][l]{\smash{\hspace{\@myx}\raisebox{\@myy}{\scalebox{\@myscale}{#3}}}}% + }{% unstarred + \stake\makebox[0pt][l]{\smash{\hspace{\@myx}\raisebox{\@myy}{\scalebox{\@myscale}{#3}}}}% + \smash{\phantom{\scalebox{\@myscale}{#3}}}% + } + } +\ExplSyntaxOff +%% + + + + +%% +% If you really must change the font size and baselineskip on a paragraph basis, +% then use an environment. For example, the text on your Copyright page might +% be smaller (and less baselineskip) than normal. +% The following environment takes an optional argument, which is the scale +% of font size and baselineskip, relative to normal. Note that both size +% and skip are scaled together. The default is 1, meaning no change. +% To get the rough equivalent of traditional \footnotesize, use 0.83 scale. +% Example: +% \begin{parascale}[0.83] +% This text is like old footnotesize. It can go on for many lines.\par +% Be sure to end with the paragraph ending.\par +% You may need to manipulate whether anything indents.\par +% \end{parascale} +% Normally you should NOT use this environment within the main text, +% as it will upset the baselineskip there. If you have to do that for +% a special effect, then use \vspace{} before and after the environment, +% so that the following normalsize text is re-aligned. You'll have to +% do the calculations yourself. +\newenvironment{parascale}[1][1] +{\begingroup% +\FPmax{\my@tempDetailsNum}{#1}{0.5}% must be at least half normal. +\FPmul{\my@tempDetailsFontNum}{\my@tempDetailsNum}{\Current@FontSizeNum}% +\FPround{\my@tempDetailsFontNum}{\my@tempDetailsFontNum}{2}% +\FPmul{\my@tempDetailsSkipNum}{\my@tempDetailsNum}{\Current@BaselineSkipNum}% +\FPround{\my@tempDetailsSkipNum}{\my@tempDetailsSkipNum}{2}% +\fontsize{\my@tempDetailsFontNum pt}{\my@tempDetailsSkipNum pt}\selectfont}% +{\endgroup} +% +%% +% Environment toc (alternative table of contents): +% optional argument: additional vspace after each \tocitem entry. +% required: LR margin increase, to narrow the table (0pt = full textwidth). +\newlength\@tocnumwid +\newlength\@tocskip +\newenvironment{toc}[2][0]% +{% + \begin{adjustwidth}{#2}{#2}\begingroup% + \setlength\parindent{0pt}% + \setlength\@tocnumwid{\widthof{00.~}}% + \global\@tocnumwid=\@tocnumwid% + \setlength\@tocskip{#1\nbs}% + \global\@tocskip=\@tocskip% +}{% + \endgroup\end{adjustwidth}\par% +}% +%% \tocitem[number]{description}{page} provides a one-line table entry in toc. +% optional number might be chapter number. Can use ~ to offset. +% unstarred: distance between description and page is not decorated. +% starred (better): distance between description and page has dotted line. +\newcommand\tocitem{\@ifstar\@tocitemst\@tocitemns} +\newcommand\@tocitemst[3][]{% + \ifthenelse{\equal{#1}{}}{}{% + \ifthenelse{\equal{#1}{~}}{% + \makebox[\@tocnumwid][l]{~}% + }{% + \makebox[\@tocnumwid][l]{#1.}% + }% + }% + #2\,% + \dotfill% + \,#3\par\vspace{\@tocskip}% +}% +% +\newcommand\@tocitemns[3][]{% + \ifthenelse{\equal{#1}{}}{}{% + \ifthenelse{\equal{#1}{~}}{% + \makebox[\@tocnumwid][l]{~}% + }{% + \makebox[\@tocnumwid][l]{#1.}% + }% + }% + #2% + \hfill% + #3\par\vspace{\@tocskip}% +}% +%% end toc and \tocitem. +%% +%% legalese environment. Certain info, such as Copyright page, customarily is +% neither justified nor hyphenated. Can be used wherever desired, of course. +\newenvironment{legalese} +{\raggedright\hyphenpenalty=10000\exhyphenpenalty=10000} +{} +%% poem environment. Optional argument is left margin. +\newenvironment{poem}[1][0pt] +{\begin{adjustwidth}{#1}{0pt}% +\raggedright\hyphenpenalty=10000\exhyphenpenalty=10000} +{\end{adjustwidth}\par} +%% +\gdef\hangleft#1{% places content to left of usual position. + \newlength\@temphangl% + \setlength\@temphangl{\widthof{#1}}% + \stake\hspace{-\@temphangl}#1% +} +%% +% \showlength[decimal places]{length}{units} +% Returns the length as a string with the units, but does not change the length. +% length is any existing length +% units may be pt, bp, mm, cm, in +% decimal places for rounding (0=integer, 1=one decimal point, etc.) +% Example: \showlength[3]{17bp}{in} returns 0.236in +\newlength{\temp@showlength} +\newcommand\showlength[3][]{% + \setlength\temp@showlength{#2}% + \def\temp@lengthnum{\strip@pt\temp@showlength}% + \ifthenelse{\equal{#3}{bp}}{% + \FPmul{\temp@lengthnum}{\temp@lengthnum}{0.99626401}% + }{}% + \ifthenelse{\equal{#3}{mm}}{% + \FPmul{\temp@lengthnum}{\temp@lengthnum}{0.351459804}% + }{}% + \ifthenelse{\equal{#3}{cm}}{% + \FPmul{\temp@lengthnum}{\temp@lengthnum}{0.0351459804}% + }{}% + \ifthenelse{\equal{#3}{in}}{% + \FPmul{\temp@lengthnum}{\temp@lengthnum}{0.013837}% + }{}% + \ifthenelse{\equal{#1}{}}{}{\FPround{\temp@lengthnum}{\temp@lengthnum}{#1}}% + \temp@lengthnum#3% +} +%% end \showlength + + +%% \squeeze{} and \crush{} slightly shrink the horizonal dimension of the +% enclosed text. May span paragraphs. Emergency only! No compounding. +\long\gdef\squeeze#1{{\AddFontFeature{FakeStretch=0.99}#1}} +\long\gdef\crush#1{{\AddFontFeature{FakeStretch=0.98}#1}} +%% + + +%% \lnum for lining numbers. +\gdef\lnum#1{{\AddFontFeature{Numbers=Lining}#1}} +%% + + +%% superscripts and subscripts +\let\subs\relax +\let\sups\relax +\let\textsuperscript\relax +\let\textsubscript\relax +\newlength\@hoAhl % Measures the height of these characters in the current font. +% Perhaps superscripts and subscripts (scientific) are in the font, or not. +% Problem: The best fonts have these characters at size/weight designed +% to mingle with normal size. But many fonts merely scaled characters, +% which will be too light at the small size. +% The unstarred version of these commands use the Open Type features when +% they are present, then faking (auto scale/raise) if features not present. +% The starred version just fakes, without regard for features. +% + +% Note that the effect of these commands continues, not just one-shot: +\gdef\realmarker{\toggletrue{@realmarker}} % anywhere in text +\gdef\fakemarker{\togglefalse{@realmarker}} % anywhere in text +%% +\ExplSyntaxOn +% +\DeclareDocumentCommand \sups { m } + {% + \iftoggle{@realmarker}{% + \fontspec_if_feature:nTF {sups}{% + \ifvmode\else\unskip\fi{\AddFontFeature{VerticalPosition=Superior}\smash{#1}}% + }{% + \setlength\@hoAhl{\heightof{Ahl}}% + \ifvmode\else\unskip\fi\charscale[0.7,0pt,0.5\@hoAhl]{#1}% + }% + }{% + \setlength\@hoAhl{\heightof{Ahl}}% + \ifvmode\else\unskip\fi{\basefont\AddFontFeature{Numbers=Lining}\charscale[0.7,0pt,0.5\@hoAhl]{#1}}% + }% + }% end \sups +% +\DeclareDocumentCommand \subs { m } + {% + \iftoggle{@realmarker}{% + \fontspec_if_feature:nTF {sinf}{% + \ifvmode\else\unskip\fi{\AddFontFeature{VerticalPosition=ScientificInferior}\smash{#1}}% + }{% + \fontspec_if_feature:nTF {subs}{% + \ifvmode\else\unskip\fi{\AddFontFeature{VerticalPosition=Inferior}\smash{#1}}% + }{% + \setlength\@hoAhl{\heightof{Ahl}}% + \ifvmode\else\unskip\fi\charscale[0.7,0pt,-0.2\@hoAhl]{#1}% + }% + }% + }{% + \setlength\@hoAhl{\heightof{Ahl}}% + \ifvmode\else\unskip\fi{\basefont\AddFontFeature{Numbers=Lining}\charscale[0.7,0pt,-0.2\@hoAhl]{#1}}% + }% + }% end \subs +% +\ExplSyntaxOff +%% +\let\textsuperscipt\sups\relax +\let\textsubscript\subs\relax +%% + + + +%% +%% End of file `novel-TextMacros.sty'. + + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-glyphtounicode.tex b/Master/texmf-dist/tex/lualatex/novel/novel-glyphtounicode.tex new file mode 100644 index 00000000000..62a53374ba5 --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-glyphtounicode.tex @@ -0,0 +1,88 @@ +%% +%% This is file `novel-glyphtounicode.tex', part of class `novel'. +%% Copyright 2017 Robert Allgeyer. +%% +%% Additional glyph to unicode lookups, for Open Type ligatures. +%% +%% This file may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% +\ProvidesFile{novel-gyphtounicode.tex}% +[2017/03/01 v1.0.6 LaTeX file (additional glyph to unicode)] +%% + + +\begingroup +\catcode`\_=12 % so that underscore can be used in ligature names + + +\pdfglyphtounicode{f_f}{0066 0066} +\pdfglyphtounicode{f_i}{0066 0069} +\pdfglyphtounicode{f_l}{0066 006C} +\pdfglyphtounicode{f_f_i}{0066 0066 0069} +\pdfglyphtounicode{f_f_l}{0066 0066 006C} + +\pdfglyphtounicode{f_j}{0066 006A} +\pdfglyphtounicode{f_f_j}{0066 0066 006A} + +\pdfglyphtounicode{f_t}{0066 0074} +\pdfglyphtounicode{f_f_t}{0066 0066 0074} + +\pdfglyphtounicode{f_b}{0066 0062} +\pdfglyphtounicode{f_f_b}{0066 0066 0062} + +\pdfglyphtounicode{f_k}{0066 006B} +\pdfglyphtounicode{f_f_k}{0066 0066 006B} + +\pdfglyphtounicode{f_h}{0066 0068} +\pdfglyphtounicode{f_f_h}{0066 0066 0068} + +\pdfglyphtounicode{g_g}{0067 0067} + +\pdfglyphtounicode{s_s}{0073 0073} +\pdfglyphtounicode{s_t}{0073 0074} +\pdfglyphtounicode{t_t}{0074 0074} +\pdfglyphtounicode{c_t}{0063 0074} + +\pdfglyphtounicode{c_h}{0063 0068} +\pdfglyphtounicode{c_k}{0063 006B} +\pdfglyphtounicode{t_z}{0074 007A} + +\pdfglyphtounicode{Q_y}{0051 0079} +\pdfglyphtounicode{Q_u}{0051 0075} +\pdfglyphtounicode{Q_u_i}{0051 0075 0069} + +\pdfglyphtounicode{T_h}{0054 0068} +\pdfglyphtounicode{Tcaron_h}{0164 0068} +\pdfglyphtounicode{Tcommaaccent_h}{0162 0068} + +\pdfglyphtounicode{longs_longs}{017F 017F} +\pdfglyphtounicode{longs_h}{017F 0068} +\pdfglyphtounicode{longs_i}{017F 0069} +\pdfglyphtounicode{longs_longs_i}{017F 017F 0069} +\pdfglyphtounicode{longs_l}{017F 006C} +\pdfglyphtounicode{longs_t}{017F 0074} + +\pdfglyphtounicode{exclam_exclam}{0021 0021} +\pdfglyphtounicode{question_question}{003F 003F} +\pdfglyphtounicode{exclam_question}{0021 003F} +\pdfglyphtounicode{question_exclam}{003F 0021} + +\pdfglyphtounicode{uni3097}{3097} +\pdfglyphtounicode{uni3098}{3098} + + + + +\endgroup + + + +% End of file `novel-glyphtounicode.tex'. + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-microtype.cfg b/Master/texmf-dist/tex/lualatex/novel/novel-microtype.cfg new file mode 100644 index 00000000000..e00ec591fae --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-microtype.cfg @@ -0,0 +1,251 @@ +%% +%% This is file `novel-microtype.cfg', modified for `novel' document class. +%% +%% Original notice from `microtype.cfg' follows. +%% Same license for `novel-microtype.cfg'. +%% +%% ------------------------------------------------------------------------ +%% +%% This work may be distributed and/or modified under the conditions of the +%% LaTeX Project Public License, either version 1.3c of this license or (at +%% your option) any later version. The latest version of this license is in: +%% http://www.latex-project.org/lppl.txt, and version 1.3c or later is part +%% of all distributions of LaTeX version 2005/12/01 or later. +%% +%% ------------------------------------------------------------------------ +%% +%% When modifying this file, also change the identification line below. +%% ------------------------------------------------------------------------ +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{novel-microtype.cfg} + [2017/03/01 v1.0.6 LaTeX file (microtype configuration file for novel class)] + +%%% ----------------------------------------------------------------------- +%%% FONT SETS + +\DeclareMicrotypeSet{all} + { } + +\DeclareMicrotypeSet{allmath} + { } + +\DeclareMicrotypeSet{alltext} + { } + +\DeclareMicrotypeSet{allmath-nott} + { family = {rm*,sf*} } + +\DeclareMicrotypeSet{alltext-nott} + { family = {rm*,sf*} } + +\DeclareMicrotypeSet{basicmath} + { family = {rm*,sf*}, series = {md*} } + +\DeclareMicrotypeSet{basictext} + { family = {rm*,sf*}, series = {md*}, } + +\DeclareMicrotypeSet{smallcaps} + { shape = {sc*,si,scit} } + +\DeclareMicrotypeSet{normalfont} + { font = */*/*/*/* } + +%%% ----------------------------------------------------------------------- +%%% DEFAULT SETS + +\DeclareMicrotypeSetDefault[protrusion]{alltext} +\DeclareMicrotypeSetDefault[expansion] {basictext} +\DeclareMicrotypeSetDefault[spacing] {basictext} +\DeclareMicrotypeSetDefault[kerning] {alltext} +\DeclareMicrotypeSetDefault[tracking] {smallcaps} + +%%% ----------------------------------------------------------------------- +%%% FONT VARIANTS AND ALIASES + +\DeclareMicrotypeVariants{x,j,w,a,d,0,1} + +\DeclareMicrotypeAlias{lmr} {Latin Modern Roman} +\DeclareMicrotypeAlias{lmm} {Latin Modern Math} + +%%% ----------------------------------------------------------------------- +%%% INTERACTION WITH THE `babel' PACKAGE + +\DeclareMicrotypeBabelHook + {english,UKenglish,british,USenglish,american} + {kerning=, spacing=nonfrench} + +\DeclareMicrotypeBabelHook + {french,francais,acadian,canadien} + {kerning=french, spacing=} + +\DeclareMicrotypeBabelHook + {turkish} + {kerning=turkish, spacing=} + +%%% ----------------------------------------------------------------------- +%%% CHARACTER INHERITANCE + +\DeclareCharacterInheritance + { encoding = * } + { A = {\`A,\'A,\^A,\~A,\"A,\r A,\k A,\u A}, + a = {\`a,\'a,\^a,\~a,\"a,\r a,\k a,\u a}, + C = {\'C,\c C,\v C}, + c = {\'c,\c c,\v c}, + D = {\v D,\DH}, + d = {\v d,\dj}, + E = {\`E,\'E,\^E,\"E,\k E,\v E}, + e = {\`e,\'e,\^e,\"e,\k e,\v e}, + G = {\u G}, + g = {\u g}, + I = {\`I,\'I,\^I,\"I,\.I}, + i = {\`i,\'i,\^i,\"i,\i}, + L = {\L,\'L,\v L}, + l = {\l,\'l,\v l}, + N = {\'N,\~N,\v N}, + n = {\'n,\~n,\v n}, + O = {\O,\`O,\'O,\^O,\~O,\"O,\H O}, + o = {\o,\`o,\'o,\^o,\~o,\"o,\H o}, + R = {\'R,\v R}, + r = {\'r,\v r}, + S = {\'S,\c S,\v S}, % \SS + s = {\'s,\c s,\v s}, + T = {\c T,\v T}, + t = {\c t,\v t}, + U = {\`U,\'U,\^U,\"U,\H U,\r U}, + u = {\`u,\'u,\^u,\"u,\H u,\r u}, + Y = {\'Y,\"Y}, + y = {\'y,\"y}, + Z = {\'Z,\.Z,\v Z}, + z = {\'z,\.z,\v z}, + } + +%%% ----------------------------------------------------------------------- +%%% TRACKING/LETTERSPACING + +\SetTracking + [ name = default, + no ligatures = {f, T} ] + { encoding = * } + { } + +%%% ----------------------------------------------------------------------- +%%% EXPANSION + +\SetExpansion + [ name = default ] + { encoding = * } + { + A = 500, a = 700, + \AE = 500, \ae = 700, + B = 700, b = 700, + C = 700, c = 700, + D = 500, d = 700, + E = 700, e = 700, + F = 700, + G = 500, g = 700, + H = 700, h = 700, + K = 700, k = 700, + M = 700, m = 700, + N = 700, n = 700, + O = 500, o = 700, + \OE = 500, \oe = 700, + P = 700, p = 700, + Q = 500, q = 700, + R = 700, + S = 700, s = 700, + U = 700, u = 700, + W = 700, w = 700, + Z = 700, z = 700, + 2 = 700, + 3 = 700, + 6 = 700, + 8 = 700, + 9 = 700, + } + + + +%%% ----------------------------------------------------------------------- +%%% PROTRUSION + +\SetProtrusion + [ name = default ] + { encoding = * } + { + A = {50,50}, + \AE = {50,50}, + F = { ,50}, + J = {50, }, + K = { ,50}, + L = { ,50}, + T = {50,50}, + V = {50,50}, + W = {50,50}, + X = {50,50}, + Y = {50,50}, + k = { ,50}, + r = { ,50}, + v = {50,50}, + w = {50,50}, + x = {50,50}, + y = { ,50}, + 1 = {50,50}, + 4 = {50,50}, + 7 = {50,50}, + . = { ,200}, + {,}= { ,200}, + : = { ,200}, + ; = { ,200}, + ! = { ,100}, + ? = { ,100}, + @ = {50,50}, + ~ = {200,200}, + \% = {50,50}, + * = {200,200}, + + = {200,200}, + ( = {100, }, + ) = { ,200}, + / = {100,200}, + - = {200,200}, + \textendash = {200,200}, \textemdash = {150,150}, + \textquoteleft = {200, }, \textquoteright = { ,200}, + \textquotedblleft = {200, }, \textquotedblright = { ,200}, + } + + +\SetProtrusion + [ name = it-default, ] + { encoding = * , + shape = {it,sl} } + { + . = { ,500}, + {,}= { ,500}, + : = { ,300}, + ; = { ,300}, + & = {50,50}, + \% = {100, }, + * = {200,200}, + + = {150,200}, + @ = {50,50}, + ~ = {150,150}, + ( = {200, }, + ) = { ,200}, + / = {100,200}, + - = {300,300}, + \textendash = {200,200}, \textemdash = {150,150}, + \textquoteleft = {400,200}, \textquoteright = {400,200}, + \textquotedblleft = {400,200}, \textquotedblright = {400,200}, + \textbackslash = {100,200}, + \quotesinglbase = {300,700}, \quotedblbase = {400,500}, + \guilsinglleft = {400,400}, \guilsinglright = {300,500}, + \guillemotleft = {300,300}, \guillemotright = {300,300}, + \textexclamdown = {100, }, \textquestiondown = {200, }, + \textbraceleft = {200,100}, \textbraceright = {200,200}, + } + + + +\endinput +%% +%% End of file `novel-microtype.cfg'. diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-pdfx.sty b/Master/texmf-dist/tex/lualatex/novel/novel-pdfx.sty new file mode 100644 index 00000000000..36f7bbb67ff --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-pdfx.sty @@ -0,0 +1,523 @@ +%% +%% This is file `novel-pdfx.sty', part of `novel' document class. +%% +%% Copyright (c) 2017, Robert Allgeyer. +%% +%% This file may be distributed and/or modified under the conditions +%% of the LaTeX Project Public License, either version 1.3c of this +%% license or (at your option) any later version. The latest version +%% of this license is in: +%% +%% http://www.latex-project.org/lppl.txt +%% +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% ----------------------------------------------------------------------------- +%% +%% File `novel-pdfx.sty' uses code, directly copied or modified, +%% from file `pdfx.sty', part of LaTeX package `pdfx': Copyright (c) 2015, +%% CV Radhakrishnan, Han The Thanh, Ross Moore, Peter Selinger. +%% Licensed LPPL 1.2+. +%% +%% ----------------------------------------------------------------------------- +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{novel-pdfx.sty} + [2017/03/01 v1.0.6 LaTeX file (PDF/X support for novel class)] +% This package supports, and is part of, class `novel'. +% No support for anything but LuaLaTeX. + + +%% +%% This file is loaded \AtEndPreamble. +%% + + +% +% Hyperref options for PDF/X with LuaTeX: +\def\pdfx@pdfX@opts@luatex{% + draft,pdftex,pdfpagemode=UseNone,bookmarks=false,hyperfootnotes=false,% + hyperindex=false,implicit=false,pdfversion=1.\the\pdfminorversion,% + pdfpagelabels=true,pageanchor=false,pdfstartview=} +% +\RequirePackage[\pdfx@pdfX@opts@luatex]{hyperref} +% +\hypersetup{pdfencoding=auto} +\expandafter\ifx\csname KV@Hyp@psdextra\endcsname\relax\else + \hypersetup{psdextra} +\fi +\Hy@bookmarksfalse +% +\newif \if@gottitle \@gottitlefalse % refers to PDF File Data +% Was \title{} called prior to this step? If so: +\ifthenelse{\equal{\@title}{} \OR \equal{\@title}{ }}{}{\@gottitletrue} +% +% Sanity check: If title is missing at this step, then compliance must be off: +\ifpdfx@isOFF\else + \if@gottitle\else + \ClassError{novel}{PDF/X requires \string\title\space first}% + {Unless \string\SetPDFX\space is off, must use \string\title\space ^^J% + before using \string\SetPDFX.^^J} + \fi +\fi +% +\if@gottitle\else + \ClassWarning{novel}{Your file has been compiled without standard^^J % + PDF internal metadata, such as the title. This is allowable, and in ^^J % + some cases desirable. But in most cases it is not what you intended. ^^J % + If you want title and other metadata to be in PDF internal metadata, ^^J % + then you must place them prior to the \string\SetPDFX.^^J} +\fi +% +\expandafter\ifx\csname pdfresetpageorigin\endcsname\relax\else + \pdfresetpageorigin=0 +\fi +\edef\pdfcreationdate{\pdfcreationdate}% +\let\pdfx@mdfivesum\pdf@mdfivesum +% + + + + +%% CALCULATE AND SPECIFY CROPBOX AND TRIMBOX +%% ----------------------------------------------------------------------------- +%% +% The MediaBox is automatically provided, so there is no need to write +% MediaBox in /pdfInfo (because it would be a duplicate). +% TrimBox is always necessary for PDF/X. +% Although CropBox is not necessary, it seems that it is often written +% by professional PDF software. For that reason, and for proper centering +% of TrimBox when MediaBox is larger, CropBox is created (= MediaBox). +% +\newcommand\my@MWnum{\strip@pt\New@MediaWidth} +\FPmul{\my@MWnum}{\my@MWnum}{0.99626401} +\FPround{\my@MWnum}{\my@MWnum}{3} +\FPclip{\my@MWnum}{\my@MWnum} +\newcommand\my@MHnum{\strip@pt\New@MediaHeight} +\FPmul{\my@MHnum}{\my@MHnum}{0.99626401} +\FPround{\my@MHnum}{\my@MHnum}{3} +\FPclip{\my@MHnum}{\my@MHnum} +\newcommand\my@TWnum{\strip@pt\New@TrimWidth} +\FPmul{\my@TWnum}{\my@TWnum}{0.99626401} +\FPround{\my@TWnum}{\my@TWnum}{3} +\newcommand\my@THnum{\strip@pt\New@TrimHeight} +\FPmul{\my@THnum}{\my@THnum}{0.99626401} +\FPround{\my@THnum}{\my@THnum}{3} +% +\FPsub{\my@TWorigin}{\my@MWnum}{\my@TWnum} +\FPmul{\my@TWorigin}{\my@TWorigin}{0.5} +\FPround{\my@TWorigin}{\my@TWorigin}{3} +\FPadd{\my@TWcorner}{\my@TWorigin}{\my@TWnum} +\FPround{\my@TWcorner}{\my@TWcorner}{3} +\FPsub{\my@THorigin}{\my@MHnum}{\my@THnum} +\FPmul{\my@THorigin}{\my@THorigin}{0.5} +\FPround{\my@THorigin}{\my@THorigin}{3} +\FPadd{\my@THcorner}{\my@THorigin}{\my@THnum} +\FPround{\my@THcorner}{\my@THcorner}{3} +% +\FPclip{\my@TWorigin}{\my@TWorigin} +\FPclip{\my@TWcorner}{\my@TWcorner} +\FPclip{\my@THorigin}{\my@THorigin} +\FPclip{\my@THcorner}{\my@THcorner} +% +\newcommand\novel@CropBox{% + \if@cropview% + /CropBox[\my@TWorigin\space\my@THorigin\space\my@TWcorner\space\my@THcorner]% + \else% + /CropBox[0\space0\space\my@MWnum\space\my@MHnum]% + \fi% +} +% +\newcommand\novel@TrimBox{% + /TrimBox[\my@TWorigin\space\my@THorigin\space\my@TWcorner\space\my@THcorner]% +} +% +\begingroup\edef\next{% +\endgroup\pdfpageattr{\novel@CropBox^^J\novel@TrimBox}}\next +% +%% End calculate and specify TrimBox. + + + +%% DISABLE HYPERLINKS AND BOOKMARKS +%% ----------------------------------------------------------------------------- +% +% Files for PDF/X cannot have hyperlinks. If your document has any, +% they will be functionally disabled. However, it is still necessary +% to ensure that you do not specify them in the wrong color space. +% Since `novel' class disallows any kind of color, `xcolor' is loaded with +% `monochrome' or `gray' option, prior to loading `hyperref'. +% +% Your text will be K black, rather than CMYK `rich black'. This is best. +% If you use a grayscale image anywhere, ask your print service whether it may +% be directly placed as grayscale (and they will convert to halftone) +% or whether you must convert it to halftone yourself, and place it that way. +% +% Note that LaTeX cannot detect any erroneous placement of a color image. +% +% The pagegrid package can only be used in draft mode, without PDF/X: +\gdef\@reallyOFF{off} +\@ifpackageloaded{pagegrid}{ + \if@useDraftMode\else + \ClassError{novel}{\string\pagegrid\space needs `draft' mode^^J}% + {\string\pagegrid\space may only be used with class option `draft'^^J}% + \fi + \ifpdfx@isOFF\else + \pdfx@isOFFtrue % cancels pdfx when using pagegrid (in draft mode) + \gdef\@reallyOFF{re-set to off by pagegrid package.} + \ClassWarning{novel}{You requested PDF/X compliance.^^J% + But you also used the \string\pagegrid\space package. Cannot have both.^^J% + So instead, your document was processed with \string\SetPDFX\space off.^^J% + Reason: The grid and text are in layers. No layers allowed.^^J}% + \fi +}{} + + + + +%% End disable hyperlinks and bookmarks. + + + +%% GENERAL PDF INTERNAL METADATA PREPARATION +%% ----------------------------------------------------------------------------- +% +% Create hashes that will be used for uuid data. Does not need to be fancy: +\edef\xmp@docid{\pdfx@mdfivesum{jobname.pdf}} +\edef\xmp@instid{\pdfx@mdfivesum{\pdfcreationdate}} +% +%% End general PDF in internal metadata preparation. + + + +%% PREPARATION OF XMP METADATA +%% ----------------------------------------------------------------------------- +%% Data prepared here, will later be inserted into the XMP packet template, +%% then the processed template will be incuded in the PDF. +%% XMP metadata is in utf-8 encoding. +% +% Make the XMP look pretty: +\def\pad@ii{\space\space} +\def\pad@iv{\pad@ii\pad@ii} +\def\pad@vi{\pad@iv\pad@ii} +\def\pad@viii{\pad@vi\pad@ii} +\def\pad@x{\pad@viii\pad@ii} +\def\pad@xii{\pad@x\pad@ii} +\def\pad@xiv{\pad@xii\pad@ii} +\def\pad@xvi{\pad@xiv\pad@ii} +\def\pad@xviii{\pad@xvi\pad@ii} +\def\pad@xx{\pad@xviii\pad@ii} +\def\pad@xxxii{\pad@xvi\pad@xvi} +\def\pad@lxiv{\pad@xxxii\pad@xxxii} +\def\pad@cxxviii{\pad@lxiv\pad@lxiv} +\def\pad@cclvi{\pad@cxxviii\pad@cxxviii} +\def\pad@dxii{\pad@cclvi\pad@cclvi} +% +% Frankly, I am not sure if all this rigamarole is necessary, but it works! +% Here, portions of XMP code are prepared. Later, they will be inserted +% into the XMP packet template. +\gdef\@titleString{ + \pad@vi<dc:title>^^J + \pad@viii<rdf:Alt>^^J + \pad@x<rdf:li xml:lang="x-default">\@title</rdf:li>^^J + \pad@viii</rdf:Alt>^^J + \pad@vi</dc:title>^^J +} +% +\ifthenelse{\equal{\@author}{}}{ + \gdef\@authorString{} +}{ + \gdef\@authorString{ + \pad@vi<dc:creator>^^J + \pad@viii<rdf:Bag>^^J + \pad@x<rdf:li>\@author</rdf:li>^^J + \pad@viii</rdf:Bag>^^J + \pad@vi</dc:creator>^^J + } +} +% +\def\@documentID{uuid:\xmp@docid} +\def\@instanceID{uuid:\xmp@instid} +% +\def\@pdfVersion{1.\the\pdfminorversion} +% +\ifpdfx@isOFF + \gdef\@verconfString{}% +\else + \gdef\@verconfString{ + \pad@vi<pdfx:GTS_PDFXVersion>\@PDFXversion</pdfx:GTS_PDFXVersion>^^J + \if@gotConformance + \pad@vi<pdfx:GTS_PDFXConformance>\@PDFXconformance</pdfx:GTS_PDFXConformance>^^J + \fi + } +\fi +% +\ifpdfx@isOFF + \gdef\@pdfidString{}% +\else + \gdef\@pdfidString{ + \pad@vi<pdfxid:GTS_PDFXVersion>\@PDFXversion</pdfxid:GTS_PDFXVersion>^^J + } +\fi +% +\ifthenelse{\equal{\@novelApplication}{} \OR \equal{\@novelApplication}{ }}{ + \gdef\@applicationString{}% +}{ + \gdef\@applicationString{\pad@vi<xmp:CreatorTool>\@novelApplication</xmp:CreatorTool>^^J}% +} +% +\ifthenelse{\equal{\@novelProducer}{} \OR \equal{\@novelProducer}{ }}{ + \gdef\@producerString{}% +}{ + \gdef\@producerString{\pad@vi<pdf:Producer>\@novelProducer</pdf:Producer>^^J}% +} +% +% Calculation of Dates and Times, which must be in a specific format. +% Each time you process to PDF, the current date/time is used, +% for all of the several metadata date/time strings. +\def\xmp@cDate{\pdfx@getYear} +{\catcode`\D=12 \catcode`\:=12 + \gdef\pdfx@getYear D:#1#2#3#4{\edef\pdfx@xYear{#1#2#3#4}\pdfx@getMonth} +} +\def\pdfx@getMonth#1#2{\edef\pdfx@xMonth{#1#2}\pdfx@getDay} +\def\pdfx@getDay#1#2{\edef\pdfx@xDay{#1#2}\pdfx@getHour} +\def\pdfx@getHour#1#2{\edef\pdfx@xHour{#1#2}\pdfx@getMin} +\def\pdfx@getMin#1#2{\edef\pdfx@xMin{#1#2}\pdfx@getSec} +\def\pdfx@getSec#1#2{\edef\pdfx@xSec{#1#2}\pdfx@getTZh} +\def\pdfx@getTZh{\futurelet\pdfx@next\pdfx@getTzh@branches} +% +{\catcode`\@=11 \catcode`\Z=12 \catcode`\+=12 \catcode`\-=12 % ends below +\gdef\pdfx@getTzh@branches{% + \ifx\pdfx@next Z\let\pdfx@getTzbranch\pdfx@getTznozone + \else\ifx\pdfx@next +\let\pdfx@getTzbranch\pdfx@getTzplus + \else\ifx\pdfx@next -\let\pdfx@getTzbranch\pdfx@getTzminus + \else\let\pdfx@getTzbranch\pdfx@getTzerror + \fi\fi\fi \pdfx@getTzbranch } +% +\catcode`\0=12 +\gdef\pdfx@getTznozone Z#1\pdfx@getTzend{% + \edef\pdfx@xTzh{+00}\edef\pdfx@xTzm{00}} +\gdef\pdfx@getTzplus +#1'#2'#3\pdfx@getTzend{% + \edef\pdfx@xTzh{+#1}\edef\pdfx@xTzm{#2}% + \ifx\relax#2\relax\def\pdfx@xTzm{00}\fi} +\gdef\pdfx@getTzminus -#1'#2'#3\pdfx@getTzend{% + \edef\pdfx@xTzh{-#1}\edef\pdfx@xTzm{#2}% + \ifx\relax#2\relax\def\pdfx@xTzm{00}\fi} +% +\expandafter\ifx\csname pdfcreationdate\endcsname\relax +\else + \expandafter\expandafter\expandafter\xmp@cDate\pdfcreationdate''\pdfx@getTzend + \xdef\pdfx@convDate{\pdfx@xYear\pdfx@xMonth\pdfx@xDay\pdfx@xHour + \pdfx@xMin\pdfx@xSec\pdfx@xTzh'\pdfx@xTzm'}% + \xdef\xmp@cDate{\pdfx@xYear-\pdfx@xMonth-\pdfx@xDay + T\pdfx@xHour:\pdfx@xMin:\pdfx@xSec\pdfx@xTzh:\pdfx@xTzm}% +\fi +}% End of \catcode`\@=11 etc. +\let\@modifyDate\xmp@cDate +\let\@createDate\xmp@cDate +\let\@metadataDate\xmp@cDate +% End dates and times. +% +%% End Prepare XMP metadata. + + + +%% WRITE THE XMP METADATA, UNLESS PDF/X IS OFF OR NO TITLE +%%------------------------------------------------------------------------------ +%% Inserts the prepared XMP metadata into XMP packet template, then writes +%% the result at the start of the PDF, right now, before the document. +% +\ifpdfx@isOFF\else + \if@gottitle + \begingroup + \makeatletter + \input{novel-xmppacket.sty} + \global\let\@xmpData\@xmpPacket % from the above file + \begingroup + \pdfcompresslevel=0 + \immediate\pdfobj stream attr {/Type /Metadata /Subtype /XML} {\@xmpData} + \pdfcatalog{/Metadata \the\pdflastobj\space 0 R} + \endgroup + \endgroup + % Creates external xml file, if requested: + \if@wantXMPasXML + \newwrite\file + \immediate\openout\file=\jobname-XMPasXML.xml + \immediate\write\file{<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>^^J} + \immediate\write\file{<!-- Ignore any message about not having style information. That is normal. -->^^J} + \immediate\write\file{<!-- Your viewer's font must be able to display any characters used in the XMP. -->^^J} + \immediate\write\file{<!-- For example, if your XMP has Cyrillic, then you need a Cyrillic-capable font. -->^^J} + \immediate\write\file{<!-- Any decorations (such as dashes in front of lines) are added by the viewer. Not in XMP. -->^^J} + \immediate\write\file{<!-- Note: xpacket begin="" contains the invisible 3-byte utf-8 BOM within its quotes. -->^^J} + \immediate\write\file{<!-- The above xml declaration, and these comments, are not part of the XMP packet. -->^^J} + \immediate\write\file{\@xmpData^^J} + \closeout\file + \fi + \fi +\fi +% +% +%% End write the XMP metadata. + + + +%% PREPARE PDF /INFO METADATA +%% ----------------------------------------------------------------------------- +%% PDF /Info is another form of metadata, older than XMP but still used. +%% It is NOT in utf-8 encoding. Depending on content, one of two encodings +%% will be automatically used: PDFDoc encoding if metadata uses only +%% characters within Latin-1, or utf-16 if metadata is not within Latin-1. +%% Either way, the input was utf-8 before processing. +%% In principle, PDF /Info is obsolete whenever PDF/X is used, because +%% XMP metadata is supposed to prevail through the printing workflow. +%% In practice, things don't always work that way. So, unless your PDF +%% has no metadata, essential items are re-encoded and copied to PDF /Info. +%% Other than encoding, XMP metadata and PDF /Info must be exactly the same. +%% All of those issues are handled automatically here. +%% The result is written at the end of the PDF, after the document. +% +% Macro for massaging encodings: +\def\@infotopdfstring#1#2{% + \ifx#2\@empty + \global\let#1\empty + \else + \begingroup + \hypersetup{pdfencoding=auto}% + \pdfstringdef#1{#2}% + \endgroup + \fi +} +% Now, massage the metadata: +\@infotopdfstring{\@infotitle}{\@title} +\@infotopdfstring{\@infoauthor}{\@author} +\@infotopdfstring{\@infoapplication}{\@novelApplication} +\@infotopdfstring{\@infoproducer}{\@novelProducer} +% +% Ensure Unicode glyph names: +\input{glyphtounicode.tex} % located in tex/generic/ +\input{novel-glyphtounicode.tex} % additional ligatures +\pdfgentounicode=1 +% End ensure Unicode glyph names. +% +%% End prepare PDF /Info. + + + +%% WRITE THE OUTPUT INTENT, UNLESS PDFX IS OFF. +%% ----------------------------------------------------------------------------- +% +\ifpdfx@isOFF\else + \begingroup + \edef\@pctchar{\expandafter\@gobble\string\%} % Escaped in TeX, not PDF. + \edef\@bchar{\expandafter\@gobble\string\\} % For use as escape, below. + \edef\0{\string\0} % Not sure why, but it works. + \edef\({\string\(} % PDF Catalog requires escaped parentheses. + \edef\){\string\)} % PDF Catalog requires escaped parentheses. + \catcode`\_ 12 % The *.icc file name might contain underscores. + % + \if@noembedicc\else + \IfFileExists{\@OIprofile}{% + \immediate\pdfobj stream attr{/N 4} file{\@OIprofile}% + \edef\OBJ@OI{\the\pdflastobj\space 0 R}% + }{% + \ClassError{novel}{Requested color profile *.icc not found}% + {Your Output Intent calls for a color profile *.icc file,^^J% + and you requested `embed-icc',^^J% + but the file could not be located.}% + } + \fi + \ifthenelse{\equal{\@OIcondition}{}}{ + \edef\@OIconditionString{}% + }{ + \edef\@OIconditionString{/OutputCondition (\@OIcondition)}% + } + \ifthenelse{\equal{\@OIidentifier}{}}{ + \edef\@OIidentifierString{}% + }{ + \edef\@OIidentifierString{/OutputConditionIdentifier (\@OIidentifier)}% + } + \ifthenelse{\equal{\@OIinfo}{}}{ + \edef\@OIinfoString{}% + }{ + \edef\@OIinfoString{/Info (\@OIinfo)}% + } + \ifthenelse{\equal{\@OIregistry}{}}{ + \edef\@OIregistryString{}% + }{ + \edef\@OIregistryString{/RegistryName (\@OIregistry)}% + } + \pdfcatalog{% + /OutputIntents [ <<% + /Type/OutputIntent% + /S/GTS_PDFX% + \@OIconditionString% + \@OIidentifierString% + \@OIinfoString% + \@OIregistryString% + \if@noembedicc\else/DestOutputProfile \OBJ@OI\fi% + >> ]% + }% + \endgroup +\fi +% +%% End write the output intent. + + + +%% DISABLE HYPERREF OPTIONS +%%------------------------------------------------------------------------------ +%% Prevents changes that will cause an incompatibility. +% +\Hy@DisableOption{pdfauthor}% +\Hy@DisableOption{pdftitle}% +\Hy@DisableOption{pdfsubject}% +\Hy@DisableOption{pdfcreator}% +\Hy@DisableOption{pdfcreationdate}% +\Hy@DisableOption{pdfmoddate}% +\Hy@DisableOption{pdfproducer}% +\Hy@DisableOption{pdfkeywords}% +% +%% End disable hyperref options. + + + +%% PREPARE PDF/Info +%% ----------------------------------------------------------------------------- +%% The \novel@PDFinfo command is called \AtBeginDocument. +% +\gdef\@novelPDFinfo{ % rather than \PDF@FinishDoc + \if@gottitle + \Hy@UseMaketitleInfos + \pdfinfo{ + \ifx\@infotitle\@empty\else /Title(\@infotitle)\fi + \ifx\@infoauthor\@empty\else /Author(\@infoauthor)\fi + \ifx\@infoapplication\@empty\else /Creator(\@infoapplication)\fi + \ifx\@pdfcreationdate\@empty + /CreationDate(D:\pdfx@convDate)% + \else + /CreationDate(\@pdfcreationdate)% + \fi + \ifx\@pdfmoddate\@empty + /ModDate(D:\pdfx@convDate)% + \else + /ModDate(\@pdfmoddate)% + \fi + \ifx\@infoproducer\@empty\else /Producer(\@infoproducer)\fi% + /Trapped/False% + \ifpdfx@isOFF\else + /GTS_PDFXVersion(\@PDFXversion)% + \if@gotConformance /GTS_PDFXConformance(\@PDFXconformance)\fi% + \fi + } + \fi +} +% +%% End prepare PDF/Info. + + + + +%% +%% End of file `novel-pdfx.sty'. + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel-xmppacket.sty b/Master/texmf-dist/tex/lualatex/novel/novel-xmppacket.sty new file mode 100644 index 00000000000..43f2df3502b --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel-xmppacket.sty @@ -0,0 +1,183 @@ +%% +%% This is file `novel-xmppacket.sty', part of class `novel'. +%% Copyright 2017 Robert Allgeyer. +%% +%% +%% This file may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% +%% ----------------------------------------------------------------------------- +%% +%% The descriptive properties of the namespaces, and the general format of XMP, +%% are public standards released by Adobe Systems Incorporated. +%% See http://www.adobe.com/products/xmp.html +%% +%% ----------------------------------------------------------------------------- +%% +%% +\ProvidesFile{novel-xmppacket.sty}% +[2017/03/01 v1.0.6 LaTeX file (novel XMP packet template)] +%% + + + +% This packet uses utf-8 BOM. +% The catcodes allow # _ ~ $ % & to be used as ordinary characters. +% The \edef and \let get rid of escape backslashes in front of those characters. +% NO COMMENTS AFTER THIS! Until \endgroup. + + + + + +\begingroup + +\lccode`\¤="FEFF +\lowercase{\gdef\@novelBOM{¤}} +\catcode`\#=12 +\catcode`\_=12 +\catcode`\~=12 +\catcode`\$=12 +\catcode`\%=12 +\catcode`\&=12 + +\edef\@pctchar{\expandafter\@gobble\string\%} +\let\%\@pctchar +\edef\@hashchar{\expandafter\@gobble\string\#} +\let\#\@hashchar +\edef\@ampchar{\expandafter\@gobble\string\&} +\let\&\@ampchar +\edef\@dollarchar{\expandafter\@gobble\string\$} +\let\$\@dollarchar +\edef\@underchar{\expandafter\@gobble\string\_} +\let\_\@underchar +\edef\@tildechar{\expandafter\@gobble\string\~} +\let\~\@tildechar + +\xdef\@xmpPacket{<?xpacket begin="\@novelBOM" id="W5M0MpCehiHzreSzNTczkc9d"?>^^J +<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:08:04\pad@iv\pad@iv">^^J +\pad@ii<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">^^J +\pad@iv<rdf:Description rdf:about=""^^J +\pad@viii xmlns:xmp="http://ns.adobe.com/xap/1.0/">^^J +\pad@vi<xmp:ModifyDate>\@modifyDate</xmp:ModifyDate>^^J +\pad@vi<xmp:CreateDate>\@createDate</xmp:CreateDate>^^J +\@applicationString +\pad@vi<xmp:MetadataDate>\@metadataDate</xmp:MetadataDate>^^J +\pad@iv</rdf:Description>^^J +\pad@iv<rdf:Description rdf:about=""^^J +\pad@viii xmlns:dc="http://purl.org/dc/elements/1.1/">^^J +\pad@vi<dc:format>application/pdf</dc:format>^^J +\@titleString +\@authorString +\pad@iv</rdf:Description>^^J +\pad@iv<rdf:Description rdf:about=""^^J +\pad@viii xmlns:xmpMM="http://ns.adobe.com/xap/1.0/mm/">^^J +\pad@vi<xmpMM:DocumentID>\@documentID</xmpMM:DocumentID>^^J +\pad@vi<xmpMM:InstanceID>\@instanceID</xmpMM:InstanceID>^^J +\pad@vi<xmpMM:RenditionClass>default</xmpMM:RenditionClass>^^J +\pad@vi<xmpMM:VersionID>1</xmpMM:VersionID>^^J +\pad@iv</rdf:Description>^^J +\pad@iv<rdf:Description rdf:about=""^^J +\pad@viii xmlns:pdf="http://ns.adobe.com/pdf/\@pdfVersion/">^^J +\@producerString +\pad@vi<pdf:Trapped>False</pdf:Trapped>^^J +\pad@iv</rdf:Description>^^J +\pad@iv<rdf:Description rdf:about=""^^J +\pad@viii xmlns:pdfx="http://ns.adobe.com/pdfx/\@pdfVersion/">^^J +\@verconfString +\pad@iv</rdf:Description>^^J +\pad@iv<rdf:Description rdf:about=""^^J +\pad@viii xmlns:pdfxid="http://www.npes.org/pdfx/ns/id/">^^J +\@pdfidString +\pad@iv</rdf:Description>^^J +\pad@iv<rdf:Description rdf:about=""^^J +\pad@viii xmlns:pdfaExtension="http://www.aiim.org/pdfa/ns/extension/"^^J +\pad@viii xmlns:pdfaSchema="http://www.aiim.org/pdfa/ns/schema#"^^J +\pad@viii xmlns:pdfaProperty="http://www.aiim.org/pdfa/ns/property#">^^J +\pad@vi<pdfaExtension:schemas>^^J +\pad@viii<rdf:Bag>^^J +\pad@x<rdf:li rdf:parseType="Resource">^^J +\pad@xii<pdfaSchema:namespaceURI>http://ns.adobe.com/pdf/\@pdfVersion/</pdfaSchema:namespaceURI>^^J +\pad@xii<pdfaSchema:prefix>pdf</pdfaSchema:prefix>^^J +\pad@xii<pdfaSchema:schema>Adobe PDF Schema</pdfaSchema:schema>^^J +\pad@xii<pdfaSchema:property>^^J +\pad@xiv<rdf:Seq>^^J +\pad@xvi<rdf:li rdf:parseType="Resource">^^J +\pad@xviii<pdfaProperty:category>internal</pdfaProperty:category>^^J +\pad@xviii<pdfaProperty:description>A name object indicating whether the document has been modified to include trapping information</pdfaProperty:description>^^J +\pad@xviii<pdfaProperty:name>Trapped</pdfaProperty:name>^^J +\pad@xviii<pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J +\pad@xvi</rdf:li>^^J +\pad@xiv</rdf:Seq>^^J +\pad@xii</pdfaSchema:property>^^J +\pad@x</rdf:li>^^J +\pad@x<rdf:li rdf:parseType="Resource">^^J +\pad@xii<pdfaSchema:namespaceURI>http://ns.adobe.com/pdfx/\@pdfVersion/</pdfaSchema:namespaceURI>^^J +\pad@xii<pdfaSchema:prefix>pdfx</pdfaSchema:prefix>^^J +\pad@xii<pdfaSchema:schema>PDF/X ID Schema</pdfaSchema:schema>^^J +\pad@xii<pdfaSchema:property>^^J +\pad@xiv<rdf:Seq>^^J +\pad@xvi<rdf:li rdf:parseType="Resource">^^J +\pad@xviii<pdfaProperty:category>internal</pdfaProperty:category>^^J +\pad@xviii<pdfaProperty:description>ID of PDF/X standard</pdfaProperty:description>^^J +\pad@xviii<pdfaProperty:name>GTS_PDFXVersion</pdfaProperty:name>^^J +\pad@xviii<pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J +\pad@xvi</rdf:li>^^J +\pad@xvi<rdf:li rdf:parseType="Resource">^^J +\pad@xviii<pdfaProperty:category>internal</pdfaProperty:category>^^J +\pad@xviii<pdfaProperty:description>Conformance level of PDF/X standard</pdfaProperty:description>^^J +\pad@xviii<pdfaProperty:name>GTS_PDFXConformance</pdfaProperty:name>^^J +\pad@xviii<pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J +\pad@xvi</rdf:li>^^J +\pad@xiv</rdf:Seq>^^J +\pad@xii</pdfaSchema:property>^^J +\pad@x</rdf:li>^^J +\pad@x<rdf:li rdf:parseType="Resource">^^J +\pad@xii<pdfaSchema:namespaceURI>http://ns.adobe.com/xap/1.0/mm/</pdfaSchema:namespaceURI>^^J +\pad@xii<pdfaSchema:prefix>xmpMM</pdfaSchema:prefix>^^J +\pad@xii<pdfaSchema:schema>XMP Media Management Schema</pdfaSchema:schema>^^J +\pad@xii<pdfaSchema:property>^^J +\pad@xiv<rdf:Seq>^^J +\pad@xvi<rdf:li rdf:parseType="Resource">^^J +\pad@xviii<pdfaProperty:category>internal</pdfaProperty:category>^^J +\pad@xviii<pdfaProperty:description>UUID based identifier for specific incarnation of a document</pdfaProperty:description>^^J +\pad@xviii<pdfaProperty:name>InstanceID</pdfaProperty:name>^^J +\pad@xviii<pdfaProperty:valueType>URI</pdfaProperty:valueType>^^J +\pad@xvi</rdf:li>^^J +\pad@xiv</rdf:Seq>^^J +\pad@xii</pdfaSchema:property>^^J +\pad@x</rdf:li>^^J +\pad@x<rdf:li rdf:parseType="Resource">^^J +\pad@xii<pdfaSchema:namespaceURI>http://www.npes.org/pdfx/ns/id/</pdfaSchema:namespaceURI>^^J +\pad@xii<pdfaSchema:prefix>pdfxid</pdfaSchema:prefix>^^J +\pad@xii<pdfaSchema:schema>PDF/X ID Schema</pdfaSchema:schema>^^J +\pad@xii<pdfaSchema:property>^^J +\pad@xiv<rdf:Seq>^^J +\pad@xvi<rdf:li rdf:parseType="Resource">^^J +\pad@xviii<pdfaProperty:category>internal</pdfaProperty:category>^^J +\pad@xviii<pdfaProperty:description>ID of PDF/X standard</pdfaProperty:description>^^J +\pad@xviii<pdfaProperty:name>GTS_PDFXVersion</pdfaProperty:name>^^J +\pad@xviii<pdfaProperty:valueType>Text</pdfaProperty:valueType>^^J +\pad@xvi</rdf:li>^^J +\pad@xiv</rdf:Seq>^^J +\pad@xii</pdfaSchema:property>^^J +\pad@x</rdf:li>^^J +\pad@viii</rdf:Bag>^^J +\pad@vi</pdfaExtension:schemas>^^J +\pad@iv</rdf:Description>^^J +\pad@ii</rdf:RDF>^^J +</x:xmpmeta>^^J +\pad@dxii +<?xpacket end="w"?>} +\endgroup + + +%% +%% End of file `novel-xmppacket.sty'. + diff --git a/Master/texmf-dist/tex/lualatex/novel/novel.cls b/Master/texmf-dist/tex/lualatex/novel/novel.cls new file mode 100644 index 00000000000..f39aa7fa09e --- /dev/null +++ b/Master/texmf-dist/tex/lualatex/novel/novel.cls @@ -0,0 +1,383 @@ +%% +%% This is file `novel.cls', part of class `novel'. +%% Copyright 2017 Robert Allgeyer. +%% anytthree [at] gmail.com +%% +%% This file may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either version 1.3c +%% of this license or (at your option) any later version. +%% The latest version of this license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3c or later is part of all distributions of LaTeX +%% version 2005/12/01 or later. +%% +%% +\NeedsTeXFormat{LaTeX2e}[1995/12/01] +% Actually needs LuaLaTeX, at least version 0.95 from TeXLive 2016. +\ProvidesClass{novel}[2017/03/01 v1.0.6 LaTeX document class] +%% + + +%% DESCRIPTION: +%% Class `novel' is designed for print fiction: novels or short stories. +%% It cannot be used for e-books or for journal publication. +%% It is not suitable for most non-fiction, because routine academic features +%% such as bibiography and automatic sectioning are defeated. +%% +%% There are pre-configured layouts for the most commonly used choices of +%% trim size (finished book width and height), and internal layout consistent +%% with fiction. The user can over-ride the pre-configured settings. +%% +%% The class will automatically create PDF/X compliant files upon request, +%% using a self-contained command structure. +%% +%% LuaLaTeX is required, and input files must be encoded utf-8. +%% +%% Fonts are loaded by luaotfload and fontspec, and massaged by microtype. +%% For best results, use modern Open Type fonts, or TrueType fonts. +%% +%% The Libertinus font family, a fork of [Linux] Libertine/Biolinum, +%% is the default. Actually, I recommend it! In addition, an included +%% custom font, NovelDeco.otf, is used for special purposes. +%% + + +%% REQUIRE LUATEX and do some preliminary setup. +%% ----------------------------------------------------------------------------- +%% These are not user settings. +% +\RequirePackage{ifluatex} % LuaTeX is required. Not XeTeX, dvips, or pdfTeX. +\RequirePackage{luatex85} % Needed for compatibility when using LuaTeX 0.95 etc. +\RequirePackage{pdftexcmds} % compatibility +\ifluatex + % New with TeXlive 2016. Removes unnecessary File Data: + \pdfvariable suppressoptionalinfo 511 % writes only ID to PDF Catalog +\else + \ClassError{novel}{Must compile with LuaLaTeX 0.95+}{Sorry, LuaLaTeX only.% + No pdfTeX, dvips, or XeTeX.} +\fi +% +\RequirePackage{etoolbox} % general good stuff +\RequirePackage{xifthen} % improved ifthenelse handling +\RequirePackage{xstring} % parses strings +\RequirePackage{fp} % used everywhere for math calculations +\FPmessagesfalse % eliminates numerous friendly messages from the log +% +\pdfminorversion=3 % might be reset later, depending on settings +\gdef\thepdfminorversion{\pdfminorversion} +% +\RequirePackage{silence} % Used here: +% hyperref draft mode is always on, even when novel is not in draft mode: +\WarningFilter{hyperref}{Draft mode on} % So, get rid of the hyperref warning. +% Prevent complaints about no protrusion list for cmr, cmm, etc. in decimal pts: +\WarningFilter{microtype}{I cannot find a protrusion list} % It's not there! +% +\RequirePackage[relative]{textpos} % for inserting images +\RequirePackage{noindentafter} % for unindented chapter and scene starts +\RequirePackage{calc} % allows length expression calculations +\RequirePackage{changepage} % block indents, etc. +\RequirePackage{atbegshi} % for one-page header changes. Also used by hyperref. +\RequirePackage{letltxmacro} % for re-defining some macros +\RequirePackage{magaz} % special treatment of first lines +\RequirePackage{changepage} % for adjusted text widths. Do not use strict! +\RequirePackage{xparse} % for writing cool-looking commands +% +% In addition, the following packages are required, but they are not loaded now. +% They must wait for something else to happen first. They will be loaded +% with suitable arguments, when the time comes: +% fontspec -- in novel-LayoutSettings.sty +% unicode-math -- in novel-LayoutSettings.sty +% eso-pic -- in novel-CalculateLayout.sty +% polyglossia -- in novel-FontDefaults.sty +% microtype -- in novel-FontDefaults.sty +% hyperref -- in novel-pdfx.sty +% fancyhdr -- in novel.HeadFootStyles.sty +% xcolor -- lower in this page +% adjustbox -- lower on this page +% eso-pic -- lower on this page +%% + + +%% Process document class options. +%% ----------------------------------------------------------------------------- +% Allowed option list: +% draft xml shademargins graytext greytext cropmarks cropview closecrop +% Yes, I realize that this could have been done another way: +\gdef\@mycol{\@classoptionslist} +\StrDel{\@mycol}{ }[\@mycola] +\StrDel{\@mycola}{,}[\@mycolb] +\StrDel{\@mycolb}{draft}[\@mycolc] +\StrDel{\@mycolc}{xml}[\@mycold] +\StrDel{\@mycold}{shademargins}[\@mycole] +\StrDel{\@mycole}{graytext}[\@mycolf] +\StrDel{\@mycolf}{greytext}[\@mycolg] +\StrDel{\@mycolg}{cropmarks}[\@mycolh] +\StrDel{\@mycolh}{cropview}[\@mycoli] +\StrDel{\@mycoli}{closecrop}[\@mycolj] +% +\gdef\@mycolzzz{\@mycolj} % modify if others added +\ifthenelse{\equal{\@mycolzzz}{}}{}{ + \ClassWarning{novel}{Unrecognized class option: \@mycolzzz\space^^J% + The unrecognized option was ignored!^^J}% +} +% +% If used, option `draft' shows overflow rule. +\newif \if@useDraftMode +\setlength\overfullrule{0pt} +\DeclareOption{draft}{ + \setlength\overfullrule{6pt} + \@useDraftModetrue + \ClassWarning{novel}{Compiled using draft mode. Not for final release!^^J} +} +% If used, option `xml' creates a file `\jobname-XMPasXML.xml` that contains +% the XMP metadata with an xml declaration and comments at top. +% Only works when \SetPDFX is not `off'. +\newif \if@wantXMPasXML +\DeclareOption{xml}{ + \@wantXMPasXMLtrue +} +\DeclareOption{xmp}{ % in case you mis-type. + \ClassError{novel}{No class option `xmp'. Want `xml' ?^^J}% + {There is no class option named `xmp'. It is `xml'.^^J} +} +% Option `shademargins' does just that. Ignored unless in draft mode. +% Does not matter if `graytext' option in use. +\newif \if@shademargins +\DeclareOption{shademargins}{ + \@shademarginstrue +} +% Option `graytext' allows text in grayscale. Images unaffected. +% If this option is not used, all text will be K black. +\newif \if@graytext +\DeclareOption{graytext}{ + \@graytexttrue +} +% For the Brits: +\DeclareOption{greytext}{ + \@graytexttrue +} +% Usually you do NOT want crop (trim) marks. Configurable by \SetCropMarks[]{}. +\newif \if@cropmarks +\DeclareOption{cropmarks}{ + \@cropmarkstrue +} +% The cropview sets PDF CropBox equal to TrimBox instead of MediaBox. +% Only makes a difference when MediaBox is larger than TrimBox. +% Ignored unless in draft mode. +\newif \if@cropview +\DeclareOption{cropview}{ + \@cropviewtrue +} +% With closecrop, the TrimSize and margins are re-sized, to preserve the +% live area, but with reduced margins on all sides (same for verso/recto). +% This option is available only in draft mode, and disables shademargins. +% The purpose is to create a PDF that is more easily read on a handheld device, +% so you can think about edits while traveling. It is NOT an e-book, since +% it has no hyperlinks and is missing some features that an e-book should have. +\newif \if@closecrop +\DeclareOption{closecrop}{ + \@cropviewtrue\@closecroptrue +} +%% Note that document size and normal font size are not class options. +%% They are set by commands in the Preamble, and have default values. +% +\ProcessOptions\relax +% Disable some options, unless in draft mode: +\if@useDraftMode\else + \global\@shademarginsfalse + \global\@cropviewfalse + \global\@closecropfalse +\fi +% +\if@cropview + \global\@cropmarksfalse +\fi +% +\if@closecrop + \global\@cropviewtrue + \global\@shademarginsfalse + \global\@cropmarksfalse +\fi +% +%% end class options + + + +%% Activate xcolor, adjustbox, and eso-pic: +%% ----------------------------------------------------------------------------- +% The final book must be monochrome (black and white only) for all text +% and vector graphics, unless option `graytext' is used. +% Vector graphics are discouraged, in any case. See Page 9. +% You can use grayscale (single channel, not RGB gray) raster images. +% In draft mode only, the `shademargins' option +% requires grayscale, so it is temporarily enabled. +\newif \if@grayenabled +% +\if@useDraftMode + \RequirePackage[gray,hyperref]{xcolor} % allows some layout checks + \global\@grayenabledtrue +\else + \if@graytext + \RequirePackage[gray,hyperref]{xcolor} % black/white book block + \global\@grayenabledtrue + \else + \RequirePackage[monochrome,hyperref]{xcolor} % black/white book block + \fi +\fi +% adjustbox and eso-pic cannot precede xcolor. +\RequirePackage{adjustbox} % for scaling and moving +\RequirePackage{eso-pic} % background effects in draft mode +% +%% end activate xcolor and adjustbox + + + +%% Temporary normal font size +%% ----------------------------------------------------------------------------- +%% This normalsize is temporary, so that packages can load without complaint. +%% It will be modified later, during layout calculations. +\def\Current@FontSizeNum{10} +\def\Current@BaselineSkipNum{13} +\def\normalsize{% + \@setfontsize\normalsize{\Current@FontSizeNum}{\Current@BaselineSkipNum}% +} +\normalsize +% +%% end temporary normal point size and baselineskip + + + +%% Define commands used for File Data, including PDF/X Settings. +%% ----------------------------------------------------------------------------- +%% As used here, `File Data' refers to PDF metadata as found in PDF/Info +%% and in XMP. This class does not write it to the Catalog. +%% Defines commands such as \title{}, not necessarily the same as other TeX. +\RequirePackage{novel-FileData} +% +%% + + +%% Physical Layout Commands and Settings. +%% ----------------------------------------------------------------------------- +%% Define commands that over-ride the class option pre-configured settings. +%% Variety of miscellaneous layout settings such as \parsep, \parindent, etc. +\RequirePackage{novel-LayoutSettings} +% +%% + + +%% Additional Preamble Settings and Commands. +%% ----------------------------------------------------------------------------- +%% +% Macros for use in document body: +\input{novel-TextMacros.sty} +% Standard `fancyhdr' header footer styles: +\input{novel-HeadFootStyles.sty} +% Chapter and Scene styles: +\input{novel-ChapterScene.sty} +% Image placement: +\input{novel-Images.sty} +% Footnotes and endnotes: +\input{novel-Footnotes.sty} +%% + + +%% \AtEndPreamble sets defaults and calculates layout +%% ----------------------------------------------------------------------------- +% +\AtEndPreamble{ + \makeatletter % Necessary. Why? Who knows. + \input{novel-CalculateLayout.sty} + \input{novel-FontDefaults.sty} + \input{novel-pdfx.sty} + \AtBeginShipout{\gdef\@fnafter{}} + \makeatother +} +%% + + +%% \AtBeginDocument finishes the setup +%% ----------------------------------------------------------------------------- +% +% Error if certain packages were requested in the Preamble. +% This macro is invoked \AtBeginDocument. +\newif \ifshutoffblock % part of incompatible package blocking +% +\AtBeginDocument{ % + \defaultfontfeatures{} % reset + % Any other fonts will use these defaults: + \defaultfontfeatures{% + SmallCapsFeatures={Renderer=Basic},Kerning=On,% + Ligatures=TeX,% + }% + % + % Find some useful measurements: + \gdef\@normalxheight{\heightof{x}} + \setlength\normalxheight{\@normalxheight} + \global\normalxheight=\normalxheight + \gdef\@normalXheight{\heightof{X}} + \setlength\normalXheight{\@normalXheight} + \global\normalXheight=\normalXheight + % Activate user choice of whether or not to indent after scenebreak commands: + \if@indentAfterScenebreak\else + \NoIndentAfterCmd{\scenebreak} + \NoIndentAfterCmd{\sceneline} + \NoIndentAfterCmd{\scenestars} + \fi + % + \@activateHeadFootStyles % in file `novel-HeadFootStyles.sty' + \@novelPDFinfo % in file `novel-pdfx.sty'. + % Commands that cannot be used after Preamble: + \let\indentAfterScenebreak\relax + \let\title\relax + \let\author\relax + \let\subtitle\relax + % Disallow incompatible packages: + \ifshutoffblock + \gdef\sorry@no#1{} + \else + \gdef\sorry@no#1{\@ifpackageloaded{#1}{% + \ClassError{novel}{Sorry, package `#1' cannot be used}% + {The `novel' class does not allow use of package `#1'.^^J% + You must remove it from the Preamble, and also remove its commands^^J% + from the body of your document. In rare cases, the offending package^^J% + was loaded by some other package.^^J}% + }{}% + } + \fi + % + \sorry@no{pdfx} + \sorry@no{xmpincl} + \sorry@no{hyperxmp} + \sorry@no{pdfxmult} + \sorry@no{inputenc} + \sorry@no{fontenc} + \sorry@no{showkeys} + \sorry@no{wrapfigure} + \sorry@no{wrapfig} + \sorry@no{float} + \sorry@no{morefloats} + \sorry@no{footmisc} + \sorry@no{footnote} + \sorry@no{manyfoot} + \sorry@no{caption} + \sorry@no{subcaption} + \sorry@no{multirow} + \sorry@no{tabu} + \sorry@no{tabularx} + \sorry@no{tabulary} + \sorry@no{array} + \sorry@no{booktabs} + \sorry@no{eqparbox} + \sorry@no{pdfpages} + \sorry@no{nth} + \sorry@no{engord} + \sorry@no{endnotes} +} +%% + + + +%% +%% End of file `novel.cls' + diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index 9841622d0c5..08adf17a050 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -439,7 +439,8 @@ my @TLP_working = qw( nimbus15 nkarta nlctdoc nmbib noconflict nodetree noindentafter noitcrul nolbreaks nomencl nomentbl nonfloat nonumonpart nopageno norasi-c90 normalcolor - nostarch notes notes2bib notespages notex-bst noto notoccite nowidow nox + nostarch notes notes2bib notespages + notex-bst noto notoccite novel nowidow nox nrc ntgclass ntheorem ntheorem-vn nuc nucleardata numberedblock numericplots numname numprint numspell nwejm oberdiek objectz obnov diff --git a/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc b/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc index f30b6bb27f3..4fcec2c5055 100644 --- a/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-publishers.tlpsrc @@ -96,6 +96,7 @@ depend nature depend navydocs depend nddiss depend ndsu-thesis +depend novel depend nwejm depend nih depend nihbiosketch diff --git a/Master/tlpkg/tlpsrc/novel.tlpsrc b/Master/tlpkg/tlpsrc/novel.tlpsrc new file mode 100644 index 00000000000..e69de29bb2d --- /dev/null +++ b/Master/tlpkg/tlpsrc/novel.tlpsrc |