Center page as a whole without centering each element individually
I have some narrow text and tabular environments that I'd like to center based on the horizontal space they use up in total. However, it's important that when centered, the original alignments between the elements are preserved. So the effect would be more like increasing margins. Naturally, centering won't work, as it centers every element individually.
The closest I've come is using a minipage and scaling the width by eye. The total width of the page content might vary though. So is there a way to do this kind of centering?
I guess if there's a way to measure the total width that a page takes, it could be fed to minipage. I have very little experience with LaTeX macros and what's generally possible. So any help would be greatly appreciated!
Here's an example.


And a minimal code with all cases:
documentclass[12pt]{article}
usepackage[margin=1in]{geometry}
usepackage[utf8]{inputenc}
usepackage[finnish]{babel}
usepackage{gensymb}
setlength{parskip}{1em}
begin{document}
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
centering
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
centering
begin{minipage}{0.3linewidth}
setlength{parskip}{1em}
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
end{minipage}
end{document}
horizontal-alignment
add a comment |
I have some narrow text and tabular environments that I'd like to center based on the horizontal space they use up in total. However, it's important that when centered, the original alignments between the elements are preserved. So the effect would be more like increasing margins. Naturally, centering won't work, as it centers every element individually.
The closest I've come is using a minipage and scaling the width by eye. The total width of the page content might vary though. So is there a way to do this kind of centering?
I guess if there's a way to measure the total width that a page takes, it could be fed to minipage. I have very little experience with LaTeX macros and what's generally possible. So any help would be greatly appreciated!
Here's an example.


And a minimal code with all cases:
documentclass[12pt]{article}
usepackage[margin=1in]{geometry}
usepackage[utf8]{inputenc}
usepackage[finnish]{babel}
usepackage{gensymb}
setlength{parskip}{1em}
begin{document}
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
centering
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
centering
begin{minipage}{0.3linewidth}
setlength{parskip}{1em}
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
end{minipage}
end{document}
horizontal-alignment
1
Please make a minimal working example (MWE) that illustrates your issue.
– leandriis
2 hours ago
1
If you can provide the code that produces the above content, one could better assist you with ideas on how to centre the content.
– Werner
2 hours ago
@leandriis Added.
– Felix
1 hour ago
@Felix: Thanks for adding the example. If I understand you correctly, you basically would like to achieve the result in the third example?
– leandriis
1 hour ago
@leandriis Correct, the second one is the attempt usingcentering, which I'm sure you see is not the proper output.
– Felix
1 hour ago
add a comment |
I have some narrow text and tabular environments that I'd like to center based on the horizontal space they use up in total. However, it's important that when centered, the original alignments between the elements are preserved. So the effect would be more like increasing margins. Naturally, centering won't work, as it centers every element individually.
The closest I've come is using a minipage and scaling the width by eye. The total width of the page content might vary though. So is there a way to do this kind of centering?
I guess if there's a way to measure the total width that a page takes, it could be fed to minipage. I have very little experience with LaTeX macros and what's generally possible. So any help would be greatly appreciated!
Here's an example.


And a minimal code with all cases:
documentclass[12pt]{article}
usepackage[margin=1in]{geometry}
usepackage[utf8]{inputenc}
usepackage[finnish]{babel}
usepackage{gensymb}
setlength{parskip}{1em}
begin{document}
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
centering
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
centering
begin{minipage}{0.3linewidth}
setlength{parskip}{1em}
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
end{minipage}
end{document}
horizontal-alignment
I have some narrow text and tabular environments that I'd like to center based on the horizontal space they use up in total. However, it's important that when centered, the original alignments between the elements are preserved. So the effect would be more like increasing margins. Naturally, centering won't work, as it centers every element individually.
The closest I've come is using a minipage and scaling the width by eye. The total width of the page content might vary though. So is there a way to do this kind of centering?
I guess if there's a way to measure the total width that a page takes, it could be fed to minipage. I have very little experience with LaTeX macros and what's generally possible. So any help would be greatly appreciated!
Here's an example.


And a minimal code with all cases:
documentclass[12pt]{article}
usepackage[margin=1in]{geometry}
usepackage[utf8]{inputenc}
usepackage[finnish]{babel}
usepackage{gensymb}
setlength{parskip}{1em}
begin{document}
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
centering
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
centering
begin{minipage}{0.3linewidth}
setlength{parskip}{1em}
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
end{minipage}
end{document}
horizontal-alignment
horizontal-alignment
edited 1 hour ago
Felix
asked 2 hours ago
FelixFelix
1386
1386
1
Please make a minimal working example (MWE) that illustrates your issue.
– leandriis
2 hours ago
1
If you can provide the code that produces the above content, one could better assist you with ideas on how to centre the content.
– Werner
2 hours ago
@leandriis Added.
– Felix
1 hour ago
@Felix: Thanks for adding the example. If I understand you correctly, you basically would like to achieve the result in the third example?
– leandriis
1 hour ago
@leandriis Correct, the second one is the attempt usingcentering, which I'm sure you see is not the proper output.
– Felix
1 hour ago
add a comment |
1
Please make a minimal working example (MWE) that illustrates your issue.
– leandriis
2 hours ago
1
If you can provide the code that produces the above content, one could better assist you with ideas on how to centre the content.
– Werner
2 hours ago
@leandriis Added.
– Felix
1 hour ago
@Felix: Thanks for adding the example. If I understand you correctly, you basically would like to achieve the result in the third example?
– leandriis
1 hour ago
@leandriis Correct, the second one is the attempt usingcentering, which I'm sure you see is not the proper output.
– Felix
1 hour ago
1
1
Please make a minimal working example (MWE) that illustrates your issue.
– leandriis
2 hours ago
Please make a minimal working example (MWE) that illustrates your issue.
– leandriis
2 hours ago
1
1
If you can provide the code that produces the above content, one could better assist you with ideas on how to centre the content.
– Werner
2 hours ago
If you can provide the code that produces the above content, one could better assist you with ideas on how to centre the content.
– Werner
2 hours ago
@leandriis Added.
– Felix
1 hour ago
@leandriis Added.
– Felix
1 hour ago
@Felix: Thanks for adding the example. If I understand you correctly, you basically would like to achieve the result in the third example?
– leandriis
1 hour ago
@Felix: Thanks for adding the example. If I understand you correctly, you basically would like to achieve the result in the third example?
– leandriis
1 hour ago
@leandriis Correct, the second one is the attempt using
centering, which I'm sure you see is not the proper output.– Felix
1 hour ago
@leandriis Correct, the second one is the attempt using
centering, which I'm sure you see is not the proper output.– Felix
1 hour ago
add a comment |
2 Answers
2
active
oldest
votes
Instead of a minipage you could use a varwidth environment - this will automatically shrink to the necessary width:
documentclass[12pt]{article}
usepackage[margin=1in]{geometry}
usepackage[utf8]{inputenc}
usepackage[finnish]{babel}
usepackage{gensymb}
setlength{parskip}{1em}
usepackage{varwidth}
begin{document}
centering
begin{varwidth}{linewidth}
setlength{parskip}{1em}
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
end{varwidth}
end{document}

Well damn, yet again I'm not alone with my problems. Simple. Effective. Thanks!
– Felix
1 hour ago
@Felix You're welcome! Thanks to the nice MWE you prepared, this was easy to answer!
– samcarter
1 hour ago
add a comment |
I would just set the constructions inside a tabular (that doesn't have any column padding, although that's necessary). The tabular will expand as needed, ultimately representing an unbreakable box that you can centre:

