北川です.
LuaTeX-ja 20160331.0 を出しました.
今回の更新は,LuaTeX 0.85 以降の動作が変わったことに
対応したことです(抜けがあったらすみません).
----
特に,ltjsclasses(ltjsarticle, ltjsbook 等)では \mag の使用を
やめました(つまり,「10 pt の結果を拡大縮小する」処理はなく,
レイアウトのパラメタ値の方を拡大縮小させる).
そのため,例えば [12pt] 指定時でも
\hspace{10cm}
と記述すると 10 cm の空白が空きます.
標準では bxjscls の magstyle=xreal 指定時のように
「オプティカルサイズの調整」を行いますが,
問題が起きた場合には [real] オプションで無効化できます.
ご質問はこちらへ
質問用フォーラムです。ご質問の前に質問のしかたをご覧ください。
数式中のボックスとベースライン補正
- 北川 弘典 の投稿
ベースライン補正が 0 でないときの tabular 環境の垂直位置について
考えていたのですが,その過程で
文中数式モードでは自動的に全体にベースライン補正がかかり,
その結果 $\hbox{漢字ABC}$ では「漢字」に一重,
「ABC」に二重にベースライン補正が適用される
という pTeX の仕様について疑問を持ったので,実験してみました.
(参考:qa: 54286)
手元で「数式中の explicit なボックスは,
自動で入るベースライン補正を打ち消すように垂直位置をずらす」
というパッチを作り,次のソースで試してみました.
添付ファイルの黒が現行の pTeX の挙動,薄青がパッチ後の挙動です.
%%%%%%%%
\ifdefined\enablecjktoken
\documentclass[uplatex]{jsarticle}
\else
\documentclass{jsarticle}
\fi
\usepackage{amsmath}
\textwidth300pt
\begin{document}
\ybaselineshift=10pt
\noautoxspacing
\def\R{\vrule height 0.4pt depth 0pt width 10pt}
あいうえおABC$%
\hbox{漢X\R}\vbox{\hsize=3em 字Y\hss}\R xyz\frac{\text{漢X\R}\R213}{s}
\displaystyle\int_{0}^{\text{漢X\R}\R1}
$\vrule height 50pt depth 40pt
qa:54286
\begin{equation}
y = f(x)= x^2+2x+1 + \int_{0}^{\pi} \frac{1+tx^2}{1-t^2}\,dt
\end{equation}
\end{document}
%%%%%%%%
「地の数式」中に配置したボックスについては良さそうに
思えますが,逆に,分数や添字中に \hbox を配置した場合は
欧文のベースラインが揃わなくなっています.
(折衷案としては,「\textstyle, \displaystyle のみ打ち消す」?)
何か感想や意見などがありましたらお願い致します.
考えていたのですが,その過程で
文中数式モードでは自動的に全体にベースライン補正がかかり,
その結果 $\hbox{漢字ABC}$ では「漢字」に一重,
「ABC」に二重にベースライン補正が適用される
という pTeX の仕様について疑問を持ったので,実験してみました.
(参考:qa: 54286)
手元で「数式中の explicit なボックスは,
自動で入るベースライン補正を打ち消すように垂直位置をずらす」
というパッチを作り,次のソースで試してみました.
添付ファイルの黒が現行の pTeX の挙動,薄青がパッチ後の挙動です.
%%%%%%%%
\ifdefined\enablecjktoken
\documentclass[uplatex]{jsarticle}
\else
\documentclass{jsarticle}
\fi
\usepackage{amsmath}
\textwidth300pt
\begin{document}
\ybaselineshift=10pt
\noautoxspacing
\def\R{\vrule height 0.4pt depth 0pt width 10pt}
あいうえおABC$%
\hbox{漢X\R}\vbox{\hsize=3em 字Y\hss}\R xyz\frac{\text{漢X\R}\R213}{s}
\displaystyle\int_{0}^{\text{漢X\R}\R1}
$\vrule height 50pt depth 40pt
qa:54286
\begin{equation}
y = f(x)= x^2+2x+1 + \int_{0}^{\pi} \frac{1+tx^2}{1-t^2}\,dt
\end{equation}
\end{document}
%%%%%%%%
「地の数式」中に配置したボックスについては良さそうに
思えますが,逆に,分数や添字中に \hbox を配置した場合は
欧文のベースラインが揃わなくなっています.
(折衷案としては,「\textstyle, \displaystyle のみ打ち消す」?)
何か感想や意見などがありましたらお願い致します.
このトピックを読む
(現在の返信数: 23)
gs-9.19 for windows
- Akira Kakuto の投稿
デリミターで \left\langle \right\rangle が効きません
- DION Emily の投稿
下記にて,真ん中の丸括弧\left(と\right)とをとんがり括弧<,>に\leftと\rightを付けて囲んだのですが,
真ん中の丸括弧と同じ高さになってくれません。
どうすればいいのでしょうか?
$\left\langle\left(u_1\,\,u_2\,\,\cdots\,\,u_n\right)
\left(\def\arraystretch{0.6}
\begin{array}{@{}c@{}c@{}c@{}c@{}}
\bar{u^1} \\ \bar{u^2} \\ \vdots \\ \bar{u^n}\end{array}\right)
u_n,u_{\sigma(n)}\right\rangle$
このトピックを読む
(現在の返信数: 4)
TeXworks で cid-x.map が読み込まれない
- Machida Masahiro の投稿
Windows7 で TeXインストーラ3 を使って w32tex をインストールし、
C:\w32tex\share\texmfdist\fonts\map\dvipdfmx\base
にある cid-x.map をヒラギノが埋め込まれるように書き換えました。
例えば、hoge.tex をコンパイルしたいとします。
w32texに付属の TeXworks でタイプセットすると、ヒラギノが埋め込まれません。
しかし、cid-x.map を hoge.tex と同じディレクトリに置き、コマンドプロンプトで
$ dvipdfmx -f cid-x.map hoge.dvi
を実行すると、ちゃんとヒラギノが埋め込まれます。
ということは、TeXworks でタイプセットするときに、cid-x.map が読み込まれていないのだと思います。
どうすれば読み込みが可能なのか、ご教示いただると助かります。
よろしくお願いいたします。
C:\w32tex\share\texmfdist\fonts\map\dvipdfmx\base
にある cid-x.map をヒラギノが埋め込まれるように書き換えました。
例えば、hoge.tex をコンパイルしたいとします。
w32texに付属の TeXworks でタイプセットすると、ヒラギノが埋め込まれません。
しかし、cid-x.map を hoge.tex と同じディレクトリに置き、コマンドプロンプトで
$ dvipdfmx -f cid-x.map hoge.dvi
を実行すると、ちゃんとヒラギノが埋め込まれます。
ということは、TeXworks でタイプセットするときに、cid-x.map が読み込まれていないのだと思います。
どうすれば読み込みが可能なのか、ご教示いただると助かります。
よろしくお願いいたします。
このトピックを読む
(現在の返信数: 2)
冪根の数字付きの\sqrtの再定義
- ヤバルゴ mdl.2 の投稿
美文書[第5版] P.103 『6.2 いろいろな記号』に書かれているマクロを利用し,\sqrt の根号を揃えた \ssqrt を定義しました.次のマクロです.
\newcommand{\ssqrt}[1]{\sqrt{\smash[b]{\mathstrut #1}}}
しかし,\ssqrt[2] のように冪根の数字を付けたとき,出力結果がおかしくなります.
この問題への対処をご教授ください.
以下がその例と結果(TeX2imgで作成した画像)です.
%----------------------
%% ドキュメントクラス
\documentclass[uplatex,dvipdfmx,a4paper,papersize,magstyle=real]{bxjsarticle}
\pagestyle{empty}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{mathtools} % include amsmath
%--冪根の数字を修正する(大きくする)--
% https://okumuralab.org/tex/mod/forum/discuss.php?d=1857
\usepackage{etoolbox}
\makeatletter
\patchcmd{\plainroot@}{\scriptscriptstyle}{\scriptstyle}{}{}
\makeatother
% 美文書[第5版] P.103 『6.2 いろいろな記号』に書かれているマクロを利用した
\newcommand{\ssqrt}[1]{\sqrt{\smash[b]{\mathstrut #1}}}
\begin{document}
\begin{align*} % \sqrt …不揃いで美しくない
t&=\sqrt{g}+\sqrt{h} \\
&=\sqrt[2]{g}+\sqrt[2]{h}
\end{align*}
\begin{align*} % \ssqrt …美しくなるハズ
t&=\ssqrt{g}+\ssqrt{h} \\
&=\ssqrt[2]{g}+\ssqrt[2]{h} % アレ
\end{align*}
\end{document}
%----------------------
\newcommand{\ssqrt}[1]{\sqrt{\smash[b]{\mathstrut #1}}}
しかし,\ssqrt[2] のように冪根の数字を付けたとき,出力結果がおかしくなります.
この問題への対処をご教授ください.
以下がその例と結果(TeX2imgで作成した画像)です.
%----------------------
%% ドキュメントクラス
\documentclass[uplatex,dvipdfmx,a4paper,papersize,magstyle=real]{bxjsarticle}
\pagestyle{empty}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{mathtools} % include amsmath
%--冪根の数字を修正する(大きくする)--
% https://okumuralab.org/tex/mod/forum/discuss.php?d=1857
\usepackage{etoolbox}
\makeatletter
\patchcmd{\plainroot@}{\scriptscriptstyle}{\scriptstyle}{}{}
\makeatother
% 美文書[第5版] P.103 『6.2 いろいろな記号』に書かれているマクロを利用した
\newcommand{\ssqrt}[1]{\sqrt{\smash[b]{\mathstrut #1}}}
\begin{document}
\begin{align*} % \sqrt …不揃いで美しくない
t&=\sqrt{g}+\sqrt{h} \\
&=\sqrt[2]{g}+\sqrt[2]{h}
\end{align*}
\begin{align*} % \ssqrt …美しくなるハズ
t&=\ssqrt{g}+\ssqrt{h} \\
&=\ssqrt[2]{g}+\ssqrt[2]{h} % アレ
\end{align*}
\end{document}
%----------------------
このトピックを読む
(現在の返信数: 9)
tikzに関する質問です.
- Edward Elric の投稿
tikzを使っていますが,図形の間に引く斜線の引き方がわかりません.
¥documentclass{jsarticle}
¥usepackage[top=30truemm,bottom=30truemm,left=25truemm,right=25truemm]{geometry}
¥usepackage{tikz}
¥usetikzlibrary{patterns}
% defining the new dimensions and parameters
¥newlength{¥hatchspread}
¥newlength{¥hatchthickness}
¥newlength{¥hatchshift}
¥newcommand{¥hatchcolor}{}
% declaring the keys in tikz
¥tikzset{hatchspread/.code={¥setlength{¥hatchspread}{#1}},
hatchthickness/.code={¥setlength{¥hatchthickness}{#1}},
hatchshift/.code={¥setlength{¥hatchshift}{#1}},% must be >= 0
hatchcolor/.code={¥renewcommand{¥hatchcolor}{#1}}}
% setting the default values
¥tikzset{hatchspread=3pt,
hatchthickness=0.4pt,
hatchshift=0pt,% must be >= 0
hatchcolor=black}
% declaring the pattern
¥pgfdeclarepatternformonly[¥hatchspread,¥hatchthickness,¥hatchshift,¥hatchcolor]% variables
{custom north west lines}% name
{¥pgfqpoint{¥dimexpr-2¥hatchthickness}{¥dimexpr-2¥hatchthickness}}% lower left corner
{¥pgfqpoint{¥dimexpr¥hatchspread+2¥hatchthickness}{¥dimexpr¥hatchspread+2¥hatchthickness}}% upper right corner
{¥pgfqpoint{¥dimexpr¥hatchspread}{¥dimexpr¥hatchspread}}% tile size
{% shape description
¥pgfsetlinewidth{¥hatchthickness}
¥pgfpathmoveto{¥pgfqpoint{0pt}{¥dimexpr¥hatchspread+¥hatchshift}}
¥pgfpathlineto{¥pgfqpoint{¥dimexpr¥hatchspread+0.15pt+¥hatchshift}{-0.15pt}}
¥ifdim ¥hatchshift > 0pt
¥pgfpathmoveto{¥pgfqpoint{0pt}{¥hatchshift}}
¥pgfpathlineto{¥pgfqpoint{¥dimexpr0.15pt+¥hatchshift}{-0.15pt}}
¥fi
¥pgfsetstrokecolor{¥hatchcolor}
% ¥pgfsetdash{{1pt}{1pt}}{0pt}% dashing cannot work correctly in all situation this way
¥pgfusepath{stroke}
}
¥begin{document}
¥begin{tikzpicture}[domain=0:6]
¥coordinate (A) at (4.43,5.2);
¥coordinate (B) at (2.9,1.9);
¥fill (A) circle (2pt) (B) circle (2pt);
¥draw[->] (-1,0) -- (6.2,0);
¥draw[->] (0,-1) -- (0,6.2);
¥draw[->] (-1,0) -- (6.2,0);
¥draw (0,0) node[below left]{O};
¥draw[thick, domain=1:4.7,] plot (¥x,{0.05*exp(¥x)+1});
¥draw [thin, dashed](0,5.2)--(4.43,5.2)--(4.43,0)node[below]{$t+¥Delta t$};
¥draw [thin, dashed](0,1.9)--(2.9,1.9)--(2.9,0)node[below]{$t_0$};
¥draw [pattern=custom north west lines] (2.9,0) rectangle (4.43,1.9);
¥end{tikzpicture}
¥end{document}
上の図形で,(¥x,{0.05*exp(¥x)+1})の関数がありますが,その関数とx軸との間に斜線を引きたいです.(範囲は$t_0$から$t+¥Delta t$)その方法を教えてください.
このトピックを読む
(現在の返信数: 3)
上下の添字ができません。
- DION Emily の投稿
documentclass で指定した用紙サイズを /BleedBox, /TrimBox に展開したい
- ヤバルゴ mdl.2 の投稿
dvipdfmx の special 命令で用紙サイズを PDF のメタデータ( /BleedBox, /TrimBox )に記述したいのですが, documentclass や geometry で指定した用紙サイズを /BleedBox, /TrimBox に自動で展開する記述方法をご教授ください.
(lengthconvert パッケージで試してみましたが,上手く動きませんでした.)
以下にコードを記載します.また同じものをZIPで添付します.
(https://texwiki.texjp.org/?dvipdfmx#e2cc950a を参考にしました.)
%-----------------
\documentclass[uplatex,dvipdfmx,ja=standard,magstyle=real]{bxjsarticle}
% lengthconvertパッケージ
% 例の修正(https://okumuralab.org/tex/mod/forum/discuss.php?d=1673)
\usepackage{lengthconvert}
\ExplSyntaxOn
\cs_new:Npn \__lconv_calc_dim_fixed:n #1
{
\fp_eval:n
{
round( \dim_to_fp:n { #1 } / (1\l__lconv_unit_tl) , \l__lconv_precision_int)
}
}
\cs_set_eq:NN \__lconv_calc_dim:n \__lconv_calc_dim_fixed:n
\ExplSyntaxOff
% 代入したい位置
% 用紙サイズを bp に変換した数値を自動で代入できると嬉しい
\usepackage{bophook}
\AtBeginPage{
\special{pdf:put @thispage <<
/BleedBox [0 0 595.28 841.89] % ここ
/TrimBox [0 0 595.28 841.89] % ここ
>>}
}
% 以下,おまけ
% 自力で改造しているので,間違っている可能性あり
\usepackage{datetime}
\renewcommand{\dateseparator}{-}
\title{My title}
\author{My name}
\date{\yyyymmdddate\today}
\AtBeginDvi{
\special{pdf:tounicode UTF8-UTF16}
\special{pdf:docinfo <<
/Title (My title)
/Subject (My subtitle)
/Author (My name)
/CreationDate (D:\pdfdate+09'00')
/ModDate (D:\pdfdate+09'00')
/Keywords (My keywords)
>>}
}
\AtBeginDvi{
\special{pdf:minorversion 3}
\special{pdf:docinfo <<
/Trapped /False
/GTS_PDFXVersion (PDF/X-1:2001)
/GTS_PDFXConformance (PDF/X-1a:2001)
>>}
\special{pdf:docview <<
/OutputIntents [ <<
/Type /OutputIntent
/S /GTS_PDFX
/OutputConditionIdentifier (JC200103)
/OutputCondition (JC200103 (Japan Color 2001 Coated))
/RegistryName (http://www.color.org)
>> ]
>>}
}
\begin{document}
\verb|\Convert[unit=bp,precision=2,number-only]{\paperwidth} ->|
\Convert[unit=bp,precision=2,number-only]{\paperwidth} % 595.28
\verb|\Convert[unit=bp,precision=2,number-only]{\paperheight} ->|
\Convert[unit=bp,precision=2,number-only]{\paperheight} % 841.89
\verb|\Convert|は\verb|document|環境でしか使えないのかな?
一応,プリフライトでPDF/X-1a準拠と確認できるものができあっている.
\end{document}
(lengthconvert パッケージで試してみましたが,上手く動きませんでした.)
以下にコードを記載します.また同じものをZIPで添付します.
(https://texwiki.texjp.org/?dvipdfmx#e2cc950a を参考にしました.)
%-----------------
\documentclass[uplatex,dvipdfmx,ja=standard,magstyle=real]{bxjsarticle}
% lengthconvertパッケージ
% 例の修正(https://okumuralab.org/tex/mod/forum/discuss.php?d=1673)
\usepackage{lengthconvert}
\ExplSyntaxOn
\cs_new:Npn \__lconv_calc_dim_fixed:n #1
{
\fp_eval:n
{
round( \dim_to_fp:n { #1 } / (1\l__lconv_unit_tl) , \l__lconv_precision_int)
}
}
\cs_set_eq:NN \__lconv_calc_dim:n \__lconv_calc_dim_fixed:n
\ExplSyntaxOff
% 代入したい位置
% 用紙サイズを bp に変換した数値を自動で代入できると嬉しい
\usepackage{bophook}
\AtBeginPage{
\special{pdf:put @thispage <<
/BleedBox [0 0 595.28 841.89] % ここ
/TrimBox [0 0 595.28 841.89] % ここ
>>}
}
% 以下,おまけ
% 自力で改造しているので,間違っている可能性あり
\usepackage{datetime}
\renewcommand{\dateseparator}{-}
\title{My title}
\author{My name}
\date{\yyyymmdddate\today}
\AtBeginDvi{
\special{pdf:tounicode UTF8-UTF16}
\special{pdf:docinfo <<
/Title (My title)
/Subject (My subtitle)
/Author (My name)
/CreationDate (D:\pdfdate+09'00')
/ModDate (D:\pdfdate+09'00')
/Keywords (My keywords)
>>}
}
\AtBeginDvi{
\special{pdf:minorversion 3}
\special{pdf:docinfo <<
/Trapped /False
/GTS_PDFXVersion (PDF/X-1:2001)
/GTS_PDFXConformance (PDF/X-1a:2001)
>>}
\special{pdf:docview <<
/OutputIntents [ <<
/Type /OutputIntent
/S /GTS_PDFX
/OutputConditionIdentifier (JC200103)
/OutputCondition (JC200103 (Japan Color 2001 Coated))
/RegistryName (http://www.color.org)
>> ]
>>}
}
\begin{document}
\verb|\Convert[unit=bp,precision=2,number-only]{\paperwidth} ->|
\Convert[unit=bp,precision=2,number-only]{\paperwidth} % 595.28
\verb|\Convert[unit=bp,precision=2,number-only]{\paperheight} ->|
\Convert[unit=bp,precision=2,number-only]{\paperheight} % 841.89
\verb|\Convert|は\verb|document|環境でしか使えないのかな?
一応,プリフライトでPDF/X-1a準拠と確認できるものができあっている.
\end{document}
このトピックを読む
(現在の返信数: 5)