דילוג לתוכן

array, tabularx, longtable ו-tabulary ב-Scissor LaTeX

החבילות array ו-tabularx וקרובותיהן עובדות חלקית ב-Scissor LaTeX: טבלאות tabularx, tabulary, longtable ו-xltabular מסודרות כמו tabular, ותאים ארוכים נשברים לשורות כשהטבלה הייתה רחבה מהשורה; רוחבי עמודות (p{3cm}, X, רוחב הטבלה) וקוד >{...}/<{...} לא נלקחים בחשבון, \newcolumntype לא מוכרת, והכותרות של longtable לא חוזרות.

מה החבילות עושות

  • array מוסיפה סוגי עמודות כמו m{width} ו-b{width}, קוד לפני כל תא ואחריו עם >{...} ו-<{...}, ו-\newcolumntype לאותיות עמודה משלך.
  • tabularx נותנת את \begin{tabularx}{\textwidth}{lX}, שבה עמודות X נמתחות כך שלטבלה יהיה הרוחב הנתון. tabulary עושה את אותו הדבר עם עמודות L, C, R, J שמחלקות את הרוחב לפי התוכן.
  • longtable מאפשרת לטבלה להישבר בין עמודים, עם כותרת שחוזרת (\endhead). xltabular משלבת את longtable ו-tabularx.

מה עובד כאן

תכונהב-Scissor LaTeXהערות
tabularx, tabulary, xltabular, longtable, tabular*חלקיתמסודרות כמו tabular. ארגומנט הרוחב הכולל לא נלקח בחשבון.
עמודות X, L, C, R, JחלקיתX ו-L מיושרות לשמאל, C ממורכזת, R מיושרת לימין.
p{3cm}, m{3cm}, b{3cm}חלקיתמיושרות לשמאל; הרוחב לא נלקח בחשבון.
טקסט ארוך בתאעובדנשבר לשורות כשהטבלה הייתה רחבה מהשורה.
>{\bfseries}l, r<{\%}מושמטהקוד שלפני התאים ואחריהם לא נלקח בחשבון.
\newcolumntype{C}{...}לא נתמךמדולגת עם הערה בלשונית הבעיות, וההגדרה שלה מודפסת כטקסט. כתבו במקומה את סוג העמודה במלואו.
\endhead, \endfirsthead, \endfoot, \endlastfootמושמטטבלה ארוכה נשברת בין עמודים, אבל הכותרת שלה לא חוזרת.
\tabularnewlineעובדכמו \\.
\arraybackslashלא נתמךמדולגת עם הערה בלשונית הבעיות; חוץ מזה לא מזיקה.

דוגמאות

טבלת tabularx עם עמודה נמתחת. הטקסט הארוך נשבר בקצה הטקסט, כמו בהתקנת TeX:

tabularx עם עמודת X

LaTeXמבוא: \usepackage{tabularx}פתיחה בעורך (נפתח בכרטיסייה חדשה)
\begin{tabularx}{\textwidth}{lX}
\hline
Name & Notes \\
\hline
Erika Mustermann & Leads the project, writes the reports and checks
  every one of the 44 measurements twice before they are published. \\
John Doe & Builds the test setup. \\
\hline
\end{tabularx}
סודר על ידי Scissor LaTeX: tabularx עם עמודת X

longtable עם שורת כותרת. הטבלה מסודרת; במסמך ארוך הכותרת לא הייתה חוזרת בעמוד הבא:

longtable עם \endhead

LaTeXמבוא: \usepackage{longtable}פתיחה בעורך (נפתח בכרטיסייה חדשה)
\begin{longtable}{lr}
\hline
Item & Count \\
\hline
\endhead
Pencils & 44 \\
Erasers & 12 \\
Rulers  & 7 \\
\hline
\end{longtable}

קוד בתוך >{...} לא נלקח בחשבון, ולכן העמודה הזאת לא מודגשת וסימני האחוז חסרים:

>{...} ו-<{...} לא נלקחים בחשבון

LaTeXמבוא: \usepackage{array}פתיחה בעורך (נפתח בכרטיסייה חדשה)
\begin{tabular}{>{\bfseries}l r<{\,\%}}
Growth & 44 \\
Share  & 12 \\
\end{tabular}

במקום זאת כותבים את העיצוב בתוך התאים. זה עובד כאן וגם בהתקנת TeX:

עיצוב שנכתב בתוך התאים

\begin{tabular}{lr}
\textbf{Growth} & 44\,\% \\
\textbf{Share}  & 12\,\% \\
\end{tabular}

תאימות

  • מהתקנת TeX לכאן: הטבלאות מסודרות ושומרות על היישור שלהן, אבל לא על רוחבי העמודות. חפשו אותיות עמודה מותאמות מ-\newcolumntype.
  • מכאן להתקנת TeX: המסמכים מתהדרים שם בלי שינוי, והרוחבים מוחלים שם.

המדריכים המלאים נמצאים ב-CTAN: ctan.org/pkg/array, ctan.org/pkg/tabularx, ctan.org/pkg/tabulary, ctan.org/pkg/longtable ו-ctan.org/pkg/xltabular. לטבלאות באופן כללי, ראו טבלאות ב-LaTeX.

ראו גם טבלאות, multirow, booktabs ו-מחולל הטבלאות של LaTeX.

שאלות ותשובות

למה לעמודת p{3cm} שלי אין רוחב של 3 ס"מ?

רוחבי עמודות עוד לא מוחלים. טקסט ארוך עדיין נשבר בקצה הטקסט, כך שהטבלה נשארת בתוך העמוד.

האם longtable נשברת בין עמודים?

כן, טבלה ארוכה ממשיכה בעמוד הבא, אבל השורות שסומנו ב-\endhead לא חוזרות שם.

כל דוגמה בדף הזה מסודרת על ידי Scissor LaTeX בזמן בניית האתר. עודכן לאחרונה: 2026-11-07.