Маленькі «як зробити» для GNU/Linux-систем

Посилання на оригінальну статтю: http://www.uhu.es/gem/clinux/documentacion/mini_howtos.html/ch-cap_4.html

Розділ 8 — Обробка та форматування тексту

8.1 Приклади застосування pdftk

Оновлено 18 квітня 2017 року.

Оновлено 1 грудня 2011 року.

Ми представляємо кілька прикладів перетворення PDF-файлів за допомогою програми pdftk, потужної і простої програми для роботи з PDF-файлами.

  1. Видалення сторінок. Якщо у нас є файл з ім’ям text.pdf з десятьма сторінками, наступні команди перетворюють файл, що видаляє певні сторінки, і зберігає перетворений вихід у файл out_text.pdf:
    • Видалити перші дві сторінки:
      $ pdftk text.pdf cat 3-10 output out_text.pdf
    • Видалити сторінки 2, 3 і 6:
      $ pdftk text.pdf cat 1 4-5 7-10 output out_text.pdf
    • Об’єднати файли PDF .
      $ pdftk 1.pdf 2.pdf 3.pdf 4.pdf cat output file1234.pdf

      Ця команда об’єднує чотири файли в кінцевий файл file1234.pdf.

    • Розділіть PDF-файл на сторінки. Якщо ви хочете створити pdf, включаючи тільки першу сторінку файлу jpcA.pdf
      pdftk jpcA.pdf cat 1 output jpcA_p1.pdf

      Якщо ви хочете витягнути сторінки з 1 по 3, вийдіть зі сторінок 4 і 5 і включіть інші сторінки, які можна виконати

      pdftk jpcA.pdf cat 1-3 6-end output jpcA_partial.pdf
    • Якщо ви хочете витягти всі сторінки PDF-документа в окремі файли, ви можете скористатися опцією пакета. Якщо файл document_A.pdf має 8 сторінок, то команда
      pdftk document_A.pdf burst output document_A_page_%01d.pdf

      створює файли document_A_page_1.pdf … document_A_page_8.pdf.

    • Якщо ви хочете включити файл PDF серед сторінок іншого документа PDF, наприклад, ми хочемо включити файл document_small.pdf після сторінки 8 файлу document_big.pdf і зберегти кінцевий результат у файлі, названому document.pdf , ми можемо це зробити наступним чином
      pdftk A=document_big.pdf B=document_small.pdf cat A1-8 B A9-end output document.pdf
    • (Зробити у майбутньому) Розшифрувати вхід або шифрувати вивід.
    • (Зробити у майбутньому) Створення шаблонів даних FDF з PDF-форм.
    • (Зробити у майбутньому) Застосувати фоновий водяний знак або штамп переднього плану.

8.2 Злиття двох файлів PostScript або PDF

Оновлено 1 грудня 2011 року.

Ми пояснюємо альтернативний спосіб об’єднання PDF-файлів, щоб уникнути використання pdftk . Це також стосується файлів PostScript .

Також можна об’єднати два файли PostScript або PDF за допомогою gs

      
      $ gs -q -dNOPAUSE -dBATCH -sDEVICE = pswrite
             -sOutputFile = bla.ps -f foo1.ps foo2.ps
      
      $ gs -q -dNOPAUSE -dBATCH -sDEVICE = pdfwrite
             -sOutputFile = bla.pdf -f foo1.pdf foo2.pdf

8.2.1 Посилання

  1. Debian Reference Guide

8.3 Include et al. в bibtex

Можна включити термін et al. замінити довгий набір авторів на посилання bibtex та інші . Таким чином, якщо ви хочете включити лише перших двох авторів і замінити решту іншими, поле поля bibtex автора має бути записано як

      
      author = {Перший автор and другий автор and others},

8.4 Включайте бібліографічну інформацію в кожну главу, використовуючи LaTeX

Бібліографію можна включити після кожного розділу в LaTeX використовуючи пакет chapterbib . Можна навіть змінити стиль цитування для кожної глави. Для того, щоб зробити це, включіть на початку основного файлу вихідного тексту рядок

