Home

The vmargin Package

image

Contents

1. 2 3 4 133 headheight headsep footheight footskip setmargrb leftmargin topmargin rightmargin bottommargin headheight headsep footheight footskip unchanged 134 newcommand setmargrb 4 135 setmarginsrb 1 2 3 4 136 headheight headsep footheight footskip A brief plausability check h warning if leftmarg textwidth gt paperwidth resp if leftmarg rightmarg gt paperwidth v warning if topmarg textheight gt paperheight resp if topmarg bottommarg gt paperheight chk dimen err 137 def chk dimen 1 2 3 4 138 dimen0O 1 139 advance dimenO by 3 140 advance dimenO PaperWidth 141 dimenl 2 142 advance dimen1 by 4 143 advance dimeni headheight 144 advance dimeni headsep 145 advance dimen1 footskip 146 advance dimeni PaperHeight 147 chk dimen err 148 Make this work with both AT X 2 09 and EXTRX 2e 149 ifundefined PackageError 150 def chk dimen err 7 151 ifnum dimen0 gt z typeout vmargin Warning Horizontal dimensions 152 exceed paper width by the dimenO fi 153 ifnum dimen1 gt z typeout vmargin Warning Vertical dimensions 154 exceed paper height by the dimen1 fi 155 156 157 def chk dimen err 7 158 ifnum dimen0 gt z PackageError filename 159 Horizontal dimensions exceed paper width by the dimenO fi 160 ifnum dimen1 gt z PackageError filename 7 161 Vertical dimensions exceed paper height by
2. the dimeni fi 162 163 Defaults and ATRX 2 package options ignored for 2 09 164 setpapersize A4 165 def hf df1t 166 ifundefined DeclareOption 167 168 DeclareOption shiftmargins shiftmargins 169 DeclareOption portrait Landscapefalse 170 DeclareOption landscape Landscapetrue 171 DeclareOption nohf def hf df1t y 172 DeclareOption setps Current0ption 173 ProcessOptions relax process options in order of declaration 174 175 if y hf df1t 176 setmargnohfrb 35mm 20mm 25mm 15mm 177 else 178 setmarginsrb 35mm 20mm 25mm 15mm 12pt 11mm Opt 11mm 179 fi 180 package Change History 1 0 V1 8 General Created out of Vpage sty General Commented chk dimen re V2 2 18 June 1993 1 duced load on TRX sparameter stack changed chk dimen put V1 7 a conditional around references to General Changed file header 1 footheight V1 72 V1 9 General Fixed bug in setpapersize custom General Corrected spelling in com slg yo ae Ma hh shes See AUS Mee eee 1 MENG ty Mase Bae t V2 0 General Added support for TpX2e Changed references to Vmargin to vmargin EATfX2e package options paperwidth paperheight 1 introduced 0 5 1 V2 12 2 2b General Fixed documentation for setmargrb 04 1 General Changed into docstrip for V2 13 mat Improved documentation 1 General F
3. 10 5in po custom 74 def paper custom 1 2 PaperWidth 1 PaperHeight 2 po Compensates for the lin lin top left corner by either reducing the margins or hoffset voffset by lin This macro is only defined here if it is not already de fined 75 ifundefined margin offset 76 def margin offset 7 77 if shiftmargins 78 oddsidemargin 1in evensidemargin oddsidemargin topmargin oddsidemargin 79 hoffset z voffset z 80 else 81 oddsidemargin z evensidemargin z topmargin z 82 hoffset 1in voffset hoffset 83 fi 84 A new if as flag for when to use margins instead of hoffset voffset to compensate and a user command to set the flag 85 newif if shiftmargins 86 shiftmarginsfalse this MUST be default pageframe sty 87 def shiftmargins shiftmarginstrue Setting margins setmargins leftmargin topmargin textwidth textheight headheight headsep footheight footskip 88 newcommand setmargins 8 89 margin offset 90 advance oddsidemargin 1 91 advance evensidemargin PaperWidth paperwidth left 92 advance evensidemargin 1 width 93 advance evensidemargin 3 94 advance topmargin 2 95 textwidth 3 96 textheight 4 97 headheight 5 setmarginsrb setmargnohf setmargnohfrb setmarg setmargrb chk dimen 98 headsep 6 99 ifundefined footheight footheight 7 100 footskip 8 101 chk dimen 1 2 3 4 102 setmargins
4. by telling margin offset to initialise Xoffset to Oin and XXXmargin to lin This is what shiftmargins does If margin offset is already defined at the time vmargin is loaded it is NOT re defined Therefore if margin offset is defined before vmargin is loaded the above mentioned compensation can be replaced by a different mechanism In any case setmargXXX call margin offset and then expect that XXXmargin are set to use ful values Xoffset are not touched by setmargXXX margin offset should be defined in a separate file which is included before vmargin i e appears in the list of document substyles of the documentstyle command before vmargin Any better way of doing this grumble Example documentclass usepackage margins vmargin if margin offset is defined in a file called margins sty or with TRX 2 09 documentstyle margins vmargin 3 4 BIFX 2e This package now uses some of the new IATFX2e features for package programming It will still work with AT X 2 09 in which case the new features are not used IATRX2e unless in compatibility mode does not know footheight any more vmar gin does not set this variable if it does not exist and sets it if it does As footheight was not used by ATEX 2 09 all this has little significance BTEFX 2e now has the dimensions paperwidth paperheight which hold the size of the paper PaperWidth PaperHeight are copied into paperwidth paper
5. know 3 8 Summary new lengths PaperWidth read only PaperHeight read only new ifs ifLandscape read only new macros setpapersize lt orientation gt lt size gt setpapersize lt orientation gt custom lt width gt lt height gt lt orientation gt optional landscape or portrait default lt size gt A4 B5 lt width gt lt height gt actual dimensions of the paper setmargins leftmargin topmargin textwidth textheight headheight headsep footheight footskip setmarginsrb leftmargin topmargin rightmargin bottommargin headheight headsep footheight footskip setmargnohf leftmargin topmargin textwidth textheight setmargnohfrb leftmargin topmargin rightmargin bottommargin setmarg leftmargin topmargin textwidth textheight setmargrb leftmargin topmargin rightmargin bottommargin margin offset shiftmargins LaTeX2e package options shiftmargins portrait landscape nohf all other options are treated as paper sizes 4 Implementation 1 xpackage We use macros for the version info here 2 def filename Vmargin 3 def filename vmargin 4 def fileversion V2 3 5 def filedate 2000 08 01 PaperWidth PaperHeight ifLandscape setpapersize defmetricpaper Allow vmargin to be input more than once Important for embedding in formats 6 ifundefined Vmargin endinput Make use of ATEX2e commands but only if we are actually runnin
6. paperheight paperheight PaperHeight 7 38 ifundefined pdfpagewidth pdfpagewidth PaperWidth 39 ifundefined pdfpageheight pdfpageheight PaperHeight 7 40 41 ifundefined PackageError 42 def name err 1 7 43 typeout gt string setpapersize illegal parameter 1 H 45 def name err 1 PackageError filename 46 Paper size or orientation unknown 1 47 Calculate smaller sizes from largest one 48 def defmetricpaper 1 2 3 49 begingroup 50 count0 0 51 def w dimeni def h dimen2 def s dimen3 52 w 2 h 3 53 def l 11 54 loop 55 begingroup margin offset shiftmargins setmargins 56 def t the count0 57 catcode t 11 letter 58 expandafter xdef csname paper 1 the count0 endcsname 59 PaperWidth the w PaperHeight the h noexpand po 60 endgroup 61 s w w 5 h h s 62 ifnum the count0 lt 9 63 advance countO by 1 64 repeat 65 endgroup 66 Pre defined paper envelope sizes AO Al A2 A9 BO B1 B9 CO C1 C9 67 defmetricpaper A 840 9mm 1189 2mm 68 defmetricpaper B 1000mm 1414mm 69 defmetricpaper C 917mm 1297mm delete definition to save memory 70 let defmetricpaper relax USletter USlegal USexecutive 71 def paper USletter PaperWidth 8 5in PaperHeight 11in po 72 def paper USlegal PaperWidth 8 5in PaperHeight 14in po 73 def paper USexecutive PaperWidth 7 25in PaperHeight
7. 2 103 129 135 178 setmargnohf 2 125 setmargnohfrb 2 128 176 setmargrb 2 134 setpapersize 2 22 164 shiftmargins 85 168 T NG aie Seat he D 56 57 V Vmargin 8 10 14 16 17 voffset 3 79 82 W AW Gh EleeSs 51 52 59 61
8. The vmargin Package Volker Kuhlmannt 2000 08 01 Abstract LaTeX package which introduces paper sizes and provides macros for setting document margins It still works with TX 2 09 This package supersedes pack age vpage This package file can be made part of a format by typing input vmargin sty before dumping the format Contents 1 License 2 History 3 User manual 3 1 PAGE SIZE 2 6 jaca dass eck de os dos BSS Sole ee ee ee 3 2 Margins i 4 5 4 6 eer wk Pea dk ee ee bb ba PA ek aed 3 3 Dealing with T X s Margin Offset 2 2 0 00 000 AS ET ODS ee oh gd att thst Sh EPO Ne hi tee Bath Oe Boe a ee 3 5 3 6 3 7 3 8 Inclusion in TEX formats 2 en Hints for using pageframe sty ooo ee Bugsand To Do os o eie aa a eA EG ee he SUMMA Ar a se ek eed oe wat Le de 0 20 4 5 em er Jor le tlh ths ce ae st WO Coe 4 Implementation 1 License This package is copyright 1993 1994 1995 1996 1999 2000 by Volker Kuhlmann c o University of Canterbury ELEC Dept Creyke Road Christchurch New Zealand E Mail v kuhlmann elec canterbury ac nz ow rprbB BRWNYYN NY on This program can be redistributed and or modified under the terms of the LaTeX Project Public License distributed from CTAN archives as macros latex base Ippl txt either version 1 of the License or at your option any later version 2 History This is the first package I ever wrote to save a lot of typing when de
9. agestyle to empty pagestyle empty as there is no space for headers or footers setmargnohf leftmargin topmargin textwidth textheight setmargnohfrb leftmargin topmargin rightmargin bottommargin setmarg setmarg setmargrb are the same as setmargnohf setmargnohfrb except that setmargrb headheight headsep footheight and footskip are unchanged instead of being set to Opt setmargt lefimargin topmargin textwidth textheight setmargrb leftmargin topmargin rightmargin bottommargin Example A4 paper left margin 30mm top right and bottom margin 20mm each no headers or footers setpapersize A4 setmarginsrb 30mm 20mm 20mm 20mm Opt Omm Opt Omm pagestyle empty The same settings would result with setpapersize A4 setmargnohfrb 30mm 20mm 20mm 20mm Defaults are setmarginsrb 35mm 20mm 25mm 15mm 12pt 11mm Opt 11mm or with package option nohf setmargnohfrb 35mm 20mm 25mm 15mm 3 3 Dealing with T X s Margin Offset The default top and left margins of TeX are lin setmargXXX call margin offset margin offset which initialises noffset voffset to lin and oddsidemargin evensidemargin hoffset topmargin to Oin setmargXXX then add the given dimensions to topmargin voffset oddsidemargin evensidemargin In some cases it might be desired to use XXXmargin instead of Xoffset for compensation This can be achieved
10. aling with T X s lin 1lin margin offset proper margin alignment for doublesided printing and page layout parameters I always used As there wasn t anything similar on CTAN I submitted the This file has version number V2 3 last modified 2000 08 01 Email v kuhlmann elec canterbury ac nz For a postal address refer to the license section setpapersize PaperWidth PaperHeight ifLandscape setmargins package then called Vpage I never heard back and wasn t looking for it in the right place so I thought it hadn t been accepted and never thought any more of it In the meantime I realised its general purpose potential and took the page layout code out renaming it to Vmargin First time I heard it was on CTAN was when I read the list of 3rd party packages in the ATEX Companion and it had vpage in it CTAN doesn t deal in uppercase letters So sorry for any confusion the name change caused Further development essentially ceased because I didn t see much scope for improve ments vmargin was doing its job I could have gone overboard with package options but didn t because I was more interested in a short efficient tool which doesn t load half of the tools and or graphics bundle It still works under both AT X 2 09 and ATEX 2e 3 User manual 3 1 Page Size These macros make it easy to set page margins for a chosen paper size Actual dimen sions of the most common paper sizes are stored and need not be r
11. emembered Two sided printing is supported meaning that if on odd pages the left margin is say 30mm and the right margin is 20mm it will be vice versa on even pages This gives equal margins on the outer and equal margins on the inner edge of the paper as expected e g for a book vmargin is designed to be reasonably restricted in both memory usage and processing time so that the common task of setting margins is not too distracting If you are looking for something fancier try the geometry package The basic procedure of using vmargin is to first set a paper size and then to set the margins The margin setting functions depend on the paper size Setting the paper size and margins are two independent operations i e setting the paper size does not directly affect the margins but will affect the following margin setting command The size of the paper can be set with setpapersize size size can be AO Al A9 BO B1 B9 CO C9 USletter USlegal and USexecutive The metric paper sizes are not stored but calculated setpapersize by default sets the orientation to portrait Landscape format is selected by using the optional argument setpapersize landscape size which swaps the width and height dimensions of the paper setpapersize portrait size is allowed but is the default If you have a size which is not pre defined use setpapersize custom width height For width and height insert the re
12. g with it 7 ifundefined documentclass 8 edef Vmargin Style filename fileversion filedate 9 expandafter everyjob expandafter the everyjob typeout Vmargin 0 typeout Vmargin 1H 2 NeedsTeXFormat LaTeX2e 1994 06 01 ProvidesPackage filename filedate edef Vmargin Package filename space filedate space fileversion space VK set document margins expandafter everyjob expandafter the everyjob typeout Vmargin 7 typeout Vmargin 8 New lengths for paper width and height and a new if as flag for using landscape orientation aa w 9 newdimen PaperWidth 20 newdimen PaperHeight 21 newif ifLandscape Setting a paper size Kind of a data base lookup Well it looks up whether the control sequence is defined When running pdflatex we also set the pdf page size pdfpagewidth and pdfpageheight 22 def setpapersize ifnextchar setps setps portrait 23 def setps 1 7 24 ifundefined po 1 Oname err 1 Gnameuse po 1 25 setps 26 def setps 1 27 ifundefined paperG 1 name err 1 28 csname paper 1 endcsname 29 usename paper 1 inside arg to ifundefined does not work 30 with papersize custom 31 def po portrait Landscapefalse 32 def po landscape Landscapetrue 33 def po ifLandscape 34 dimen0 PaperWidth PaperWidth PaperHeight PaperHeight dimenO 35 fi 36 ifundefined paperwidth paperwidth PaperWidth 37 ifundefined
13. height if the latter exist This makes vmargin work correctly with anything that ex pects paperwidth paperheight to be set properly The names PaperWidth PaperHeight had been chosen in the first place to avoid clashes with style files that also use these names namely pageframe sty The following package options are available with ATEX 2e shiftmargins _ shiftmargins Same as shiftmargins portrait portrait Keep the default of a portrait page layout landscape landscape Change the default page orientation to landscape Note using setpapersize sn after usepackage causes package option landscape to be ignored A4 etc Same as using setpapersize Note setpapersize always sets the orientation to portrait unless landscape is given as an optional argument to iint setpapersize nohf Do not make space for header and footer lines this also sets the pagestyle to empty All unknown options are treated as a paper size if necessary generating an error that the requested paper size is not defined 3 5 Inclusion in T X formats This file may be loaded in initex before dumping the format by typing makeatletter input vmargin sty makeatother Be aware that this generates a non standard format It is really only useful for slow computers This feature has not been tested with ATEX 2e 3 6 Hints for using pageframe sty vmargin sty and pageframe sty can be used together if the following points are considered vmargin use
14. ixed comment for v2 3 setmarginsrb 1 f V2 2 General Now setting page size for General Released under LPPL pdlatek asi aeea nie neea 1 Index Numbers written in italic refer to the page where the corresponding entry is described numbers underlined refer to the code line of the definition numbers in roman refer to the code lines where the entry is used Symbols setps 25 26 172 setps 22 23 defmetricpaper 48 67 70 165 171 175 name err 24 27 42 45 Gpo 33 59 71 74 shiftmarginsfalse 86 shiftmarginstrue 87 hf df1t C chk dimen chk dimen err 101 123 137 147 149 F filedate 5 8 13 14 filename 2 3 8 13 14 45 158 160 fileversion 4 8 14 NA c davsases hoffset 51 52 59 61 3 79 82 if shiftmargins 77 85 ifLandscape 2 19 33 L Mi uth ete oP ee 53 Landscapefalse 31 169 Landscapetrue 32 170 M margin offset ey 3 75 89 104 P paper custom 74 paper USexecutive 73 paper USlegal 72 paper USletter 71 PaperHeight 2 19 34 37 39 59 71 74 108 146 paperheight 37 PaperWidth 2 19 34 36 38 59 71 74 91 105 115 140 paperwidth 36 pdfpageheight 39 pdfpagewidth 38 po landscape 32 po portrait 31 S So aiot aun saa Qs 51 61 setmarg 2 131 setmargins 2 88 126 132 setmarginsrb
15. rb leftmargin topmargin rightmargin bottommargin headheight headsep footheight footskip 103 newcommand setmarginsrb 8 7 104 margin offset 105 textwidth PaperWidth paperwidth 106 advance textwidth 1 left right 107 advance textwidth 3 108 textheight PaperHeight paperheight top 109 advance textheight 2 7 headheight 0 advance textheight 5 headsep 1 advance textheight 6 footskip bottom 2 advance textheight 8 3 advance textheight 4 4 advance oddsidemargin 1 5 advance evensidemargin PaperWidth paperwidth 6 advance evensidemargin 1 left width 7 advance evensidemargin textwidth 8 advance topmargin 2 9 headheight 5 120 headsep 6 121 ifundefined footheight footheight 7 7 122 footskip 8 123 chk dimen 1 2 3 4 124 a setmargnohf leftmargin topmargin textwidth textheight headheight headsep footheight footskip set to Opt 125 newcommand setmargnohf 4 126 setmargins 1 2 3 4 z z zo ze 127 pagestyle empty setmargnohfrb leftmargin topmargin rightmargin bottommargin headheight headsep footheight footskip set to Opt 128 newcommand setmargnohfrb 4 129 setmarginsrb 1 2 3 4 z ze zo ze 130 pagestyle empty setmarg leftmargin topmargin textwidth textheight headheight headsep footheight footskip unchanged 131 newcommand setmarg 4 132 setmargins 1
16. s hoffset and voffset and writes negative values into it pageframe expects them to be zero to give a lin space on the left and the top where it prints additional information Initially set both to Omm in the preamble of your text and adjust them later on pageframe needs to know the trimmed height of the paper the height of the page frame Unless the trimmed size of the paper is equivalent to one of the standard paper sizes unlikely the size should be specified with setpapersize custom width height The correct height of the trimmed page can then be given to pageframe using paperheight PaperHeight and the margins of the final product inside the page frame can be specified using setmargXXX Warning if setmargXXXrb is used the 3rd parameter right margin is ignored Instead the dimension of the right margin has to be assigned to evensidemargin This is because pageframe re defines the meaning of evensidemargin to be the right margin of your text on all pages Remember all these assignments and macro calls have to be in the preamble of the document 3 7 Bugs and To Do I have not tested this with older versions of BTEX 2e because I don t have any If there are any problems please let me know and Pll do something about it The way the metric paper sizes are stored takes up a lot of space A metric size could be computed by setpapersize If you have any comments positive or negative please let me
17. spective dimensions of your paper setpapersize stores the actual dimensions of the paper in the length variables PaperWidth PaperHeight which can be used further if desired ifLandscape yields true if a landscape format is selected Do not write to PaperWidth PaperHeight or call Landscapetrue or Landscapefalse it will not work vmargin detects when it runs under pdflatex and in that case also sets the pdf page size variables pdfpagewidth and pdfpageheight Default for the paper size is A4 portrait 3 2 Margins Once the paper size is selected margins can be set with setmargins leftmargin 4 topmargin tertwidth tertheight headheight headsep footheight footskip or with setmarginsrb leftmargin topmargin 4 rightmargin bottommargin headheight 4 headsep footheight footskip setmarginsrb In the latter case textwidth and textheight are calculated using the width and height of the selected paper such as to effectively result in rightmargin and bottommargin The first four parameters of the above two commands are used to set oddsidemargin evensidemargin textwidth topmargin and textheight setmargnohf setmargnohf setmargnohfrb provide a page with no header and footer They setmargnohfrb work the same as setmargins setmarginsrb except that they only need the first 4 parameters The last 4 parameters are set to Opt These 2 commands set the p

Download Pdf Manuals

image

Related Search

Related Contents

MXL USB Mic Mate Dynamic  Xerox 701P44973 User's Manual  Technika LCD 32-256 Flat Panel Television User Manual  Aviva User Manual Ver0.8  FluidDraw® 5 User's Guide 04/08  our Battery Charging Guide  GSM Gate Opener GSM Remote Switch RTU5015 User Manual Ver  M-450  Ce guide donne les éléments de réponse aux questions que  Eglo BANNY  

Copyright © All rights reserved.
Failed to retrieve file