Extreme paper space saving, very small margins, how to lower the page number












14















Note to would-be closers : This question is different from this older question in my view because 1) none of the answers in that other question deal with page numbering and 2) I do not need multicolumns (used in all the answers to the other question also).



To print txt-only books downloaded from the Internet, to save paper space I use the following template (and print to the A4 format)



documentclass{article}
usepackage[footskip=0pt]{geometry}

addtolength{textwidth}{4cm}
addtolength{textheight}{5cm}

addtolength{hoffset}{-2cm}
addtolength{voffset}{-2.5cm}

begin{document}

(... ASCII-only tex here, no TeX or LaTeX)

end{document}


Yes I know that most people would find this unbearable to read, but I don't mind and I only use that for my personal one-time readings.



In my view, all four margins are fine except for the lower margin (as shown in the image below). I'd like this margin to have the same area as the other margins, and thus lower the page number. Any ideas ?



enter image description here










share|improve this question

























  • I'm sure we've had a question on this before - I'll have a look

    – Chris H
    Jan 30 at 13:42






  • 2





    Possible duplicate of How can get rid of margins and minimize white space to fully use a page in LaTeX?. IMO this old question covers it, but some of what's of use here is in the comments, as well as the answers

    – Chris H
    Jan 30 at 13:46








  • 1





    @ChrisH I plead that my question is different because 1) none of the answers in that other question deal with page numbering and 2) I do not need multicolumns (used in all the answers to the other question also).

    – user40960
    Jan 30 at 13:49











  • Fair enough - mine is only one vote and several are needed to call it a duplicate. I still think a complete solution will end up being a subset of the accepted answer there

    – Chris H
    Jan 30 at 13:52













  • @user40960 BTW by using the savetrees package you not only have more desirable margins but the package also takes care of spacing, interlines etc so it is overall a better solution rather than using only the geometry package.

    – Maxiride
    Jan 30 at 15:29
















14















Note to would-be closers : This question is different from this older question in my view because 1) none of the answers in that other question deal with page numbering and 2) I do not need multicolumns (used in all the answers to the other question also).



To print txt-only books downloaded from the Internet, to save paper space I use the following template (and print to the A4 format)



documentclass{article}
usepackage[footskip=0pt]{geometry}

addtolength{textwidth}{4cm}
addtolength{textheight}{5cm}

addtolength{hoffset}{-2cm}
addtolength{voffset}{-2.5cm}

begin{document}

(... ASCII-only tex here, no TeX or LaTeX)

end{document}


Yes I know that most people would find this unbearable to read, but I don't mind and I only use that for my personal one-time readings.



In my view, all four margins are fine except for the lower margin (as shown in the image below). I'd like this margin to have the same area as the other margins, and thus lower the page number. Any ideas ?



enter image description here










share|improve this question

























  • I'm sure we've had a question on this before - I'll have a look

    – Chris H
    Jan 30 at 13:42






  • 2





    Possible duplicate of How can get rid of margins and minimize white space to fully use a page in LaTeX?. IMO this old question covers it, but some of what's of use here is in the comments, as well as the answers

    – Chris H
    Jan 30 at 13:46








  • 1





    @ChrisH I plead that my question is different because 1) none of the answers in that other question deal with page numbering and 2) I do not need multicolumns (used in all the answers to the other question also).

    – user40960
    Jan 30 at 13:49











  • Fair enough - mine is only one vote and several are needed to call it a duplicate. I still think a complete solution will end up being a subset of the accepted answer there

    – Chris H
    Jan 30 at 13:52













  • @user40960 BTW by using the savetrees package you not only have more desirable margins but the package also takes care of spacing, interlines etc so it is overall a better solution rather than using only the geometry package.

    – Maxiride
    Jan 30 at 15:29














14












14








14


3






Note to would-be closers : This question is different from this older question in my view because 1) none of the answers in that other question deal with page numbering and 2) I do not need multicolumns (used in all the answers to the other question also).



To print txt-only books downloaded from the Internet, to save paper space I use the following template (and print to the A4 format)



documentclass{article}
usepackage[footskip=0pt]{geometry}

addtolength{textwidth}{4cm}
addtolength{textheight}{5cm}

addtolength{hoffset}{-2cm}
addtolength{voffset}{-2.5cm}

begin{document}

(... ASCII-only tex here, no TeX or LaTeX)

end{document}


Yes I know that most people would find this unbearable to read, but I don't mind and I only use that for my personal one-time readings.



In my view, all four margins are fine except for the lower margin (as shown in the image below). I'd like this margin to have the same area as the other margins, and thus lower the page number. Any ideas ?



enter image description here










share|improve this question
















Note to would-be closers : This question is different from this older question in my view because 1) none of the answers in that other question deal with page numbering and 2) I do not need multicolumns (used in all the answers to the other question also).



To print txt-only books downloaded from the Internet, to save paper space I use the following template (and print to the A4 format)



documentclass{article}
usepackage[footskip=0pt]{geometry}

addtolength{textwidth}{4cm}
addtolength{textheight}{5cm}

addtolength{hoffset}{-2cm}
addtolength{voffset}{-2.5cm}

begin{document}

(... ASCII-only tex here, no TeX or LaTeX)

end{document}


Yes I know that most people would find this unbearable to read, but I don't mind and I only use that for my personal one-time readings.



In my view, all four margins are fine except for the lower margin (as shown in the image below). I'd like this margin to have the same area as the other margins, and thus lower the page number. Any ideas ?



enter image description here







formatting header-footer margins






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Jan 30 at 17:37









Community

1




1










asked Jan 30 at 13:41









user40960user40960

418312




418312













  • I'm sure we've had a question on this before - I'll have a look

    – Chris H
    Jan 30 at 13:42






  • 2





    Possible duplicate of How can get rid of margins and minimize white space to fully use a page in LaTeX?. IMO this old question covers it, but some of what's of use here is in the comments, as well as the answers

    – Chris H
    Jan 30 at 13:46








  • 1





    @ChrisH I plead that my question is different because 1) none of the answers in that other question deal with page numbering and 2) I do not need multicolumns (used in all the answers to the other question also).

    – user40960
    Jan 30 at 13:49











  • Fair enough - mine is only one vote and several are needed to call it a duplicate. I still think a complete solution will end up being a subset of the accepted answer there

    – Chris H
    Jan 30 at 13:52













  • @user40960 BTW by using the savetrees package you not only have more desirable margins but the package also takes care of spacing, interlines etc so it is overall a better solution rather than using only the geometry package.

    – Maxiride
    Jan 30 at 15:29



















  • I'm sure we've had a question on this before - I'll have a look

    – Chris H
    Jan 30 at 13:42






  • 2





    Possible duplicate of How can get rid of margins and minimize white space to fully use a page in LaTeX?. IMO this old question covers it, but some of what's of use here is in the comments, as well as the answers

    – Chris H
    Jan 30 at 13:46








  • 1





    @ChrisH I plead that my question is different because 1) none of the answers in that other question deal with page numbering and 2) I do not need multicolumns (used in all the answers to the other question also).

    – user40960
    Jan 30 at 13:49











  • Fair enough - mine is only one vote and several are needed to call it a duplicate. I still think a complete solution will end up being a subset of the accepted answer there

    – Chris H
    Jan 30 at 13:52













  • @user40960 BTW by using the savetrees package you not only have more desirable margins but the package also takes care of spacing, interlines etc so it is overall a better solution rather than using only the geometry package.

    – Maxiride
    Jan 30 at 15:29

















I'm sure we've had a question on this before - I'll have a look

– Chris H
Jan 30 at 13:42





I'm sure we've had a question on this before - I'll have a look

– Chris H
Jan 30 at 13:42




2




2





Possible duplicate of How can get rid of margins and minimize white space to fully use a page in LaTeX?. IMO this old question covers it, but some of what's of use here is in the comments, as well as the answers

– Chris H
Jan 30 at 13:46







Possible duplicate of How can get rid of margins and minimize white space to fully use a page in LaTeX?. IMO this old question covers it, but some of what's of use here is in the comments, as well as the answers

– Chris H
Jan 30 at 13:46






1




1





@ChrisH I plead that my question is different because 1) none of the answers in that other question deal with page numbering and 2) I do not need multicolumns (used in all the answers to the other question also).

– user40960
Jan 30 at 13:49





@ChrisH I plead that my question is different because 1) none of the answers in that other question deal with page numbering and 2) I do not need multicolumns (used in all the answers to the other question also).

– user40960
Jan 30 at 13:49













Fair enough - mine is only one vote and several are needed to call it a duplicate. I still think a complete solution will end up being a subset of the accepted answer there

– Chris H
Jan 30 at 13:52







Fair enough - mine is only one vote and several are needed to call it a duplicate. I still think a complete solution will end up being a subset of the accepted answer there

– Chris H
Jan 30 at 13:52















@user40960 BTW by using the savetrees package you not only have more desirable margins but the package also takes care of spacing, interlines etc so it is overall a better solution rather than using only the geometry package.

– Maxiride
Jan 30 at 15:29





@user40960 BTW by using the savetrees package you not only have more desirable margins but the package also takes care of spacing, interlines etc so it is overall a better solution rather than using only the geometry package.

– Maxiride
Jan 30 at 15:29










3 Answers
3






active

oldest

votes


















19














The geometry package can do what you want, if you let it do the whole job of page layout instead of just part of it.



I'm not sure exactly what physical margins your adjustments to textwidth etc wind up producing, but these geometry settings produce something that looks roughly like your screenshot, except for better placement of the page number:



documentclass[12pt,oneside]{book}
usepackage[a4paper,margin=1cm,nohead,foot=0.5cm]{geometry}
pagestyle{plain}
begin{document}


screenshot of the second page of _Moby-Dick_ with 1cm margins on A4 paper



Together with this font configuration...



usepackage[utf8]{inputenc}
usepackage[T1]{fontenc}
usepackage{lmodern}
usepackage{microtype}


... this page layout fits the Project Gutenberg text of Moby-Dick onto 329 physical pages. With newtxtext instead of lmodern it shrinks to 310 pages. (These page counts include the ETYMOLOGY and EXTRACTS prefaces, but no table of contents nor any of the Project Gutenberg boilerplate. Also, I went to the trouble of creating TeX markup for chapters. It would be shorter still without that.)






share|improve this answer
























  • Exaclty what I was looking for ! Thanks a lot.

    – user40960
    Jan 30 at 16:19



















24














I'd suggest using the package savetrees loaded with the [extreme] option which its purpose is exactly the scenario you are describing by minimizing all the margins to the extreme, fitting as much text as possible on a page. More than that you'd print out of the paper. Its sample page, specifically the last page showcase the results that can be obtained.






share|improve this answer





















  • 2





    Thanks ! It's Impressive : by just putting usepackage[extreme]{savetrees} I get an output that is slightly better than the one I have so far. I'll accept this answer if no better solution comes up

    – user40960
    Jan 30 at 13:57











  • Using a structured package like savetrees you could dig into it's .cls files and study how the author does it. I'm confident some more tweaking could be done.

    – Maxiride
    Jan 30 at 14:05






  • 2





    It's a package, so it does not have a .cls file but a .sty file.

    – TeXnician
    Jan 30 at 14:11






  • 5





    I think your reply is perfectly suited as an answer :-)

    – Daniel
    Jan 30 at 14:18



















2














Short answer:



Get info about the length footskip. ;-)



Long answer:



I don't recommand modifying hoffset and voffset for setting the margins.



According to the TeXBook, chapter 23, the purpose of these parameters is:




If you want your output to be positioned differently when it is
ultimately printed
, you can offset it by giving nonzero values to
hoffset and voffset. For example,

    hoffset=.5in
     voffset=1.5in

will move the output half an inch to the right of its normal position,
and 1.5 inches down. You should be careful not to offset the output so
much that it falls off the edge of the physical medium on which it is
being printed, unless you know that such out-of-bounds activity won't
cause trouble.




If I got this right, the layout of pages (i.e., the width of text etc) should not depend on hoffset and/or voffset as these dimension-parameters are to provide a possibility for shifting the entire page when it is already typeset according to the layout for typesetting pages.



As far as I know, hoffset and voffset usually have the value 0pt and you change these values to shift entire pages horizontally/vertically by the values to which these parameters are set.



Changing hoffset and voffset should, e.g., not affect the width of text typeset by LaTeX.



Imagine someone puts a stamp on a piece of paper. The stamp is exactly the same size as the paper.
The stamp is the text that LaTeX has typeset. voffset and hoffset determine how much the top left corner of the stamp is offset up/down and/or right/left relative to the top left corner of the paper.





The package layout might be of interest to you.



It defines the command layout which produces a drawing where you get a visible impression of all page-layout-parameters.
The output of the command layout looks like this:



enter image description here



enter image description here





For the horizontal alignment, LaTeX provides one parameter for the left margin of right-hand-pages.

As right-hand-pages usually have page-numbers whose parity is odd, this parameter is called oddsidemargin.



For the horizontal alignment, LaTeX provides one parameter for the left margin of left-hand-pages.

As left-hand-pages usually have page-numbers whose parity is even, this parameter is called evensidemargin.



The distinguishing between right-hand-pages and left-hand-pages only applies with "twoside"-documents.



With "oneside"-documents every page is treated as if it was a right-hand-page. Thus with "oneside"-documents only the parameter oddsidemargin is applied.



After playing with the package layout, I created a template where you can specify for right-hand-pages the margins at the left, the right, the bottom and at the top.



In case the document is a "twoside"-document, the template will calculate the margins for left-hand-pages automatically so that

    left margin of right-hand-page=right margin of left-hand-page

and

    right margin of right-hand-page=left margin of left-hand-page.



I assume you wish a minimalist approach without page-headers.



When playing around with the example below, while applying the article-class's option "twoside", make sure to set the view-mode of
your pdf-viewing-program to "facing pages(first page centered)" or the like.



documentclass[a4paper,twoside]{article}%
%------------------------------------------------------
% These packages are needed for detecting the engine -
% detecting the engine is needed for finding out if
% adjusting (pdf)pagewidth and (pdf)pageheight is
% needed with things like the landscape-option:
%------------------------------------------------------
usepackage{iftex, ifpdf}
%------------------------------------------------------
ifXeTeX
pdfpagewidth=paperwidth
pdfpageheight=paperheight
else
ifLuaTeX
pagewidth=paperwidth
pageheight=paperheight
else
ifPDFTeX
pdfpagewidth=paperwidth
pdfpageheight=paperheight
fi
fi
fi
%------------------------------------------------------
pagestyle{plain}%
newlengthmyleftoddmargin
newlengthmyrightoddmargin
newlengthmytopmargin
newlengthmybottommargin
newlengthmyverticalgapbetweenbottommarginandpagenumber
%-----------------------------------------------------------------
%!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
% !!! Specify the margins here: !!!
%!!!! !!!
setlengthmyrightoddmargin{1.5cm}%
setlengthmyleftoddmargin{.75cm}%
% csname if@twosideendcsname
% setlengthmyleftoddmargin{.5myrightoddmargin}%
% else
% setlengthmyleftoddmargin{myrightoddmargin}%
% fi
setlengthmytopmargin{1.5cm}%
setlengthmybottommargin{1.5cm}%
setlengthmyverticalgapbetweenbottommarginandpagenumber{.5mybottommargin}%
%!!! That should do the trick. !!!
%!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
%-----------------------------------------------------------------
setlengthhoffset{0pt}% or whatever horizontal offset you need.
% Usually the value is 0 by default.
setlengthvoffset{0pt}% or whatever vertical offset you need.
% Usually the value is 0 by default.
setlengthoddsidemargin{myleftoddmargin}%
addtolengthoddsidemargin{-1in}%
setlengthevensidemargin{myrightoddmargin}%
addtolengthevensidemargin{-1in}%
setlengthmarginparwidth{.7myrightoddmargin}%
setlengthmarginparsep{.15myrightoddmargin}%
setlengthtextwidth{paperwidth}%
addtolengthtextwidth{-myleftoddmargin}%
addtolengthtextwidth{-myrightoddmargin}%
%-----------------------------------------------------------------
newlengthstandardletterheight
newlengthstandardletterdepth
settoheightstandardletterheight{%
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890%
}%
settodepthstandardletterdepth{%
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890%
}%
setlengthtopmargin{mytopmargin}%
addtolengthtopmargin{-1in}%
% This is the height of boxes of headings:
setlengthheadheight{0ex}%
% This is the distance between the bottom of a heading-box
% and the first line of text - Also topskip-glue is added to
% ensure that baselines of first lines of text of pages all are
% in the same height:
setlengthheadsep{0ex}%
% In case of having page-headings, you probably don't need
% to play around withtopskip.
setlengthtopskip{standardletterheight}%
setlengthtextheight{paperheight}%
addtolengthtextheight{-mytopmargin}%
addtolengthtextheight{-mybottommargin}%
addtolengthtextheight{-standardletterdepth}%
setlengthfootskip{myverticalgapbetweenbottommarginandpagenumber}%
addtolengthfootskip{standardletterdepth}%
addtolengthfootskip{.5standardletterheight}%

begin{document}
hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
nointerlineskip
nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
nointerlineskip
hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
nointerlineskip
newpage
hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
nointerlineskip
nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
nointerlineskip
hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
nointerlineskip
newpage
hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
nointerlineskip
nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
nointerlineskip
hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
nointerlineskip
end{document}


enter image description here






