序文

序文

序文

この問題について質問を検索してみましたが、何も見つかりませんでした。おそらく、原因がまったくわからないからでしょう。バグだと思っていますが、間違っているかもしれません。

また、私が取り組んでいる本は著作権で保護されているため、ここに MWE を掲載することはできません。この問題が発生するコードを提供するには、おそらく本全体をここに掲載する必要があります。問題が発生するコードの部分を含むドキュメントを作成しようとしたときに、問題が再現されなかったためです。

問題

私は、図、表、方程式が多数含まれる 2 段組の本をタイプセットしています。方程式と本文の両方にギリシャ文字も含まれています。同じギリシャ文字が 2 回以上出現すると (同じ段落内であっても)、そのうちの 1 つが異なるサイズでレンダリングされるという問題が発生しました。最小限のコンテキストを含むコードの誤ってレンダリングされる部分を段落内の別の場所に移動しようとすると、他のインスタンスは正しくレンダリングされ続けますが、その部分は誤ってレンダリングされたままになります。文字自体だけを別の場所に移動すると、他の部分と同じように動作し、正しくレンダリングされます。

ここでスクリーンショットで示した問題の例と、以下のコードの一部は、表のキャプションで発生していますが、記憶が正しければ、通常のテキストでも見たことがあります (この記事の執筆時点で、ドキュメントには約 120 万文字あり、すでに半年作業しているので、他にどこでこれを見たのか正確にはわからないと思います。申し訳ありません)。

スクリーンショット問題の詳細(オレンジの丸は間違ったもので、緑の丸は正しいものです): ここに画像の説明を入力してください

キャプションのコードスクリーンショットには以下が表示されています:

    \caption{Příklady dlouhodobého chemického složení vod povrchových toků na hlinitokřemičitém podloží a vápenci. Hodnoty jsou v~\upmu mol~l\sups{−1}, kromě vodivosti (\upmu S~cm\sups{−1} při 25\,°C), rozpuštěného organického uhlíku (DOC,~mg~l\sups{−1}) a pH. Všechna povodí jsou v~horských povodích (Slavkovský les a Šumava) kromě River Enborne (Anglie) a potoku Ladná (jižní Morava), která jsou zemědělská. Potok PL-IV je podzemní.}

ご覧のとおり、ここではギリシャ文字を縦書きで使用しています。これは方程式の外側にあるためです。それが何らかの関連があるかどうかはわかりません。また、この問題は文字だけで発生するわけではなく\upmu、文書内のどこかで別の文字でも発生したことがあるはずです。

参考までに、関連する可能性があると思われる「usepackage」部分全体も追加します (コメント行は省略しますが、パッケージの目的を大まかに説明した独自のコメントは残します)。

\directlua{pdf.setminorversion(7)}
\documentclass[10pt,openany,oneside,twocolumn]{book}
\usepackage[paperheight=280mm,paperwidth=205mm,top=26mm,bottom=26mm,margin=20mm]{geometry} % remove heightrounded from the parameters
\usepackage{lmodern}
\usepackage[greek,english,czech]{babel}
\usepackage{csquotes}
\usepackage[hyphens]{url}
\usepackage{graphicx}
\usepackage{setspace}
\usepackage{nameref} % Defines a \nameref command, that makes reference to an object by its name (e.g., the title of a section or chapter)
\usepackage{multirow} % Make an entry that will span multiple rows of a table.
\usepackage{array} % An extended implementation of the array and tabular environments which extends the options for column formats (e.g. padding)
\usepackage{gensymb} % Provides generic commands \degree, \celsius, \perthousand, \micro and \ohm which work both in text and maths mode
\usepackage{amsmath} % so we can use multiline equations with equation* or align* environments (uses multline env.)
\usepackage{fancyhdr} % Allows us to set nice headers
\usepackage{tabularx} % Autofit columns to text width
\usepackage[newcommands]{ragged2e} % hyphenation inside table cells - https://tex.stackexchange.com/questions/16842/auto-fit-table-column-widths-based-on-content/16867
\usepackage{lscape} % landscape certain pages
\usepackage{url} % print URLs nicely
\usepackage{wrapfig} % text flow around images
\usepackage{placeins} % force a float to be in the exact place where we say when it's wrapped surrounded by \FloatBarrier
\usepackage{siunitx} % typeset units properly -- we won't use this because the typesetting is problematic for the sed script to replace: \SI{1.55}{\micro\metre}
\usepackage{caption} % figure/tables tweaking
\usepackage{upgreek} % typeset greek letters straight (not italics) outside of math env (we need to do some hardcore regexing to replace this only outside of math env)
\usepackage{xfrac} % this enables us to use the small diagonal fractions with \sfrac{num}{denum} (in math mode)
\usepackage{dblfloatfix} % redefines latex core to enable images in twocolumn layout "be placed in the right order and introduces position [tbp]"
\usepackage{cuted} % this enables us to use env. strip (for quotes at the chapter beginning)
\usepackage{epigraph} % package for the quotes we have at the beginning of each chapter;; not used right now
\usepackage{microtype} % microtypography to adjust the subtle stuff normal mortals don't see (not even me actually)
\usepackage[dvipsnames]{xcolor} % allows to use colors in the document, dvipsnames allows more names of the colors than the basic package setting
\usepackage{makecell} % create cell boxes inside table cells to be able to wrap text inside them
\usepackage{enumitem} % This package provides user control over the layout of enumerate, itemize and description. (e.g. for changing numbering style)
\usepackage{extarrows} % package allowing variable arrows in the document, e.g. \xrightarrow[{}]{} . Details here: http://www.sascha-frank.com/Arrow/latex-arrows.html
\usepackage{sectsty} % allow coloring the chapter/section headings (colors, alignment, ...)
\usepackage{flushend} % distribute the text between the two columns at the end of chapters