\usepackage{chapterbib}

Далі в кінці кожного розділу включені

\bibliographystyle{alpha}
\bibliography{texfilename}

Для кожного розділу ви можете змінити стиль бібліографії, якщо це необхідно. Якщо ви використовуєте : \include{filename, не забудьте запустити bibtex до кожного з включених файлів, що містять запис бібліографії.


8.5 Параметри коментарів у LaTeX

Для того, щоб коментувати один або кілька абзаців у вихідному файлі LaTeX замість використання символу %, можна використовувати verbatim пакет, що включає на початку вашого tex-файлу

\usepackage{verbatim}

І тоді ви можете просто прокоментувати кілька рядків файлу, використовуючи \begin{comment} та \end{comment}

\begin{comment}
Commented fragment...
\end{comment}

8.6 Встановлення відповідного пакета або стилю LaTeX.

Показано спосіб встановлення пакета LaTeX на правильному шляху. Першим кроком є ​​пошук місця, де повинен бути встановлений пакет.

$ kpsewhich -expand-var "\$TEXMFLOCAL"
/usr/local/share/texmf

Розпакуйте пакунок латексу, який буде встановлено, і скопіюйте каталоги (bibtex/doc/tex/ …) до попереднього шляху /usr/local/share/texmf і оновіть базу даних.

$ sudo cp -r doc tex source bibtex  /usr/local/share/texmf
$ texhash 
texhash: Updating /usr/local/share/texmf/ls-R... 
texhash: Updating /var/lib/texmf/ls-R-TEXMFMAIN... 
texhash: Updating /var/lib/texmf/ls-R-TEXLIVE... 
texhash: Updating /var/lib/texmf/ls-R... 
texhash: Done.

Стиль тепер готовий і встановлений.


8.7 Зміна вибраної мови в файлах DebianDoc

Для того, щоб змінити вибрану мову для файлу DebianDoc sgml, використовується опція -l . Це впливає на різні теги та мітки в тексті.

Наприклад, припускаючи, що мовою за умовчанням в системі є англійська, і ми хочемо створити версію на іспанській мові у форматі ASCII файлу test.sgml, який ми повинні використовувати

debiandoc2text -les_ES test.sgml

У цьому випадку ми припускаємо, що локал es_ES доступний [14].


8.8 Уникнути Page %d may be too complex to print помилок.

При підготовці PDF-файлів з файлів LaTeX іноді сценарій dvipdf займає дуже багато часу, щоб заповнити файл PDF і виводить деякі помилки, як у наступному прикладі.

$ dvipdf test.dvi 
Page 1 may be too complex to print
Page 3 may be too complex to print
Warning:  no %%Page comments generated.

Більш того, коли остаточний файл PDF відкривається з переглядачем, з’являється довга серія повідомлень про помилки

$ xpdf test.pdf 
Error: Bad bounding box in Type 3 glyph
Error: Bad bounding box in Type 3 glyph
Error: Bad bounding box in Type 3 glyph
Error: Bad bounding box in Type 3 glyph
Error: Bad bounding box in Type 3 glyph
Error: Bad bounding box in Type 3 glyph

Це пов’язано з включенням команди \usepackage[T1]{fontenc} у вхідний файл. Це зручно при написанні іспанською мовою, оскільки таким чином ви маєте доступ до спеціальних символів (у вигляді акцентованого листа).

Рішення проблеми полягає у використанні латинських сучасних шрифтів. Заголовок файлу tex повинен містити

\usepackage[T1]{fontenc}
\usepackage{lmodern}

Пакунок Debian який включає ці шрифти, повинен бути встановлений, а його ім’я – lmodern.deb .


8.9 Різноманітні списки LaTeX

LaTeX розрізняє три різних середовища списку: enumerate , itemize і description . Кожне середовище забезпечує чотири рівні, що передбачає наявність вкладених списків до чотирьох рівнів. Опис трьох середовищ є наступним.

  1. ПерелічітьСинтаксис у цьому випадку є
    \begin{enumerate}
    \item ...
    \end{enumerate}

    Середовище перерахування дозволяє визначати пронумеровані списки. Якщо ви хочете змінити зовнішній вигляд переписувача, найпростішим способом зміни є використання enumerate-пакету, що дає вам можливість додатково вибрати перелік.

    \usepackage{enumerate}
    ...
    \begin{enumerate}[I]%for capital roman numbers.
    \item
    \end{enumerate}
         
    \begin{enumerate}[(a)]%for small alpha-characters within brackets.
    \item
    \end{enumerate}
  1. ПунктиПунктизація, ймовірно, найчастіше використовується список у LaTeX . Вона також забезпечує чотири рівні.
    \begin{itemize}
    \item ...
    \end{itemize}

    Крапки, які позначають кожен елемент, можна змінити для кожного рівня за допомогою наступної команди:

    \renewcommand{\labelitemi}{$\bullet$}
    \renewcommand{\labelitemii}{$\cdot$}
    \renewcommand{\labelitemiii}{$\diamond$}
    \renewcommand{\labelitemiv}{$\ast$}

    Серед найбільш поширених символів є $\bullet$$\cdot$$\diamond$$-$$\ast$, and $\circ$.

  1. ОписСписок опису дуже зручний, якщо вам потрібно пояснити позначення або терміни. Її ні пронумеровані, ні марковані. Користувач може визначити рядок, що маркує кожен елемент.
    \begin{description}
    \item[] ...
    \end{description}

У трьох середовищах простір між різними елементами можна керувати командою itemsep, яку можна додати тільки після begin

\begin{itemize}\itemsep2pt
\item
\end{itemize}

8.9.1 Посилання

  1. LaTeX Lists Environments

8.10 Використовуйте кодування Unicode в LaTeX

Для використання кодування utf в LaTeX до файлу tex слід додати наступний рядок

\usepackage[utf8]{inputenc}

Якщо цей параметр не працює, використовуйте utf8x замість utf8.


8.11 Використовуйте колір у LaTeX

Додано 30 листопада 2011.

Для того, щоб використовувати кольори у вашому LaTeX до преамбули файлу слід додати наступний рядок

\usepackage{color}

Текст може бути пофарбований різними способами

\textcolor{declared-color}{text}
{black text\color{declared-color} text}

де декларований колір — це колір, визначений раніше за \definecolor. Колір тла всієї сторінки можна змінити так:

\pagecolor{declared-color}

8.11.1 Посилання

  1. LaTeX Color in LaTeX Wiki Book

8.12 Простий спосіб визначення менших полів у LaTeX

Додано 20 січня 2012 року.

Оновлено 1 лютого 2012 року

Для того, щоб визначити документ LaTeX з меншими полями, ніж типово, не втручаючись занадто сильно за допомогою заходів та розмірів, можна використовувати пакет fullpage, додаючи заголовок документа

\usepackage[options]{fullpage}

Можливі варіанти цього пакета

  1. in: (за замовчуванням) поля, встановлені на 1 дюйм.
  1. cm: поля встановлені на 1,5 см.
  1. plain: (за замовчуванням) вибирає звичайний стиль сторінки.
  1. empty: ні заголовки, ні колонтитули.
  1. headings: як заголовки, так і колонтитули.
  1. myheadings: як колонтитули, так і колонтитули.
\usepackage[cm]{fullpage}

З папером A4 інша можливість є

\usepackage{a4wide}

8.13 Зміна символів виносок у LaTeX

Додано 8 січня 2016.

Стандартний символ виносок у тексті LaTeX це числа, а іноді, у поєднанні з рівняннями, можуть викликати певну неоднозначність. Символи можуть бути змінені на набір обертання дев’яти різних символів, що додаються до преамбули тексту

\renewcommand{\thefootnote}{\fnsymbol{footnote}}

Інший варіант полягає в тому, щоб змінити на алфавітні великі позначки за допомогою команди

\renewcommand{\thefootnote}{\Alph{footnote}}

8.14 Використовуючи таку ж позначку виноски у LaTeX

Додано 5 лютого 2012 року.

Іноді в LaTeX необхідно кілька разів посилатися на ту ж виноску на сторінці. Наступний синтаксис дозволяє це зробити

Text that has a footnote\footnote{This is the footnote} looks like this. Later text referring to same footnote\footnotemark[\value{footnote}] uses the other command.

Важливо враховувати, що це не працює, якщо між першою посиланням і будь-якими іншими дублікатами є інші виноски.


8.14.1 Посилання

  1. LaTeX wikibooks

8.15 Використання символу євро в LaTeX

Додано 7 лютого 2012 року.

Символ валюти євро в LaTeX додається, використовуючи пакет eurosym , який є частиною всіх основних GNU/Linux . Пакунок повинен бути завантажений у заголовок документа

\usepackage{eurosym}

Тоді є два можливих шляхи включення символу валюти євро.

The book is 10 \euro.
The book is \euro 10.
The book is \EUR{10}.
\textbf{The book is \EUR{10}.}
\textit{The book is \EUR{10}.}

8.16 Зміна сторінок до альбомної орієнтації в текстах LaTeX

Додано 16 листопада 2012 року.

Виникнення великої таблиці або рисунка в LaTeX іноді перешкоджає відображенню в оригінальній портретній орієнтації. Цю проблему можна вирішити зміною однієї або різних сторінок на альбомну орієнтацію.

Пакет геометрії дозволяє змінювати повний документ на альбомну орієнтацію, додаючи до заголовка документа

\usepackage[landscape]{geometry}

Пакет lscape дозволяє змінювати на альбомну орієнтацію розділ документа. Для цього додайте наступний рядок до заголовка документа

\usepackage{lscape}

І всякий раз, коли необхідно перейти до ландшафтної орієнтації, наприклад, щоб включити велику таблицю або малюнок, область, на яку впливає зміна, визначається як

\begin{landscape}
... table or figure here ...
\end{landscape}

Це спеціально підходить для друку. Щоб змінити орієнтацію у файлі PDF і для кращої читаності екрана, використовуйте пакет pdflscape в заголовку замість lscape

\usepackage{pdflscape}

І продовжуйте, як раніше

\begin{landscape}
... table or figure here ...
\end{landscape}

8.16.1 Посилання

  1. Landscape in LaTeX

8.17 Включення окремих цифр стовпців або таблиць у документі LaTeX з двома колонками

Додано 18 листопада 2012 року.

Іноді при написанні документа з двома колонками поява великої таблиці або малюнка в LaTeX змушує його відображати в одному стовпці. Це можна вирішити для малюнків і таблиць, використовуючи варіант – *

\begin{table*}
     
\end{table*}
\begin{figure*}
     
\end{figure*}

Таким чином, цифри і таблиці займуть повну сторінку.


8.18 Контроль горизонтального інтервалу в LaTeX

Додано 15 січня 2016 року.

Горизонтальний інтервал між словами і між словами і об’єктами в LaTeX автоматично визначається. Однак ми можемо бути зацікавлені в додаванні або видаленні простору. Це можна зробити за допомогою команди

\hspace{length}

Якщо довжина може бути виражена в см , px і т.д. Якщо такий простір слід зберігати, навіть якщо він потрапляє в кінець або початок рядка, скористайтеся командою hspace * .

Команда

\stretch{n}

діє по-різному, генеруючи «пружний» інтервал. Він розширюється до тих пір, поки не займе весь залишок у рядку. Якщо дві команди hspace {stretch {n}} видані на одній лінії, вони зростають відповідно до коефіцієнту розтягування.

X\hspace{\stretch{1}}
X\hspace{\stretch{2}} X
     
x        x                x

8.18.1 Посилання

  1. Horizontal Space LaTeX WikiBooks