share|improve this answer

























    Your Answer








    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "85"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f472563%2fextreme-paper-space-saving-very-small-margins-how-to-lower-the-page-number%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    3 Answers
    3






    active

    oldest

    votes








    3 Answers
    3






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    19














    The geometry package can do what you want, if you let it do the whole job of page layout instead of just part of it.



    I'm not sure exactly what physical margins your adjustments to textwidth etc wind up producing, but these geometry settings produce something that looks roughly like your screenshot, except for better placement of the page number:



    documentclass[12pt,oneside]{book}
    usepackage[a4paper,margin=1cm,nohead,foot=0.5cm]{geometry}
    pagestyle{plain}
    begin{document}


    screenshot of the second page of _Moby-Dick_ with 1cm margins on A4 paper



    Together with this font configuration...



    usepackage[utf8]{inputenc}
    usepackage[T1]{fontenc}
    usepackage{lmodern}
    usepackage{microtype}


    ... this page layout fits the Project Gutenberg text of Moby-Dick onto 329 physical pages. With newtxtext instead of lmodern it shrinks to 310 pages. (These page counts include the ETYMOLOGY and EXTRACTS prefaces, but no table of contents nor any of the Project Gutenberg boilerplate. Also, I went to the trouble of creating TeX markup for chapters. It would be shorter still without that.)






    share|improve this answer
























    • Exaclty what I was looking for ! Thanks a lot.

      – user40960
      Jan 30 at 16:19
















    19














    The geometry package can do what you want, if you let it do the whole job of page layout instead of just part of it.



    I'm not sure exactly what physical margins your adjustments to textwidth etc wind up producing, but these geometry settings produce something that looks roughly like your screenshot, except for better placement of the page number:



    documentclass[12pt,oneside]{book}
    usepackage[a4paper,margin=1cm,nohead,foot=0.5cm]{geometry}
    pagestyle{plain}
    begin{document}


    screenshot of the second page of _Moby-Dick_ with 1cm margins on A4 paper



    Together with this font configuration...



    usepackage[utf8]{inputenc}
    usepackage[T1]{fontenc}
    usepackage{lmodern}
    usepackage{microtype}


    ... this page layout fits the Project Gutenberg text of Moby-Dick onto 329 physical pages. With newtxtext instead of lmodern it shrinks to 310 pages. (These page counts include the ETYMOLOGY and EXTRACTS prefaces, but no table of contents nor any of the Project Gutenberg boilerplate. Also, I went to the trouble of creating TeX markup for chapters. It would be shorter still without that.)






    share|improve this answer
























    • Exaclty what I was looking for ! Thanks a lot.

      – user40960
      Jan 30 at 16:19














    19












    19








    19







    The geometry package can do what you want, if you let it do the whole job of page layout instead of just part of it.



    I'm not sure exactly what physical margins your adjustments to textwidth etc wind up producing, but these geometry settings produce something that looks roughly like your screenshot, except for better placement of the page number:



    documentclass[12pt,oneside]{book}
    usepackage[a4paper,margin=1cm,nohead,foot=0.5cm]{geometry}
    pagestyle{plain}
    begin{document}


    screenshot of the second page of _Moby-Dick_ with 1cm margins on A4 paper



    Together with this font configuration...



    usepackage[utf8]{inputenc}
    usepackage[T1]{fontenc}
    usepackage{lmodern}
    usepackage{microtype}


    ... this page layout fits the Project Gutenberg text of Moby-Dick onto 329 physical pages. With newtxtext instead of lmodern it shrinks to 310 pages. (These page counts include the ETYMOLOGY and EXTRACTS prefaces, but no table of contents nor any of the Project Gutenberg boilerplate. Also, I went to the trouble of creating TeX markup for chapters. It would be shorter still without that.)






    share|improve this answer













    The geometry package can do what you want, if you let it do the whole job of page layout instead of just part of it.



    I'm not sure exactly what physical margins your adjustments to textwidth etc wind up producing, but these geometry settings produce something that looks roughly like your screenshot, except for better placement of the page number:



    documentclass[12pt,oneside]{book}
    usepackage[a4paper,margin=1cm,nohead,foot=0.5cm]{geometry}
    pagestyle{plain}
    begin{document}


    screenshot of the second page of _Moby-Dick_ with 1cm margins on A4 paper



    Together with this font configuration...



    usepackage[utf8]{inputenc}
    usepackage[T1]{fontenc}
    usepackage{lmodern}
    usepackage{microtype}


    ... this page layout fits the Project Gutenberg text of Moby-Dick onto 329 physical pages. With newtxtext instead of lmodern it shrinks to 310 pages. (These page counts include the ETYMOLOGY and EXTRACTS prefaces, but no table of contents nor any of the Project Gutenberg boilerplate. Also, I went to the trouble of creating TeX markup for chapters. It would be shorter still without that.)







    share|improve this answer












    share|improve this answer



    share|improve this answer










    answered Jan 30 at 15:22









    zwolzwol

    1,9201629




    1,9201629













    • Exaclty what I was looking for ! Thanks a lot.

      – user40960
      Jan 30 at 16:19



















    • Exaclty what I was looking for ! Thanks a lot.

      – user40960
      Jan 30 at 16:19

















    Exaclty what I was looking for ! Thanks a lot.

    – user40960
    Jan 30 at 16:19





    Exaclty what I was looking for ! Thanks a lot.

    – user40960
    Jan 30 at 16:19











    24














    I'd suggest using the package savetrees loaded with the [extreme] option which its purpose is exactly the scenario you are describing by minimizing all the margins to the extreme, fitting as much text as possible on a page. More than that you'd print out of the paper. Its sample page, specifically the last page showcase the results that can be obtained.






    share|improve this answer





















    • 2





      Thanks ! It's Impressive : by just putting usepackage[extreme]{savetrees} I get an output that is slightly better than the one I have so far. I'll accept this answer if no better solution comes up

      – user40960
      Jan 30 at 13:57











    • Using a structured package like savetrees you could dig into it's .cls files and study how the author does it. I'm confident some more tweaking could be done.

      – Maxiride
      Jan 30 at 14:05






    • 2





      It's a package, so it does not have a .cls file but a .sty file.

      – TeXnician
      Jan 30 at 14:11






    • 5





      I think your reply is perfectly suited as an answer :-)

      – Daniel
      Jan 30 at 14:18
















    24














    I'd suggest using the package savetrees loaded with the [extreme] option which its purpose is exactly the scenario you are describing by minimizing all the margins to the extreme, fitting as much text as possible on a page. More than that you'd print out of the paper. Its sample page, specifically the last page showcase the results that can be obtained.






    share|improve this answer





















    • 2





      Thanks ! It's Impressive : by just putting usepackage[extreme]{savetrees} I get an output that is slightly better than the one I have so far. I'll accept this answer if no better solution comes up

      – user40960
      Jan 30 at 13:57











    • Using a structured package like savetrees you could dig into it's .cls files and study how the author does it. I'm confident some more tweaking could be done.

      – Maxiride
      Jan 30 at 14:05






    • 2





      It's a package, so it does not have a .cls file but a .sty file.

      – TeXnician
      Jan 30 at 14:11






    • 5





      I think your reply is perfectly suited as an answer :-)

      – Daniel
      Jan 30 at 14:18














    24












    24








    24







    I'd suggest using the package savetrees loaded with the [extreme] option which its purpose is exactly the scenario you are describing by minimizing all the margins to the extreme, fitting as much text as possible on a page. More than that you'd print out of the paper. Its sample page, specifically the last page showcase the results that can be obtained.






    share|improve this answer















    I'd suggest using the package savetrees loaded with the [extreme] option which its purpose is exactly the scenario you are describing by minimizing all the margins to the extreme, fitting as much text as possible on a page. More than that you'd print out of the paper. Its sample page, specifically the last page showcase the results that can be obtained.







    share|improve this answer














    share|improve this answer



    share|improve this answer








    edited Jan 30 at 18:55









    PaulrBear

    1254




    1254










    answered Jan 30 at 13:48









    MaxirideMaxiride

    39619




    39619








    • 2





      Thanks ! It's Impressive : by just putting usepackage[extreme]{savetrees} I get an output that is slightly better than the one I have so far. I'll accept this answer if no better solution comes up

      – user40960
      Jan 30 at 13:57











    • Using a structured package like savetrees you could dig into it's .cls files and study how the author does it. I'm confident some more tweaking could be done.

      – Maxiride
      Jan 30 at 14:05






    • 2





      It's a package, so it does not have a .cls file but a .sty file.

      – TeXnician
      Jan 30 at 14:11






    • 5





      I think your reply is perfectly suited as an answer :-)

      – Daniel
      Jan 30 at 14:18














    • 2





      Thanks ! It's Impressive : by just putting usepackage[extreme]{savetrees} I get an output that is slightly better than the one I have so far. I'll accept this answer if no better solution comes up

      – user40960
      Jan 30 at 13:57











    • Using a structured package like savetrees you could dig into it's .cls files and study how the author does it. I'm confident some more tweaking could be done.

      – Maxiride
      Jan 30 at 14:05






    • 2





      It's a package, so it does not have a .cls file but a .sty file.

      – TeXnician
      Jan 30 at 14:11






    • 5





      I think your reply is perfectly suited as an answer :-)

      – Daniel
      Jan 30 at 14:18








    2




    2





    Thanks ! It's Impressive : by just putting usepackage[extreme]{savetrees} I get an output that is slightly better than the one I have so far. I'll accept this answer if no better solution comes up

    – user40960
    Jan 30 at 13:57





    Thanks ! It's Impressive : by just putting usepackage[extreme]{savetrees} I get an output that is slightly better than the one I have so far. I'll accept this answer if no better solution comes up

    – user40960
    Jan 30 at 13:57













    Using a structured package like savetrees you could dig into it's .cls files and study how the author does it. I'm confident some more tweaking could be done.

    – Maxiride
    Jan 30 at 14:05





    Using a structured package like savetrees you could dig into it's .cls files and study how the author does it. I'm confident some more tweaking could be done.

    – Maxiride
    Jan 30 at 14:05




    2




    2





    It's a package, so it does not have a .cls file but a .sty file.

    – TeXnician
    Jan 30 at 14:11





    It's a package, so it does not have a .cls file but a .sty file.

    – TeXnician
    Jan 30 at 14:11




    5




    5





    I think your reply is perfectly suited as an answer :-)

    – Daniel
    Jan 30 at 14:18





    I think your reply is perfectly suited as an answer :-)

    – Daniel
    Jan 30 at 14:18











    2














    Short answer:



    Get info about the length footskip. ;-)



    Long answer:



    I don't recommand modifying hoffset and voffset for setting the margins.



    According to the TeXBook, chapter 23, the purpose of these parameters is:




    If you want your output to be positioned differently when it is
    ultimately printed
    , you can offset it by giving nonzero values to
    hoffset and voffset. For example,

        hoffset=.5in
         voffset=1.5in

    will move the output half an inch to the right of its normal position,
    and 1.5 inches down. You should be careful not to offset the output so
    much that it falls off the edge of the physical medium on which it is
    being printed, unless you know that such out-of-bounds activity won't
    cause trouble.




    If I got this right, the layout of pages (i.e., the width of text etc) should not depend on hoffset and/or voffset as these dimension-parameters are to provide a possibility for shifting the entire page when it is already typeset according to the layout for typesetting pages.



    As far as I know, hoffset and voffset usually have the value 0pt and you change these values to shift entire pages horizontally/vertically by the values to which these parameters are set.



    Changing hoffset and voffset should, e.g., not affect the width of text typeset by LaTeX.



    Imagine someone puts a stamp on a piece of paper. The stamp is exactly the same size as the paper.
    The stamp is the text that LaTeX has typeset. voffset and hoffset determine how much the top left corner of the stamp is offset up/down and/or right/left relative to the top left corner of the paper.





    The package layout might be of interest to you.



    It defines the command layout which produces a drawing where you get a visible impression of all page-layout-parameters.
    The output of the command layout looks like this:



    enter image description here



    enter image description here





    For the horizontal alignment, LaTeX provides one parameter for the left margin of right-hand-pages.

    As right-hand-pages usually have page-numbers whose parity is odd, this parameter is called oddsidemargin.



    For the horizontal alignment, LaTeX provides one parameter for the left margin of left-hand-pages.

    As left-hand-pages usually have page-numbers whose parity is even, this parameter is called evensidemargin.



    The distinguishing between right-hand-pages and left-hand-pages only applies with "twoside"-documents.



    With "oneside"-documents every page is treated as if it was a right-hand-page. Thus with "oneside"-documents only the parameter oddsidemargin is applied.



    After playing with the package layout, I created a template where you can specify for right-hand-pages the margins at the left, the right, the bottom and at the top.



    In case the document is a "twoside"-document, the template will calculate the margins for left-hand-pages automatically so that

        left margin of right-hand-page=right margin of left-hand-page

    and

        right margin of right-hand-page=left margin of left-hand-page.



    I assume you wish a minimalist approach without page-headers.



    When playing around with the example below, while applying the article-class's option "twoside", make sure to set the view-mode of
    your pdf-viewing-program to "facing pages(first page centered)" or the like.



    documentclass[a4paper,twoside]{article}%
    %------------------------------------------------------
    % These packages are needed for detecting the engine -
    % detecting the engine is needed for finding out if
    % adjusting (pdf)pagewidth and (pdf)pageheight is
    % needed with things like the landscape-option:
    %------------------------------------------------------
    usepackage{iftex, ifpdf}
    %------------------------------------------------------
    ifXeTeX
    pdfpagewidth=paperwidth
    pdfpageheight=paperheight
    else
    ifLuaTeX
    pagewidth=paperwidth
    pageheight=paperheight
    else
    ifPDFTeX
    pdfpagewidth=paperwidth
    pdfpageheight=paperheight
    fi
    fi
    fi
    %------------------------------------------------------
    pagestyle{plain}%
    newlengthmyleftoddmargin
    newlengthmyrightoddmargin
    newlengthmytopmargin
    newlengthmybottommargin
    newlengthmyverticalgapbetweenbottommarginandpagenumber
    %-----------------------------------------------------------------
    %!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    % !!! Specify the margins here: !!!
    %!!!! !!!
    setlengthmyrightoddmargin{1.5cm}%
    setlengthmyleftoddmargin{.75cm}%
    % csname if@twosideendcsname
    % setlengthmyleftoddmargin{.5myrightoddmargin}%
    % else
    % setlengthmyleftoddmargin{myrightoddmargin}%
    % fi
    setlengthmytopmargin{1.5cm}%
    setlengthmybottommargin{1.5cm}%
    setlengthmyverticalgapbetweenbottommarginandpagenumber{.5mybottommargin}%
    %!!! That should do the trick. !!!
    %!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    %-----------------------------------------------------------------
    setlengthhoffset{0pt}% or whatever horizontal offset you need.
    % Usually the value is 0 by default.
    setlengthvoffset{0pt}% or whatever vertical offset you need.
    % Usually the value is 0 by default.
    setlengthoddsidemargin{myleftoddmargin}%
    addtolengthoddsidemargin{-1in}%
    setlengthevensidemargin{myrightoddmargin}%
    addtolengthevensidemargin{-1in}%
    setlengthmarginparwidth{.7myrightoddmargin}%
    setlengthmarginparsep{.15myrightoddmargin}%
    setlengthtextwidth{paperwidth}%
    addtolengthtextwidth{-myleftoddmargin}%
    addtolengthtextwidth{-myrightoddmargin}%
    %-----------------------------------------------------------------
    newlengthstandardletterheight
    newlengthstandardletterdepth
    settoheightstandardletterheight{%
    ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890%
    }%
    settodepthstandardletterdepth{%
    ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890%
    }%
    setlengthtopmargin{mytopmargin}%
    addtolengthtopmargin{-1in}%
    % This is the height of boxes of headings:
    setlengthheadheight{0ex}%
    % This is the distance between the bottom of a heading-box
    % and the first line of text - Also topskip-glue is added to
    % ensure that baselines of first lines of text of pages all are
    % in the same height:
    setlengthheadsep{0ex}%
    % In case of having page-headings, you probably don't need
    % to play around withtopskip.
    setlengthtopskip{standardletterheight}%
    setlengthtextheight{paperheight}%
    addtolengthtextheight{-mytopmargin}%
    addtolengthtextheight{-mybottommargin}%
    addtolengthtextheight{-standardletterdepth}%
    setlengthfootskip{myverticalgapbetweenbottommarginandpagenumber}%
    addtolengthfootskip{standardletterdepth}%
    addtolengthfootskip{.5standardletterheight}%

    begin{document}
    hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
    nointerlineskip
    nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
    nointerlineskip
    hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
    nointerlineskip
    newpage
    hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
    nointerlineskip
    nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
    nointerlineskip
    hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
    nointerlineskip
    newpage
    hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
    nointerlineskip
    nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
    nointerlineskip
    hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
    nointerlineskip
    end{document}


    enter image description here






    share|improve this answer






























      2














      Short answer:



      Get info about the length footskip. ;-)



      Long answer:



      I don't recommand modifying hoffset and voffset for setting the margins.



      According to the TeXBook, chapter 23, the purpose of these parameters is:




      If you want your output to be positioned differently when it is
      ultimately printed
      , you can offset it by giving nonzero values to
      hoffset and voffset. For example,

          hoffset=.5in
           voffset=1.5in

      will move the output half an inch to the right of its normal position,
      and 1.5 inches down. You should be careful not to offset the output so
      much that it falls off the edge of the physical medium on which it is
      being printed, unless you know that such out-of-bounds activity won't
      cause trouble.




      If I got this right, the layout of pages (i.e., the width of text etc) should not depend on hoffset and/or voffset as these dimension-parameters are to provide a possibility for shifting the entire page when it is already typeset according to the layout for typesetting pages.



      As far as I know, hoffset and voffset usually have the value 0pt and you change these values to shift entire pages horizontally/vertically by the values to which these parameters are set.



      Changing hoffset and voffset should, e.g., not affect the width of text typeset by LaTeX.



      Imagine someone puts a stamp on a piece of paper. The stamp is exactly the same size as the paper.
      The stamp is the text that LaTeX has typeset. voffset and hoffset determine how much the top left corner of the stamp is offset up/down and/or right/left relative to the top left corner of the paper.





      The package layout might be of interest to you.



      It defines the command layout which produces a drawing where you get a visible impression of all page-layout-parameters.
      The output of the command layout looks like this:



      enter image description here



      enter image description here





      For the horizontal alignment, LaTeX provides one parameter for the left margin of right-hand-pages.

      As right-hand-pages usually have page-numbers whose parity is odd, this parameter is called oddsidemargin.



      For the horizontal alignment, LaTeX provides one parameter for the left margin of left-hand-pages.

      As left-hand-pages usually have page-numbers whose parity is even, this parameter is called evensidemargin.



      The distinguishing between right-hand-pages and left-hand-pages only applies with "twoside"-documents.



      With "oneside"-documents every page is treated as if it was a right-hand-page. Thus with "oneside"-documents only the parameter oddsidemargin is applied.



      After playing with the package layout, I created a template where you can specify for right-hand-pages the margins at the left, the right, the bottom and at the top.



      In case the document is a "twoside"-document, the template will calculate the margins for left-hand-pages automatically so that

          left margin of right-hand-page=right margin of left-hand-page

      and

          right margin of right-hand-page=left margin of left-hand-page.



      I assume you wish a minimalist approach without page-headers.



      When playing around with the example below, while applying the article-class's option "twoside", make sure to set the view-mode of
      your pdf-viewing-program to "facing pages(first page centered)" or the like.



      documentclass[a4paper,twoside]{article}%
      %------------------------------------------------------
      % These packages are needed for detecting the engine -
      % detecting the engine is needed for finding out if
      % adjusting (pdf)pagewidth and (pdf)pageheight is
      % needed with things like the landscape-option:
      %------------------------------------------------------
      usepackage{iftex, ifpdf}
      %------------------------------------------------------
      ifXeTeX
      pdfpagewidth=paperwidth
      pdfpageheight=paperheight
      else
      ifLuaTeX
      pagewidth=paperwidth
      pageheight=paperheight
      else
      ifPDFTeX
      pdfpagewidth=paperwidth
      pdfpageheight=paperheight
      fi
      fi
      fi
      %------------------------------------------------------
      pagestyle{plain}%
      newlengthmyleftoddmargin
      newlengthmyrightoddmargin
      newlengthmytopmargin
      newlengthmybottommargin
      newlengthmyverticalgapbetweenbottommarginandpagenumber
      %-----------------------------------------------------------------
      %!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      % !!! Specify the margins here: !!!
      %!!!! !!!
      setlengthmyrightoddmargin{1.5cm}%
      setlengthmyleftoddmargin{.75cm}%
      % csname if@twosideendcsname
      % setlengthmyleftoddmargin{.5myrightoddmargin}%
      % else
      % setlengthmyleftoddmargin{myrightoddmargin}%
      % fi
      setlengthmytopmargin{1.5cm}%
      setlengthmybottommargin{1.5cm}%
      setlengthmyverticalgapbetweenbottommarginandpagenumber{.5mybottommargin}%
      %!!! That should do the trick. !!!
      %!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
      %-----------------------------------------------------------------
      setlengthhoffset{0pt}% or whatever horizontal offset you need.
      % Usually the value is 0 by default.
      setlengthvoffset{0pt}% or whatever vertical offset you need.
      % Usually the value is 0 by default.
      setlengthoddsidemargin{myleftoddmargin}%
      addtolengthoddsidemargin{-1in}%
      setlengthevensidemargin{myrightoddmargin}%
      addtolengthevensidemargin{-1in}%
      setlengthmarginparwidth{.7myrightoddmargin}%
      setlengthmarginparsep{.15myrightoddmargin}%
      setlengthtextwidth{paperwidth}%
      addtolengthtextwidth{-myleftoddmargin}%
      addtolengthtextwidth{-myrightoddmargin}%
      %-----------------------------------------------------------------
      newlengthstandardletterheight
      newlengthstandardletterdepth
      settoheightstandardletterheight{%
      ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890%
      }%
      settodepthstandardletterdepth{%
      ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890%
      }%
      setlengthtopmargin{mytopmargin}%
      addtolengthtopmargin{-1in}%
      % This is the height of boxes of headings:
      setlengthheadheight{0ex}%
      % This is the distance between the bottom of a heading-box
      % and the first line of text - Also topskip-glue is added to
      % ensure that baselines of first lines of text of pages all are
      % in the same height:
      setlengthheadsep{0ex}%
      % In case of having page-headings, you probably don't need
      % to play around withtopskip.
      setlengthtopskip{standardletterheight}%
      setlengthtextheight{paperheight}%
      addtolengthtextheight{-mytopmargin}%
      addtolengthtextheight{-mybottommargin}%
      addtolengthtextheight{-standardletterdepth}%
      setlengthfootskip{myverticalgapbetweenbottommarginandpagenumber}%
      addtolengthfootskip{standardletterdepth}%
      addtolengthfootskip{.5standardletterheight}%

      begin{document}
      hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
      nointerlineskip
      nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
      nointerlineskip
      hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
      nointerlineskip
      newpage
      hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
      nointerlineskip
      nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
      nointerlineskip
      hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
      nointerlineskip
      newpage
      hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
      nointerlineskip
      nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
      nointerlineskip
      hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
      nointerlineskip
      end{document}


      enter image description here






      share|improve this answer




























        2












        2








        2







        Short answer:



        Get info about the length footskip. ;-)



        Long answer:



        I don't recommand modifying hoffset and voffset for setting the margins.



        According to the TeXBook, chapter 23, the purpose of these parameters is:




        If you want your output to be positioned differently when it is
        ultimately printed
        , you can offset it by giving nonzero values to
        hoffset and voffset. For example,

            hoffset=.5in
             voffset=1.5in

        will move the output half an inch to the right of its normal position,
        and 1.5 inches down. You should be careful not to offset the output so
        much that it falls off the edge of the physical medium on which it is
        being printed, unless you know that such out-of-bounds activity won't
        cause trouble.




        If I got this right, the layout of pages (i.e., the width of text etc) should not depend on hoffset and/or voffset as these dimension-parameters are to provide a possibility for shifting the entire page when it is already typeset according to the layout for typesetting pages.



        As far as I know, hoffset and voffset usually have the value 0pt and you change these values to shift entire pages horizontally/vertically by the values to which these parameters are set.



        Changing hoffset and voffset should, e.g., not affect the width of text typeset by LaTeX.



        Imagine someone puts a stamp on a piece of paper. The stamp is exactly the same size as the paper.
        The stamp is the text that LaTeX has typeset. voffset and hoffset determine how much the top left corner of the stamp is offset up/down and/or right/left relative to the top left corner of the paper.





        The package layout might be of interest to you.



        It defines the command layout which produces a drawing where you get a visible impression of all page-layout-parameters.
        The output of the command layout looks like this:



        enter image description here



        enter image description here





        For the horizontal alignment, LaTeX provides one parameter for the left margin of right-hand-pages.

        As right-hand-pages usually have page-numbers whose parity is odd, this parameter is called oddsidemargin.



        For the horizontal alignment, LaTeX provides one parameter for the left margin of left-hand-pages.

        As left-hand-pages usually have page-numbers whose parity is even, this parameter is called evensidemargin.



        The distinguishing between right-hand-pages and left-hand-pages only applies with "twoside"-documents.



        With "oneside"-documents every page is treated as if it was a right-hand-page. Thus with "oneside"-documents only the parameter oddsidemargin is applied.



        After playing with the package layout, I created a template where you can specify for right-hand-pages the margins at the left, the right, the bottom and at the top.



        In case the document is a "twoside"-document, the template will calculate the margins for left-hand-pages automatically so that

            left margin of right-hand-page=right margin of left-hand-page

        and

            right margin of right-hand-page=left margin of left-hand-page.



        I assume you wish a minimalist approach without page-headers.



        When playing around with the example below, while applying the article-class's option "twoside", make sure to set the view-mode of
        your pdf-viewing-program to "facing pages(first page centered)" or the like.



        documentclass[a4paper,twoside]{article}%
        %------------------------------------------------------
        % These packages are needed for detecting the engine -
        % detecting the engine is needed for finding out if
        % adjusting (pdf)pagewidth and (pdf)pageheight is
        % needed with things like the landscape-option:
        %------------------------------------------------------
        usepackage{iftex, ifpdf}
        %------------------------------------------------------
        ifXeTeX
        pdfpagewidth=paperwidth
        pdfpageheight=paperheight
        else
        ifLuaTeX
        pagewidth=paperwidth
        pageheight=paperheight
        else
        ifPDFTeX
        pdfpagewidth=paperwidth
        pdfpageheight=paperheight
        fi
        fi
        fi
        %------------------------------------------------------
        pagestyle{plain}%
        newlengthmyleftoddmargin
        newlengthmyrightoddmargin
        newlengthmytopmargin
        newlengthmybottommargin
        newlengthmyverticalgapbetweenbottommarginandpagenumber
        %-----------------------------------------------------------------
        %!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
        % !!! Specify the margins here: !!!
        %!!!! !!!
        setlengthmyrightoddmargin{1.5cm}%
        setlengthmyleftoddmargin{.75cm}%
        % csname if@twosideendcsname
        % setlengthmyleftoddmargin{.5myrightoddmargin}%
        % else
        % setlengthmyleftoddmargin{myrightoddmargin}%
        % fi
        setlengthmytopmargin{1.5cm}%
        setlengthmybottommargin{1.5cm}%
        setlengthmyverticalgapbetweenbottommarginandpagenumber{.5mybottommargin}%
        %!!! That should do the trick. !!!
        %!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
        %-----------------------------------------------------------------
        setlengthhoffset{0pt}% or whatever horizontal offset you need.
        % Usually the value is 0 by default.
        setlengthvoffset{0pt}% or whatever vertical offset you need.
        % Usually the value is 0 by default.
        setlengthoddsidemargin{myleftoddmargin}%
        addtolengthoddsidemargin{-1in}%
        setlengthevensidemargin{myrightoddmargin}%
        addtolengthevensidemargin{-1in}%
        setlengthmarginparwidth{.7myrightoddmargin}%
        setlengthmarginparsep{.15myrightoddmargin}%
        setlengthtextwidth{paperwidth}%
        addtolengthtextwidth{-myleftoddmargin}%
        addtolengthtextwidth{-myrightoddmargin}%
        %-----------------------------------------------------------------
        newlengthstandardletterheight
        newlengthstandardletterdepth
        settoheightstandardletterheight{%
        ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890%
        }%
        settodepthstandardletterdepth{%
        ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890%
        }%
        setlengthtopmargin{mytopmargin}%
        addtolengthtopmargin{-1in}%
        % This is the height of boxes of headings:
        setlengthheadheight{0ex}%
        % This is the distance between the bottom of a heading-box
        % and the first line of text - Also topskip-glue is added to
        % ensure that baselines of first lines of text of pages all are
        % in the same height:
        setlengthheadsep{0ex}%
        % In case of having page-headings, you probably don't need
        % to play around withtopskip.
        setlengthtopskip{standardletterheight}%
        setlengthtextheight{paperheight}%
        addtolengthtextheight{-mytopmargin}%
        addtolengthtextheight{-mybottommargin}%
        addtolengthtextheight{-standardletterdepth}%
        setlengthfootskip{myverticalgapbetweenbottommarginandpagenumber}%
        addtolengthfootskip{standardletterdepth}%
        addtolengthfootskip{.5standardletterheight}%

        begin{document}
        hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
        nointerlineskip
        nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
        nointerlineskip
        hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
        nointerlineskip
        newpage
        hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
        nointerlineskip
        nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
        nointerlineskip
        hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
        nointerlineskip
        newpage
        hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
        nointerlineskip
        nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
        nointerlineskip
        hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
        nointerlineskip
        end{document}


        enter image description here






        share|improve this answer















        Short answer:



        Get info about the length footskip. ;-)



        Long answer:



        I don't recommand modifying hoffset and voffset for setting the margins.



        According to the TeXBook, chapter 23, the purpose of these parameters is:




        If you want your output to be positioned differently when it is
        ultimately printed
        , you can offset it by giving nonzero values to
        hoffset and voffset. For example,

            hoffset=.5in
             voffset=1.5in

        will move the output half an inch to the right of its normal position,
        and 1.5 inches down. You should be careful not to offset the output so
        much that it falls off the edge of the physical medium on which it is
        being printed, unless you know that such out-of-bounds activity won't
        cause trouble.




        If I got this right, the layout of pages (i.e., the width of text etc) should not depend on hoffset and/or voffset as these dimension-parameters are to provide a possibility for shifting the entire page when it is already typeset according to the layout for typesetting pages.



        As far as I know, hoffset and voffset usually have the value 0pt and you change these values to shift entire pages horizontally/vertically by the values to which these parameters are set.



        Changing hoffset and voffset should, e.g., not affect the width of text typeset by LaTeX.



        Imagine someone puts a stamp on a piece of paper. The stamp is exactly the same size as the paper.
        The stamp is the text that LaTeX has typeset. voffset and hoffset determine how much the top left corner of the stamp is offset up/down and/or right/left relative to the top left corner of the paper.





        The package layout might be of interest to you.



        It defines the command layout which produces a drawing where you get a visible impression of all page-layout-parameters.
        The output of the command layout looks like this:



        enter image description here



        enter image description here





        For the horizontal alignment, LaTeX provides one parameter for the left margin of right-hand-pages.

        As right-hand-pages usually have page-numbers whose parity is odd, this parameter is called oddsidemargin.



        For the horizontal alignment, LaTeX provides one parameter for the left margin of left-hand-pages.

        As left-hand-pages usually have page-numbers whose parity is even, this parameter is called evensidemargin.



        The distinguishing between right-hand-pages and left-hand-pages only applies with "twoside"-documents.



        With "oneside"-documents every page is treated as if it was a right-hand-page. Thus with "oneside"-documents only the parameter oddsidemargin is applied.



        After playing with the package layout, I created a template where you can specify for right-hand-pages the margins at the left, the right, the bottom and at the top.



        In case the document is a "twoside"-document, the template will calculate the margins for left-hand-pages automatically so that

            left margin of right-hand-page=right margin of left-hand-page

        and

            right margin of right-hand-page=left margin of left-hand-page.



        I assume you wish a minimalist approach without page-headers.



        When playing around with the example below, while applying the article-class's option "twoside", make sure to set the view-mode of
        your pdf-viewing-program to "facing pages(first page centered)" or the like.



        documentclass[a4paper,twoside]{article}%
        %------------------------------------------------------
        % These packages are needed for detecting the engine -
        % detecting the engine is needed for finding out if
        % adjusting (pdf)pagewidth and (pdf)pageheight is
        % needed with things like the landscape-option:
        %------------------------------------------------------
        usepackage{iftex, ifpdf}
        %------------------------------------------------------
        ifXeTeX
        pdfpagewidth=paperwidth
        pdfpageheight=paperheight
        else
        ifLuaTeX
        pagewidth=paperwidth
        pageheight=paperheight
        else
        ifPDFTeX
        pdfpagewidth=paperwidth
        pdfpageheight=paperheight
        fi
        fi
        fi
        %------------------------------------------------------
        pagestyle{plain}%
        newlengthmyleftoddmargin
        newlengthmyrightoddmargin
        newlengthmytopmargin
        newlengthmybottommargin
        newlengthmyverticalgapbetweenbottommarginandpagenumber
        %-----------------------------------------------------------------
        %!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
        % !!! Specify the margins here: !!!
        %!!!! !!!
        setlengthmyrightoddmargin{1.5cm}%
        setlengthmyleftoddmargin{.75cm}%
        % csname if@twosideendcsname
        % setlengthmyleftoddmargin{.5myrightoddmargin}%
        % else
        % setlengthmyleftoddmargin{myrightoddmargin}%
        % fi
        setlengthmytopmargin{1.5cm}%
        setlengthmybottommargin{1.5cm}%
        setlengthmyverticalgapbetweenbottommarginandpagenumber{.5mybottommargin}%
        %!!! That should do the trick. !!!
        %!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
        %-----------------------------------------------------------------
        setlengthhoffset{0pt}% or whatever horizontal offset you need.
        % Usually the value is 0 by default.
        setlengthvoffset{0pt}% or whatever vertical offset you need.
        % Usually the value is 0 by default.
        setlengthoddsidemargin{myleftoddmargin}%
        addtolengthoddsidemargin{-1in}%
        setlengthevensidemargin{myrightoddmargin}%
        addtolengthevensidemargin{-1in}%
        setlengthmarginparwidth{.7myrightoddmargin}%
        setlengthmarginparsep{.15myrightoddmargin}%
        setlengthtextwidth{paperwidth}%
        addtolengthtextwidth{-myleftoddmargin}%
        addtolengthtextwidth{-myrightoddmargin}%
        %-----------------------------------------------------------------
        newlengthstandardletterheight
        newlengthstandardletterdepth
        settoheightstandardletterheight{%
        ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890%
        }%
        settodepthstandardletterdepth{%
        ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890%
        }%
        setlengthtopmargin{mytopmargin}%
        addtolengthtopmargin{-1in}%
        % This is the height of boxes of headings:
        setlengthheadheight{0ex}%
        % This is the distance between the bottom of a heading-box
        % and the first line of text - Also topskip-glue is added to
        % ensure that baselines of first lines of text of pages all are
        % in the same height:
        setlengthheadsep{0ex}%
        % In case of having page-headings, you probably don't need
        % to play around withtopskip.
        setlengthtopskip{standardletterheight}%
        setlengthtextheight{paperheight}%
        addtolengthtextheight{-mytopmargin}%
        addtolengthtextheight{-mybottommargin}%
        addtolengthtextheight{-standardletterdepth}%
        setlengthfootskip{myverticalgapbetweenbottommarginandpagenumber}%
        addtolengthfootskip{standardletterdepth}%
        addtolengthfootskip{.5standardletterheight}%

        begin{document}
        hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
        nointerlineskip
        nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
        nointerlineskip
        hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
        nointerlineskip
        newpage
        hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
        nointerlineskip
        nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
        nointerlineskip
        hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
        nointerlineskip
        newpage
        hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
        nointerlineskip
        nullxleadershbox totextwidth{Xgxleadershbox{Xg}hfill Xg}vfill
        nointerlineskip
        hbox totextwidth{Xgxleadershbox{Xg}hfill Xg}%
        nointerlineskip
        end{document}


        enter image description here







        share|improve this answer














        share|improve this answer



        share|improve this answer








        edited Jan 31 at 1:17

























        answered Jan 30 at 23:59









        Ulrich DiezUlrich Diez

        4,930618




        4,930618






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to TeX - LaTeX Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f472563%2fextreme-paper-space-saving-very-small-margins-how-to-lower-the-page-number%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            How do I know what Microsoft account the skydrive app is syncing to?

            When does type information flow backwards in C++?

            Grease: Live!