ฉันจะลบหน้าว่างที่อยู่ระหว่างสองบทในภาคผนวกได้อย่างไร


93

มีวิธีลบหน้าว่างที่ปรากฏระหว่างสองบทในภาคผนวกหรือไม่?

คำตอบ:


129

ปัญหาของคุณคือทุกบทไม่ว่าจะอยู่ในภาคผนวกหรือไม่ก็ตามค่าเริ่มต้นจะเริ่มต้นในหน้าที่มีเลขคี่เมื่อคุณอยู่ในโหมดเค้าโครงสองด้าน แนวทางแก้ไขที่เป็นไปได้บางประการ:

วิธีแก้ปัญหาที่ง่ายที่สุดคือใช้openanyตัวเลือกในคลาสเอกสารของคุณซึ่งจะทำให้บทต่างๆเริ่มต้นในหน้าถัดไปโดยไม่คำนึงว่าจะเป็นหน้าคี่หรือเลขคู่ นี้ได้รับการสนับสนุนใน documentclass \documentclass[openany]{book}หนังสือมาตรฐานเช่น ( memoirยังสนับสนุนการใช้สิ่งนี้เป็นการประกาศ\openanyซึ่งสามารถใช้ในตอนกลางของเอกสารเพื่อเปลี่ยนลักษณะการทำงานของหน้าถัดไป)

อีกทางเลือกหนึ่งคือลองใช้\let\cleardoublepage\clearpageคำสั่งก่อนภาคผนวกของคุณเพื่อหลีกเลี่ยงพฤติกรรม

หรือถ้าคุณไม่สนใจที่จะใช้เลย์เอาต์สองด้านการใช้ตัวเลือกonesideในdocumentclass(เช่น\documentclass[oneside]{book}) ของคุณจะเปลี่ยนไปใช้เลย์เอาต์ด้านเดียว


4
คำจำกัดความของคุณจะลบตัวแบ่งหน้าทั้งหมดออก \ let \ cleardoublepage \ clearpage น่าจะตรงเป้าหมายมากกว่า
David Hanak

1
คุณใช้คลาสเอกสารอะไร
Noah

ฉันลองใช้bookและscrbookแต่จะใช้ได้ก็ต่อเมื่อคุณใส่คำสั่งในคำนำ
lumbric

ฉันใส่ \ let \ cleardoublepage \ clearpage หลัง \ appendix และมันใช้งานได้ดีกับ book เป็น documentclass ขอบคุณ!
user1736049

2
ฉันต้องการเค้าโครงสองด้านสำหรับการตั้งค่า แต่ฉันไม่ต้องการให้หน้าว่างทั้งหมด วิธีการแบบ openany ทำงานได้อย่างมีเสน่ห์ ขอบคุณ :)
OptimusCrime

87

มันง่ายมาก ๆ:

เพิ่ม\documentclass[oneside]{book} แล้วสบายดี;)


@frederic: โซลูชันที่ยอดเยี่ยมอย่างแท้จริง ขอบคุณมาก !
Sandeep Singh

11
โปรดทราบว่าวิธีนี้ทำให้ระยะขอบของหน้าทั้งหมดเหมือนกัน ใน twoside ระยะขอบจะแตกต่างกันสำหรับหน้าคี่และหน้าคู่
มิต

7
ตามที่กล่าวไว้ phaedrus หากคุณกำลังพิมพ์วิทยานิพนธ์คุณมักจะต้องมีระยะขอบซ้าย / ขวาที่แตกต่างกันซึ่งคุณต้องใช้ตัวเลือกสองหน้า
kufudo

1
ขอบคุณในกรณีของฉันแทนที่\documentclass[report,12pt]{memoir}ด้วยความ\documentclass[oneside,12pt]{memoir}ช่วยเหลือ
Olha

นอกเหนือไปจากปัญหาที่กล่าวถึงโดย Phaedrus, onesideตัวเลือกยังทำให้เกิดการที่จะไม่สนใจการตั้งค่าสำหรับหน้าแม้จะส่งผลให้เกิดข้อผิดพลาดเช่นนี้fancyhdr Package Fancyhdr Warning: \fancyfoot's `E' option without twoside option is useless on input line 6791ดังนั้นopenanyตัวเลือกจึงดีกว่ามากในกรณีนี้เนื่องจากมีผลเฉพาะตำแหน่งของแต่ละบทใหม่แทนที่จะส่งผลต่อระยะขอบและส่วนหัว / ท้ายกระดาษที่สลับกัน
Rafal

23

ฉันลองทำตามคำแนะนำของโนอาห์ซึ่งนำไปสู่ทางออกที่ดีที่สุดจนถึงตอนนี้