アップデート:

パッケージバージョン

.log以下のコメントの要求に従って、ファイルからパッケージ バージョンを grep しました。

$ grep -e "Package: " my-book.log
Package: geometry 2010/09/12 v5.6 Page Geometry
Package: keyval 2014/10/28 v1.15 key=value parser (DPC)
Package: ifpdf 2017/03/15 v3.2 Provides the ifpdf switch
Package: ifvtex 2016/05/16 v1.6 Detect VTeX and its facilities (HO)
Package: ifxetex 2010/09/12 v0.6 Provides ifxetex conditional
Package: lmodern 2009/10/30 v1.6 Latin Modern Fonts
Package: babel 2018/02/14 3.18 The Babel package
Package: csquotes 2018/02/11 v5.2c context-sensitive quotations (JAW)
Package: etoolbox 2018/02/11 v2.5e e-TeX tools for LaTeX (JAW)
Package: url 2013/09/16  ver 3.4  Verb mode for urls, etc.
Package: graphicx 2017/06/01 v1.1a Enhanced LaTeX Graphics (DPC,SPQR)
Package: graphics 2017/06/25 v1.2c Standard LaTeX Graphics (DPC,SPQR)
Package: trig 2016/01/03 v1.10 sin cos tan (DPC)
Package: setspace 2011/12/19 v6.7a set line spacing
Package: nameref 2016/05/21 v2.44 Cross-referencing by name of section
Package: refcount 2016/05/16 v3.5 Data extraction from label references (HO)
Package: ltxcmds 2016/05/16 v1.23 LaTeX kernel commands for general use (HO)
Package: infwarerr 2016/05/16 v1.4 Providing info/warning/error messages (HO)
Package: gettitlestring 2016/05/16 v1.5 Cleanup title references (HO)
Package: kvoptions 2016/05/16 v3.12 Key value format for package options (HO)
Package: kvsetkeys 2016/05/16 v1.17 Key value parser (HO)
Package: etexcmds 2016/05/16 v1.6 Avoid name clashes with e-TeX commands (HO)
Package: ifluatex 2016/05/16 v1.4 Provides the ifluatex switch (HO)
Package: multirow 2016/11/25 v2.2 Span multiple rows of a table
Package: array 2016/10/06 v2.4d Tabular extension package (FMi)
Package: gensymb 2003/07/02 v1.0 (WaS)
Package: amsmath 2017/09/02 v2.17a AMS math features
Package: amstext 2000/06/29 v2.01 AMS text
Package: amsbsy 1999/11/29 v1.2d Bold Symbols
Package: amsopn 2016/03/08 v2.02 operator names
Package: fancyhdr 2017/06/30 v3.9a Extensive control of page headers and footers
Package: tabularx 2016/02/03 v2.11 `tabularx' package (DPC)
Package: ragged2e 2009/05/21 v2.1 ragged2e Package (MS)
Package: everysel 2011/10/28 v1.2 EverySelectfont Package (MS)
Package: lscape 2000/10/22 v3.01 Landscape Pages (DPC)
Package: wrapfig 2003/01/31  v 3.6
Package: placeins 2005/04/18  v 2.2
Package: expl3 2018/02/21 L3 programming layer (loader) 
Package: expl3 2018/02/21 L3 programming layer (code)
Package: xparse 2018/02/21 L3 Experimental document command parser
Package: siunitx 2017/11/26 v2.7k A comprehensive (SI) units package
Package: l3keys2e 2018/02/21 LaTeX2e option processing using LaTeX3 keys
Package: translator 2018/01/04 v1.12 Easy translation of strings in LaTeX
Package: caption 2016/02/21 v3.3-144 Customizing captions (AR)
Package: caption3 2016/05/22 v1.7-166 caption3 kernel (AR)
Package: upgreek 2003/02/12 v2.0 (WaS)
Package: textcomp 2017/04/05 v2.0i Standard LaTeX package
Package: xtemplate 2018/02/21 L3 Experimental prototype document functions
Package: xfrac 2018/02/21 L3 Experimental split-level fractions
Package: dblfloatfix 2012/12/31 v1.0a (JAW)
Package: fixltx2e 2016/12/29 v2.1a fixes to LaTeX (obsolete)
Package: cuted 2012/10/04 v1.5 Mixing onecolumn and twocolumn modes
Package: epigraph 2009/09/02 v1.5c typesetting epigraphs
Package: microtype 2018/01/14 v2.7a Micro-typographical refinements (RS)
Package: xcolor 2016/05/11 v2.12 LaTeX color extensions (UK)
Package: makecell 2009/08/03 V0.1e Managing of Tab Column Heads and Cells
Package: enumitem 2011/09/28 v3.5.2 Customized lists
Package: extarrows 2008/05/15 v1.0b Some extensible arrows
Package: sectsty 2002/02/25 v2.0.2 Commands to change all sectional heading styl
Package: flushend 2017/03/27 v3.3 Balancing columns in twocolumn mode
Package: epstopdf-base 2016/05/15 v2.6 Base part for package epstopdf
Package: grfext 2016/05/16 v1.2 Manage graphics extensions (HO)
Package: kvdefinekeys 2016/05/16 v1.4 Define keys (HO)
Package: pdftexcmds 2018/01/21 v0.26 Utility functions of pdfTeX for LuaTeX (HO)

質問

読者の皆様、上記をご覧になって、何が原因なのかお分かりでしたら、私にお知らせいただけませんか? どうぞよろしくお願いいたします。

何か明らかなことを見逃しているかもしれないことはわかっていますが、何を探せばいいのかわかりません。

私はLuaLaTeXを使用してUbuntu 18.04でドキュメントをコンパイルしていますLuaTeX, Version 1.0.4 (TeX Live 2017/Debian)

私が提供できる他の情報がこの問題に関連していると思われる場合は、お知らせください。

注記:Xubuntu 18.04 と同じバージョンの LuaLaTeX を実行している別のコンピューターでドキュメントをコンパイルしてみました。1 回目と 2 回目のコンパイル後、結果は同じでした (それ以上は試していません)。

答え1

siunitxの上向きのギリシャ文字を使用する代わりに、単位のパッケージを使用すると、この問題は発生しませんupgreek。いずれにしても、 の記号はmicro正確には mu ではなく、セリフが付いています。さらに、スペースは自動的に正しく設定され、省略形によって入力が簡単になります。

ただし、microsiemens と入力する省略形がないので、省略形を宣言しました。

    \documentclass{article}
    \usepackage[utf8]{inputenc}
    \usepackage[T1]{fontenc}
    \usepackage{siunitx}

    \DeclareSIUnit{\uSm}{\micro\siemens}

    \begin{document}

     \begin{table} 
\caption{Příklady dlouhodobého chemického složení vod povrchových toků na hlinitokřemičitém podloží a vápenci. Hodnoty jsou v~\si{ \umol\per\l}, kromě vodivosti (\si{\uSm\per\cm} při \SI{25}{\celsius}), rozpuštěného organického uhlíku (DOC, \si{\mg\per\l}) a pH. Všechna povodí jsou v~horských povodích (Slavkovský les a Šumava) kromě River Enborne (Anglie) a potoku Ladná (jižní Morava), která jsou zemědělská. Potok PL-IV je  podzemní.}
     \end{table}

    \end{document} 

ここに画像の説明を入力してください

関連情報