Dalam proses mempersiapkan laporan di GolangConf'2019, saya menggunakan LaTeX. Meskipun ada beberapa hal yang sudah ketinggalan zaman, sedikit perilaku yang tidak biasa, sedikit atau dokumentasi yang kompleks, saya tiba-tiba menikmatinya. Saya tidak menjadi "guru" LaTeX, tetapi saya bisa membuat slide yang cukup bagus. Dan saya ingin menjelaskan poin utama membuat presentasi modern di LaTeX. Ini terutama harus pergi ke spesialis IT yang memprogram berdasarkan pekerjaan. Memprogram presentasi Anda itu menyenangkan.

Mengapa LaTeX:
- Hamparan fleksibel (ketika informasi pada slide muncul secara bergantian)
- Pengulangan dan Keunikan
- Kami menulis sebagai program. Beberapa sumber daya dapat disimpan dalam file terpisah - kode, daftar tautan
Mengapa TIDAK LaTeX:
- Hanya keluaran PDF
- Tabel dan kolom penyetelan halus, jika ada, bisa memakan waktu lebih lama daripada menggerakkan mouse. Tidak perlu membuat presentasi dalam lima slide kompleks di LaTeX. Dan di 55 - perlu
Mari kita mulai dengan instalasi
Dalam praktiknya, sekarang ada satu distribusi utilitas LaTeX / TeX terkemuka yang telah menyerap sisanya - TexLive. Masalah di sana dinomori berdasarkan tahun. Jangan letakkan versi arkeologis lebih awal dari 2018. Jadi hampir semua pengguna Ubuntu ada di sini . Ada set terpisah untuk driver poppy. Atau Anda dapat menggunakan penginstal universal, termasuk untuk Windows .
Pengguna CentOS harus menderita.
Bagaimanapun, Anda dapat membuat Dockerfile Anda sendiri dan menggunakannya. Tetapi perhatikan bahwa beberapa utilitas ingin melihat font sistem.
Distribusi TexLive berat, membutuhkan waktu hingga 5Gb. Anda perlu menginstal texlive-full atau paket serupa (namanya mungkin berbeda dari distribusi ke distribusi).
Namun, di halaman abad XXI, dan Anda dapat menggunakan salah satu layanan online untuk bekerja dengan LaTeX. Untuk beberapa alasan, beberapa ilmuwan bahkan tidak tahu tentang ini. Misalnya, salah satu yang paling canggih.
Sedikit tentang LaTeX
Ini bukan panduan langkah demi langkah tentang cara memulai dengan LaTeX. Kami akan melihat sekilas cara membuat presentasi, dan sepanjang jalan Anda akan menggunakan Google sendiri. Tapi referensi dasar akan saya lakukan. Perhatikan juga Wikiquote .
Ini akan terlihat seperti presentasi sederhana menggunakan paket beamer - dialah yang bertanggung jawab atas presentasi:
\documentclass{beamer}
Ayo pergi
Dan di sini adalah presentasi selesai yang saya buat di GolangConf2019 . Di sekelilingnya, kita akan berputar.
Hal pertama yang harus Anda lakukan adalah melupakan semua referensi ke font TeX sebagai mimpi buruk. Donald Knuth mulai mengembangkan sistem font METAFONT pada tahun 1977, dan memperkenalkannya pada tahun 1979. Itu SANGAT keren saat itu. Tetapi di halaman pada tahun 2019, hari ini Anda dapat menyeret standar untuk nama file 8 + 3 dan font bitmap khusus hanya dalam beberapa menit kebosanan. Semua sistem modern bekerja dengan font vektor modern. Utilitas TexLive memiliki kompiler dokumen baru - xelatex . Ini sepenuhnya kompatibel dengan pdflatex, tetapi bekerja dengan font sistem. Semua yang perlu dilakukan adalah memuat paket fontspec atau xltxtra (ini memuat fontspec) dan mengatur font:
Pada contoh, kami segera mengatur ukuran presentasi (16cm hingga 9cm), membuat komentar tentang cara merakitnya dan menghubungkan paket babel, yang tidak akan kami bongkar. Untuk pengguna Linux, saya mengingatkan Anda bahwa pada 2019 font TTF dapat dimasukkan ke direktori .fonts di direktori home.
Anda dapat membuat presentasi tanpa desain khusus, tetapi perasaan keindahan secara default di beamer aneh, sehingga hampir semua orang menggunakan topik tertentu. Biasanya, skin adalah kumpulan file .sty yang terletak di mana kompiler dapat menemukannya, mis. di tempat yang sama dengan file presentasi itu sendiri. Topik ini terhubung dengan baris yang sesuai dalam pembukaan presentasi:
\usetheme{gcr2019}
Omong-omong, ada panduan yang bagus untuk membuat tema desain presentasi yang paling sederhana. Saya membuat 3 topik pada konferensi Oleg Bunin berikutnya, satu untuk saya sendiri, dua - untuk menggambarkan artikel ini: satu , dua dan tiga .
Pada prinsipnya, semua yang didefinisikan dalam topik-topik ini dapat berupa lembaran reguler dalam file presentasi Anda. Tidak ada yang salah dengan itu. Topik diperlukan saat pengulangan diperlukan. Di masing-masing tema di atas ada contoh penggunaan dan hasil kompilasi.
Hamparan
Hamparan - ini adalah saat informasi Anda secara bertahap muncul pada slide yang sama. Berikut ini sebuah contoh:
\begin{frame} \begin{itemize} \item<1-> , !.. , ! \item<2-> โ . \item<2-> โ \item<3-> ! \end{itemize} \end{frame}
Pertama, baris pertama muncul, kemudian yang kedua dan ketiga, dan kemudian yang keempat. Pada saat yang sama, kami melihat cara membuat daftar yang tidak terurut. Sistem overlay dapat diikat ke hampir semua hal. Sebagai contoh, saya menyoroti baris kode (kami akan mempertimbangkan di bawah).
Perhatikan garis-garis di template saya:
\setbeamercolor{itemize item}{fg=black} \setbeamercolor{itemize subitem}{fg=black} \setbeamercolor{alerted text}{fg=black} \setbeamertemplate{itemize items}{\textbullet}
Komentari baris (gunakan simbol% โโuntuk komentar) dan lihat apa yang terjadi. Bukan warna itu, segitiga biru dan itu saja.
Saya tidak menemukan tempat untuk menentukan ini. beamer memberikan kemampuan untuk menggunakan slide yang sama beberapa kali. Yang ini sangat keren:
\begin{frame}[label=again]{ } ... \end{frame} ... \againframe{again}
Gambar
Ambil contoh dari presentasi saya. Dua kolom, daftar tidak berurutan di kiri, dan gambar di kanan:
\begin{frame}{ Acme} \begin{columns}[T,onlytextwidth] \begin{column}{0.44\textwidth} \begin{itemize} \item \item --- \emph{ } \item Alef \item Alef = Acme \item 30 \end{itemize} \end{column} \begin{column}{0.56\textwidth} \includegraphics[width=\textwidth]{acme-alef.png} \end{column} \end{columns} \end{frame}
Parameter [T, onlytextwidth] menunjukkan bahwa penyelarasan vertikal dilakukan di sepanjang garis dasar garis, dan blok kolom memiliki lebar sama dengan lebar bingkai untuk teks. LaTeX sendiri akan memampatkan gambar sebagaimana mestinya. Anda dapat membuat contoh Anda sendiri dan bermain dengan parameter untuk melihat bagaimana dan apa yang akan tumpang tindih.