เพียงแค่แทรก\let\cleardoublepage\clearpageก่อนส่วนทั้งหมดด้วยหน้าว่างโดยเฉพาะอย่างยิ่งเมื่อคุณใช้\documentclass[12pt,a4paper]{book}

คำแนะนำของ frederic snyers \documentclass[oneside]{book}นั้นดีมากและช่วยแก้ปัญหาได้ แต่ถ้าเราแค่ต้องการใช้ book.cls หรือ article.cls คำแนะนำนั้นจะสร้างความแตกต่างอย่างมากในการนำเสนออนุภาคของคุณ

ดังนั้นการสนับสนุนที่ยิ่งใหญ่\let\cleardoublepage\clearpageสำหรับคนที่จะถามคำถามเดียวกันในอนาคต


ฉันควรแทรก \ let \ cleardoublepage \ clearpage ที่ไหน เช่นสำหรับ \ include {chapter2} ใน main.tex?
AshKan

เพียงใส่ลงในช่องว่างที่คุณต้องการลบหน้าว่างตัวอย่างเช่นหน้าว่างในบางบทคุณสามารถลองใส่หลังจาก \ begin {document}
Mike22LFC

มันทำงานได้ดีสำหรับฉันใน \ begin {document} และก่อน \ tableofcontents ขอบคุณ.
OSXMonk

16

หากคุณระบุตัวเลือก 'openany' ใน \ documentclass การประกาศแต่ละบทในหนังสือ (ฉันเดาว่าคุณกำลังใช้คลาสหนังสือเมื่อบทที่เปิดในหน้าถัดไปในรายงานและบทความไม่มีบท) จะเปิดขึ้นใน หน้าใหม่ไม่จำเป็นต้องเป็นหน้าเลขคี่ถัดไป

แน่นอนว่านั่นไม่ใช่สิ่งที่คุณต้องการ ฉันคิดว่าคุณต้องการตั้งค่า openany สำหรับบทต่างๆในภาคผนวก 'งอแงฉันไม่รู้จะทำยังไงฉันสงสัยว่าคุณต้องพับแขนเสื้อขึ้นและต่อสู้กับ TeX เอง


3

ฉันใส่ก่อน\let\cleardoublepage\clearpage \makeindexมิฉะนั้นหน้าเนื้อหาของคุณจะแสดงหมายเลขหน้าตามหมายเลขหน้าก่อนที่คุณจะล้างหน้าว่าง


3

สิ่งหนึ่งที่ฉันค้นพบคือการใช้คำสั่งรวมมักจะแทรกและเพิ่มหน้าว่าง เมื่อใช้เคล็ดลับก่อนหน้านี้ด้วยคำสั่ง \ let ฉันได้แทรก \ let \ include \ input ไว้ใกล้จุดเริ่มต้นของเอกสารและนั่นก็กำจัดหน้าว่างส่วนใหญ่ที่มากเกินไป


3
ขอบคุณมากสำหรับคำตอบของคุณ วิธีการก่อนหน้านี้ไม่ได้ผลสำหรับฉัน ฉันแทนที่ \ include ด้วย \ input และมันก็ใช้ได้ผลสำหรับฉัน!
Sali Hoo

สิ่งนี้ใช้ได้ผลกับฉันเช่นกันโดยใช้คลาสรายงาน Koma Script ที่ปรับเปลี่ยนเล็กน้อย มีความคิดว่าทำไม \ รวมถึงสิ่งนี้? จะแก้ปัญหาได้อย่างไร?
SACHIN GARG

-1 ฉันคิดว่ามันอาจจะเหมาะสมที่สุดที่จะใช้\inputถ้านั่นคือสิ่งที่คุณต้องการแทนที่จะกำหนดใหม่\includeให้เป็นแบบนั้น ฉันคิดว่าtex.stackexchange.com/questions/246/…อธิบายว่าเหตุใดจึงเกิดขึ้น เป็นเพราะ\includeตั้งใจทำมากกว่าแค่คัดลอกวางข้อความลงในเอกสาร
andyg0808

2

ในกรณีของฉันฉันยังคงต้องการตัวเลือกเปิดในหน้าคี่ แต่จะสร้างหน้าว่างที่มีชื่อบทในส่วนหัว ฉันไม่ต้องการส่วนหัว ดังนั้นเพื่อหลีกเลี่ยงสิ่งนี้ฉันใช้สิ่งนี้ในตอนท้ายของบท:

\clearpage

\thispagestyle{plain}

วิธีนี้ให้คุณเก็บหน้าว่างไว้ในหน้าคู่สุดท้ายของบท แต่ไม่มีส่วนหัว


2

นอกจากนี้คุณยังสามารถใช้\openany, \openrightและ\openleftคำสั่ง:

\documentclass{memoir}
\begin{document}

\openany
\appendix

\openright
\appendixpage
This is the appendix.

\end{document}
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.