documentclass{article}
usepackage[margin=1in]{geometry}
begin{document}
centering
begin{tabular}{@{} l @{}}
Intro \
\
begin{tabular}{ l | l }
C & C
end{tabular} \
\
Juttu \
\
begin{tabular}{ l | l | l | l }
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C
end{tabular}
end{tabular}
end{document}
Having the line breaks everywhere bothers me a bit. Maybe too much. But yeah, didn't think of that, thanks for the answer!
– Felix
1 hour ago
Maybe one could also useIntro \[parskip]instead ofIntro \ \?
– leandriis
1 hour ago
add a comment |
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
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f480364%2fcenter-page-as-a-whole-without-centering-each-element-individually%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
Instead of a minipage you could use a varwidth environment - this will automatically shrink to the necessary width:
documentclass[12pt]{article}
usepackage[margin=1in]{geometry}
usepackage[utf8]{inputenc}
usepackage[finnish]{babel}
usepackage{gensymb}
setlength{parskip}{1em}
usepackage{varwidth}
begin{document}
centering
begin{varwidth}{linewidth}
setlength{parskip}{1em}
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
end{varwidth}
end{document}

Well damn, yet again I'm not alone with my problems. Simple. Effective. Thanks!
– Felix
1 hour ago
@Felix You're welcome! Thanks to the nice MWE you prepared, this was easy to answer!
– samcarter
1 hour ago
add a comment |
Instead of a minipage you could use a varwidth environment - this will automatically shrink to the necessary width:
documentclass[12pt]{article}
usepackage[margin=1in]{geometry}
usepackage[utf8]{inputenc}
usepackage[finnish]{babel}
usepackage{gensymb}
setlength{parskip}{1em}
usepackage{varwidth}
begin{document}
centering
begin{varwidth}{linewidth}
setlength{parskip}{1em}
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
end{varwidth}
end{document}

Well damn, yet again I'm not alone with my problems. Simple. Effective. Thanks!
– Felix
1 hour ago
@Felix You're welcome! Thanks to the nice MWE you prepared, this was easy to answer!
– samcarter
1 hour ago
add a comment |
Instead of a minipage you could use a varwidth environment - this will automatically shrink to the necessary width:
documentclass[12pt]{article}
usepackage[margin=1in]{geometry}
usepackage[utf8]{inputenc}
usepackage[finnish]{babel}
usepackage{gensymb}
setlength{parskip}{1em}
usepackage{varwidth}
begin{document}
centering
begin{varwidth}{linewidth}
setlength{parskip}{1em}
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
end{varwidth}
end{document}

Instead of a minipage you could use a varwidth environment - this will automatically shrink to the necessary width:
documentclass[12pt]{article}
usepackage[margin=1in]{geometry}
usepackage[utf8]{inputenc}
usepackage[finnish]{babel}
usepackage{gensymb}
setlength{parskip}{1em}
usepackage{varwidth}
begin{document}
centering
begin{varwidth}{linewidth}
setlength{parskip}{1em}
Intro
begin{tabular}{l|l}
C & C \
end{tabular}
Juttu
begin{tabular}{l|l|l|l}
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C \
end{tabular}
end{varwidth}
end{document}

edited 1 hour ago
Werner
448k709911697
448k709911697
answered 1 hour ago
samcartersamcarter
92.2k7105298
92.2k7105298
Well damn, yet again I'm not alone with my problems. Simple. Effective. Thanks!
– Felix
1 hour ago
@Felix You're welcome! Thanks to the nice MWE you prepared, this was easy to answer!
– samcarter
1 hour ago
add a comment |
Well damn, yet again I'm not alone with my problems. Simple. Effective. Thanks!
– Felix
1 hour ago
@Felix You're welcome! Thanks to the nice MWE you prepared, this was easy to answer!
– samcarter
1 hour ago
Well damn, yet again I'm not alone with my problems. Simple. Effective. Thanks!
– Felix
1 hour ago
Well damn, yet again I'm not alone with my problems. Simple. Effective. Thanks!
– Felix
1 hour ago
@Felix You're welcome! Thanks to the nice MWE you prepared, this was easy to answer!
– samcarter
1 hour ago
@Felix You're welcome! Thanks to the nice MWE you prepared, this was easy to answer!
– samcarter
1 hour ago
add a comment |
I would just set the constructions inside a tabular (that doesn't have any column padding, although that's necessary). The tabular will expand as needed, ultimately representing an unbreakable box that you can centre:

documentclass{article}
usepackage[margin=1in]{geometry}
begin{document}
centering
begin{tabular}{@{} l @{}}
Intro \
\
begin{tabular}{ l | l }
C & C
end{tabular} \
\
Juttu \
\
begin{tabular}{ l | l | l | l }
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C
end{tabular}
end{tabular}
end{document}
Having the line breaks everywhere bothers me a bit. Maybe too much. But yeah, didn't think of that, thanks for the answer!
– Felix
1 hour ago
Maybe one could also useIntro \[parskip]instead ofIntro \ \?
– leandriis
1 hour ago
add a comment |
I would just set the constructions inside a tabular (that doesn't have any column padding, although that's necessary). The tabular will expand as needed, ultimately representing an unbreakable box that you can centre:

documentclass{article}
usepackage[margin=1in]{geometry}
begin{document}
centering
begin{tabular}{@{} l @{}}
Intro \
\
begin{tabular}{ l | l }
C & C
end{tabular} \
\
Juttu \
\
begin{tabular}{ l | l | l | l }
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C
end{tabular}
end{tabular}
end{document}
Having the line breaks everywhere bothers me a bit. Maybe too much. But yeah, didn't think of that, thanks for the answer!
– Felix
1 hour ago
Maybe one could also useIntro \[parskip]instead ofIntro \ \?
– leandriis
1 hour ago
add a comment |
I would just set the constructions inside a tabular (that doesn't have any column padding, although that's necessary). The tabular will expand as needed, ultimately representing an unbreakable box that you can centre:

documentclass{article}
usepackage[margin=1in]{geometry}
begin{document}
centering
begin{tabular}{@{} l @{}}
Intro \
\
begin{tabular}{ l | l }
C & C
end{tabular} \
\
Juttu \
\
begin{tabular}{ l | l | l | l }
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C
end{tabular}
end{tabular}
end{document}
I would just set the constructions inside a tabular (that doesn't have any column padding, although that's necessary). The tabular will expand as needed, ultimately representing an unbreakable box that you can centre:

documentclass{article}
usepackage[margin=1in]{geometry}
begin{document}
centering
begin{tabular}{@{} l @{}}
Intro \
\
begin{tabular}{ l | l }
C & C
end{tabular} \
\
Juttu \
\
begin{tabular}{ l | l | l | l }
C & C & Am & G \
C Dm & C & C quad G G & C \
C & C & Am & G \
C Dm & C & C quad G G & C
end{tabular}
end{tabular}
end{document}
answered 1 hour ago
WernerWerner
448k709911697
448k709911697
Having the line breaks everywhere bothers me a bit. Maybe too much. But yeah, didn't think of that, thanks for the answer!
– Felix
1 hour ago
Maybe one could also useIntro \[parskip]instead ofIntro \ \?
– leandriis
1 hour ago
add a comment |
Having the line breaks everywhere bothers me a bit. Maybe too much. But yeah, didn't think of that, thanks for the answer!
– Felix
1 hour ago
Maybe one could also useIntro \[parskip]instead ofIntro \ \?
– leandriis
1 hour ago
Having the line breaks everywhere bothers me a bit. Maybe too much. But yeah, didn't think of that, thanks for the answer!
– Felix
1 hour ago
Having the line breaks everywhere bothers me a bit. Maybe too much. But yeah, didn't think of that, thanks for the answer!
– Felix
1 hour ago
Maybe one could also use
Intro \[parskip] instead of Intro \ \ ?– leandriis
1 hour ago
Maybe one could also use
Intro \[parskip] instead of Intro \ \ ?– leandriis
1 hour ago
add a comment |
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.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2ftex.stackexchange.com%2fquestions%2f480364%2fcenter-page-as-a-whole-without-centering-each-element-individually%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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
1
Please make a minimal working example (MWE) that illustrates your issue.
– leandriis
2 hours ago
1
If you can provide the code that produces the above content, one could better assist you with ideas on how to centre the content.
– Werner
2 hours ago
@leandriis Added.
– Felix
1 hour ago
@Felix: Thanks for adding the example. If I understand you correctly, you basically would like to achieve the result in the third example?
– leandriis
1 hour ago
@leandriis Correct, the second one is the attempt using
centering, which I'm sure you see is not the proper output.– Felix
1 hour ago