Daftar kode
Segera buat reservasi yang tidak perlu disoroti oleh sintaksis dalam daftar kode dalam presentasi. Jika Anda membutuhkannya di sana, Anda melakukan sesuatu yang salah. Dibutuhkan lebih banyak pilihan. Saya menggunakan paket listing standar, yang dapat menyoroti sintaks, dan tidak dapat memilih. Anda dapat melihat pengaturan tata letak blok cantuman di salah satu contoh saya:
\definecolor{acmebg}{HTML}{FFFFEF} \definecolor{acmel}{HTML}{52AAAD} \lstset{ columns=flexible, keepspaces=true, showstringspaces=false, showtabs=false, tabsize=4, frame=single, basicstyle=\fontsize{10pt}{12}\bf\ttfamily\color{black}, backgroundcolor=\color{acmebg}, commentstyle=\color{black}, keywordstyle=\color{black}, stringstyle=\color{red}, rulecolor=\color{acmel}, framerule=1pt }
Untuk menyoroti latar belakang, saya menggunakan paket lstlinebgrd, yang "ditinggalkan". Anda harus memasukkan kode korektif . Tetapi kode tambahan ini memberi saya perintah \ btLstHL, yang memungkinkan saya untuk menyorot garis dalam overlay:
\begin{frame}[fragile]{Limbo. } \begin{lstlisting}[basicstyle=\fontsize{12pt}{12}\bf\ttfamily\color{black},linebackgroundcolor={% \btLstHL<1>{1}% \btLstHL<2>{2-3}% \btLstHL<3>{5,6}% \btLstHL<4>{8,9}% \btLstHL<5>{11}% }] i, j: int; k := 1; # int b := byte 2; # byte s: string; # s1 := s[0:]; # a: array of int; a = array[10] of int; myfunc: fn(i, k: int, s: string) : (list of string, int); \end{lstlisting} \end{frame}

Daftar pustaka
Untuk kesederhanaan dan keserbagunaan, saya menggunakan paket biblatex. Inilah kesulitannya. Paket beamer menimpa beberapa default biblatex. Perintah-perintah ini menghapus ikon dan mengatur font untuk daftar pustaka:
\setbeamertemplate{bibliography item}{\insertbiblabel} \renewcommand*{\bibfont}{\fontsize{8}{1}\selectfont}
Kita harus ingat poin penting - bibliografi diatur dalam file terpisah. Dalam contoh di templat, saya menulis bibliografi di teks utama menggunakan paket filecontents, yang pada gilirannya menciptakan file nyata yang diinginkan. Dan kompilasi berlangsung dalam langkah EMPAT. Pertama, xelatex hanya mengkompilasi file dan membuat file pendukung. Kemudian utilitas biber mengkompilasi file bibliografi, maka Anda perlu menjalankan xelatex dua kali lagi. Ya, dengan preprosesor semuanya rumit di sana.
Paket biblatex juga dapat disesuaikan. Tetapi untuk pertama kalinya, saya memiliki cukup dari apa yang saya miliki dalam contoh.
Kata penutup
Saya senang mempersiapkan presentasi dan menyiapkan materi untuk artikel ini. Saya berharap jika seseorang ingin, tetapi tidak dapat memutuskan untuk mulai menggunakan LaTeX dalam pekerjaan mereka - saya memecahkan penghalang ini. Tentu saja, saya tidak membuat paket, saya tidak menggali lebih dalam, saya tidak menyebutkan topik menggambar yang penting. Tapi saya pikir ini semua akan terjadi segera setelah Anda mulai menggunakan alat ini. Ada artikel praktis yang bagus tentang Habr dengan tag #latex .
Saya berharap bahwa template saya akan membantu seseorang di konferensi mendatang. Mungkin seseorang akan menggambar potongan-potongan kode tambahan dengan cahaya latar yang telah bertahun-tahun terbaring di Internet dalam paket yang sesuai. Lakukan itu!