Dobozrajz karakterek nyomtatása pdfLaTeX fájlokkal

Néhány unicode karaktert (a dobozos rajzcsaládból) ki kell nyomtatnom a dokumentumba. Megtaláltam ezt a kérdést , amely nagyon hasonlít az enyémhez, de csak az XeLaTeX-re érvényes. Van erre érvényes módszer a pdfLaTeX használatával, vagy inkább az XeLaTeX-et kell használnom?

Válasz

Használhatja a szimbólumokat , ha elérhető a billentyűzeten vagy a makrókon.

\documentclass{article} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage{pmboxdraw} \usepackage{newunicodechar} \newunicodechar{└}{\textSFii} \newunicodechar{├}{\textSFviii} \newunicodechar{─}{\textSFx} \begin{document} \begin{verbatim} ├── Maildir/ └── scripts/ ├── backup.sh* └── OLD/ ├── backup_cleanup.sh.old └── backup.sh.old* \end{verbatim} \end{document} 

írja ide a kép leírását

Megjegyzések

  • Ez ' s rendben van szó szerinti környezettel, de még mindig ugyanaz a probléma az lstlisting környezettel.
  • Köszönöm, ez remekül működik. De meg tudja magyarázni, miért kell beírnunk a \newunicodechar definíciókat? Miért nem határozza meg először ezeket a karaktereket ' t pmboxdraw?
  • A utf8 kódolás nem ismert ' nem ismeri az ilyen karaktereket. Az ok, amiért meg kell határoznia a karaktert és annak parancsát
  • @Tobia A \newunicodechar szöveget tartalmazó dolgokra nincs szükség. A pmboxdraw csomag már automatikusan kezeli, lásd a válaszomat.

Válasz

Ez a Herbert “s válasz kiterjesztése és válasz Tobia” s megjegyzésére .

A inputenc csomag a utf8 kódolási opcióval lehetővé teszi az UTF-8 használatát a TeX bemeneti fájlokban 8 bites TeX motorok. Előfeltételként ismerni kell az Unicode karaktereket, hogy miként vannak leképezve a TeX kódra. A inputenc UTF-8 támogatása ezt párosítja a betűkészlet kódolásával. Ezért a pmboxdraw csomag meghatározza a pmboxdraw kódolású mesterséges betűtípust és a kapcsolódó leképezési fájlt pmboxdrawenc.dfu, amely ezután automatikusan betöltődik. Ez leegyszerűsíti Herbert példáját:

% arara: pdflatex \listfiles \documentclass{article} \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage{pmboxdraw} \begin{document} \begin{verbatim} ├── Maildir/ └── scripts/ ├── backup.sh* └── OLD/ ├── backup_cleanup.sh.old └── backup.sh.old* \end{verbatim} \end{document} 

Eredmény

Összeállítva:

This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016) 

A \listfiles verziólistája:

 *File List* article.cls 2014/09/29 v1.4h Standard LaTeX document class size10.clo 2014/09/29 v1.4h Standard LaTeX file (size option) fontenc.sty t1enc.def 2005/09/27 v1.99g Standard LaTeX file inputenc.sty 2015/03/17 v1.2c Input encoding file utf8.def 2016/02/28 v1.1s UTF-8 support for inputenc t1enc.dfu 2016/02/28 v1.1s UTF-8 support for inputenc ot1enc.dfu 2016/02/28 v1.1s UTF-8 support for inputenc omsenc.dfu 2016/02/28 v1.1s UTF-8 support for inputenc pmboxdraw.sty 2011/03/24 v1.1 Poor man"s box drawing characters (HO) ltxcmds.sty 2011/11/09 v1.22 LaTeX kernel commands for general use (HO) kvsetkeys.sty 2012/04/25 v1.16 Key value parser (HO) infwarerr.sty 2010/04/08 v1.3 Providing info/warning/error messages (HO) etexcmds.sty 2011/02/16 v1.5 Avoid name clashes with e-TeX commands (HO) ifluatex.sty 2010/03/01 v1.3 Provides the ifluatex switch (HO) kvdefinekeys.sty 2011/04/07 v1.3 Define keys (HO) pmboxdrawenc.dfu 2011/03/24 v1.1 UTF-8 support for box drawing characters kvoptions.sty 2011/06/30 v3.11 Key value format for package options (HO) keyval.sty 2014/10/28 v1.15 key=value parser (DPC) t1cmtt.fd 2014/09/29 v2.5h Standard LaTeX font definitions *********** 

LuaTeX / XeTeX verzió

A LuaTeX és az XeTeX támogatja az Unicode karaktereket és a inputenc csomag elavult. A pmboxdrawenc.dfu csomag azonban továbbra is használható a támogatottak létrehozására a karakterek aktívak és kibővülnek a szimbólumokig:

% arara: xelatex % or % arara: lualatex \documentclass{article} \usepackage{pmboxdraw} \begingroup \def\DeclareUnicodeCharacter#1{% \begingroup \lccode`\~="#1\relax \lowercase{\endgroup \global\catcode`~=\active \gdef~% }% }% \input{pmboxdrawenc.dfu}% \endgroup \begin{document} \begin{verbatim} ├── Maildir/ └── scripts/ ├── backup.sh* └── OLD/ ├── backup_cleanup.sh.old └── backup.sh.old* \end{verbatim} \end{document} 

Megjegyzések

  • Nem. A megjelenő rendszer használata A (z) apt-get install texlive-xetex texlive-fonts-recommended lmodern alkalmazással a Linux Mint 18 (Ubuntu 16.04) verzióban, amely a 2015.20160320-1 verziónak tűnik, példád a sorok nélkül jelenik meg. A karaktereket kifejezetten meg kell határoznom a \newunicodechar. Lehet, hogy ' hiányzik valami más csomag? Vagy i s túl öreg a TeX Live-om?
  • @Tobia A kérdés az volt, hogy ezt a pdfTeX nek kell csinálni, nem pedig a XeTeX-nek. Frissítettem a választ, és hozzáadtam a LuaTeX / XeTeX verzióját.
  • Hibát kaptam, mert tévesen a [utf8x] opciót választottam a inputenc. Miután kijavítottam a következőt: \usepackage[utf8]{inputenc}, minden rendben működött. . . BTW, nem tudja, mit kell tennie a \listfiles? Nem volt rá szükségem. (Pdf-LaTeX.)
  • @Henke \listfiles elkészíti a válaszban megjelenített verziólistát.
  • Igen, rendben. Ennek van értelme. Én ' még soha nem zavartam ezeket a naplókat és kimeneti fájlokat. A példa karcolatában kissé körül kellett böknöm, hogy megtalálhassam – gomb Logs and output files a Recompile, majd a jobb felső sarokban Other logs & files > log file. A túloldalon látható verzió viszonylag frissnek tűnik: pmboxdraw.sty 2019/12/05 v1.4 Poor man's box drawing characters (HO). BTW, a válaszod (newunicodechar nélkül) jobb, mint az elfogadott, és megérdemli, hogy felértékelődj. 🙂

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük