diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx | 246 |
1 files changed, 123 insertions, 123 deletions
diff --git a/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx b/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx index 7c8e43143c5..9d442e2fe77 100644 --- a/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx +++ b/Master/texmf-dist/source/latex/l3kernel/l3drivers.dtx @@ -7,7 +7,7 @@ % license or (at your option) any later version. The latest version % of this license is in the file % -% http://www.latex-project.org/lppl.txt +% https://www.latex-project.org/lppl.txt % % This file is part of the "l3kernel bundle" (The Work in LPPL) % and all files in that bundle must be distributed together. @@ -21,7 +21,7 @@ % for those people who are interested. % %<*driver> -\documentclass[full]{l3doc} +\documentclass[full,kernel]{l3doc} %</driver> %<*driver|package> %</driver|package> @@ -45,7 +45,7 @@ % }^^A % } % -% \date{Released 2017/11/14} +% \date{Released 2017/12/05} % % \maketitle % @@ -518,7 +518,7 @@ %<*dvisvgm|dvipdfmx|dvips|xdvipdfmx> % \end{macrocode} % -% \begin{macro}[int]{\@@_color_pickup:N} +% \begin{macro}{\@@_color_pickup:N} % Allow for \LaTeXe{} color. Here, the possible input values are limited: % \texttt{dvips}-style colors can mainly be taken as-is with the exception % spot ones (here we need a model and a tint). @@ -550,11 +550,11 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_color_select:n, \@@_color_select:V} -% \begin{macro}[aux, EXP]{\@@_convert_model:w} -% \begin{macro}[aux, EXP]{\@@_color_convert_spot:} -% \begin{macro}[aux, EXP]{\@@_color_convert_spot:w} -% \begin{macro}[aux]{\@@_color_reset:} +% \begin{macro}{\@@_color_select:n, \@@_color_select:V} +% \begin{macro}[EXP]{\@@_convert_model:w} +% \begin{macro}[EXP]{\@@_color_convert_spot:} +% \begin{macro}[EXP]{\@@_color_convert_spot:w} +% \begin{macro}{\@@_color_reset:} % Mainly no conversation but a little work with \texttt{spot} colors as they % can't have a tint level here! The easy route of just picking up % \texttt{spot} as a model won't work as there could be additional models @@ -597,8 +597,8 @@ %<*pdfmode> % \end{macrocode} % -% \begin{macro}[aux]{\@@_color_pickup:N} -% \begin{macro}[aux]{\@@_color_pickup_aux:w} +% \begin{macro}{\@@_color_pickup:N} +% \begin{macro}{\@@_color_pickup_aux:w} % The current color in driver-dependent format: pick up the package-mode % data if available. We end up converting back and forward in this route as % we store our color data in \texttt{dvips} format. @@ -656,16 +656,16 @@ % \end{macrocode} % \end{variable} % -% \begin{macro}[int]{\@@_color_select:n, \@@_color_select:V} -% \begin{macro}[aux, EXP]{\@@_color_convert:w} -% \begin{macro}[aux, EXP] +% \begin{macro}{\@@_color_select:n, \@@_color_select:V} +% \begin{macro}[EXP]{\@@_color_convert:w} +% \begin{macro}[EXP] % { % \@@_color_convert_gray:w , % \@@_color_convert_cmyk:w , % \@@_color_convert_rgb:w , % \@@_color_convert_spot:w % } -% \begin{macro}[aux]{\@@_color_reset:} +% \begin{macro}{\@@_color_reset:} % There is a dedicated primitive/primitive interface for setting colors. % As with scoping, this approach is not suitable for cached operations. % Most of the conversions are trivial but the need to cover spot colors @@ -721,7 +721,7 @@ % % \subsubsection{Basics} % -% \begin{macro}[int]{\@@_literal:n} +% \begin{macro}{\@@_literal:n} % In the case of \texttt{dvips} there is no build-in saving of the current % position, and so some additional PostScript is required to set up the % transformation matrix and also to restore it afterwards. Notice the use @@ -756,7 +756,7 @@ % % \subsection{Driver-specific auxiliaries} % -% \begin{macro}[int, EXP]{\@@_absolute_lengths:n} +% \begin{macro}[EXP]{\@@_absolute_lengths:n} % The \texttt{dvips} driver scales all absolute dimensions based % on the output resolution selected and any \TeX{} magnification. Thus % for any operation involving absolute lengths there is a correction to @@ -844,14 +844,14 @@ % % \subsection{Images} % -% \begin{macro}[int]{\@@_image_getbb_eps:n} +% \begin{macro}{\@@_image_getbb_eps:n} % Simply use the generic function. % \begin{macrocode} \cs_new_eq:NN \@@_image_getbb_eps:n \__image_read_bb:n % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_image_include_eps:n} +% \begin{macro}{\@@_image_include_eps:n} % The special syntax is relatively clear here: remember we need PostScript % sizes here. % \begin{macrocode} @@ -864,7 +864,7 @@ % % \subsection{Drawing} % -% \begin{macro}[aux]{\@@_draw_literal:n, \@@_draw_literal:x} +% \begin{macro}{\@@_draw_literal:n, \@@_draw_literal:x} % Literals with no positioning (using |ps:| each one is positioned but % cut off from everything else, so no good for the stepwise approach needed % here). @@ -875,7 +875,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_draw_begin:, \@@_draw_end:} +% \begin{macro}{\@@_draw_begin:, \@@_draw_end:} % The |ps::[begin]| special here deals with positioning but allows us to % continue on to a matching |ps::[end]|: contrast with |ps:|, which positions % but where we can't split material between separate calls. The @@ -899,7 +899,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_draw_scope_begin:, \@@_draw_scope_end:} +% \begin{macro}{\@@_draw_scope_begin:, \@@_draw_scope_end:} % Scope here may need to contain saved definitions, so the entire memory % rather than just the graphic state has to be sent to the stack. % \begin{macrocode} @@ -910,9 +910,9 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_draw_moveto:nn, \@@_draw_lineto:nn} -% \begin{macro}[int]{\@@_draw_rectangle:nnnn} -% \begin{macro}[int]{\@@_draw_curveto:nnnnnn} +% \begin{macro}{\@@_draw_moveto:nn, \@@_draw_lineto:nn} +% \begin{macro}{\@@_draw_rectangle:nnnn} +% \begin{macro}{\@@_draw_curveto:nnnnnn} % Path creation operations mainly resolve directly to PostScript primitive % steps, with only the need to convert to \texttt{bp}. Notice that % \texttt{x}-type expansion is included here to ensure that any variable @@ -954,8 +954,8 @@ % \end{macro} % \end{macro} % -% \begin{macro}[int]{\@@_draw_evenodd_rule:, \@@_draw_nonzero_rule:} -% \begin{variable}[aux]{\g_@@_draw_eor_bool} +% \begin{macro}{\@@_draw_evenodd_rule:, \@@_draw_nonzero_rule:} +% \begin{variable}{\g_@@_draw_eor_bool} % The even-odd rule here can be implemented as a simply switch. % \begin{macrocode} \cs_new_protected:Npn \@@_draw_evenodd_rule: @@ -967,7 +967,7 @@ % \end{variable} % \end{macro} % -% \begin{macro}[int] +% \begin{macro} % { % \@@_draw_closepath: , % \@@_draw_stroke: , @@ -977,7 +977,7 @@ % \@@_draw_clip: , % \@@_draw_discardpath: % } -% \begin{variable}[aux]{\g_@@_draw_clip_bool} +% \begin{variable}{\g_@@_draw_clip_bool} % Unlike PDF, PostScript doesn't track separate colors for strokes and other % elements. It is also desirable to have the |clip| keyword after a stroke or % fill. To achieve those outcomes, there is some work to do. For color, if a @@ -1074,11 +1074,11 @@ % \end{variable} % \end{macro} % -% \begin{macro}[int]{\@@_draw_dash:nn} -% \begin{macro}[aux]{\@@_draw_dash:n} -% \begin{macro}[int]{\@@_draw_linewidth:n} -% \begin{macro}[int]{\@@_draw_miterlimit:n} -% \begin{macro}[int] +% \begin{macro}{\@@_draw_dash:nn} +% \begin{macro}{\@@_draw_dash:n} +% \begin{macro}{\@@_draw_linewidth:n} +% \begin{macro}{\@@_draw_miterlimit:n} +% \begin{macro} % { % \@@_draw_cap_butt:, \@@_draw_cap_round:, \@@_draw_cap_rectangle:, % \@@_draw_join_miter:, \@@_draw_join_round:, \@@_draw_join_bevel: @@ -1124,20 +1124,20 @@ % \end{macro} % \end{macro} % -% \begin{macro}[aux]{\_@@_draw_color_reset:} -% \begin{macro}[int] +% \begin{macro}{\_@@_draw_color_reset:} +% \begin{macro} % { % \@@_draw_color_cmyk:nnnn , % \@@_draw_color_cmyk_fill:nnnn , % \@@_draw_color_cmyk_stroke:nnnn % } -% \begin{macro}[int] +% \begin{macro} % { % \@@_draw_color_gray:n , % \@@_draw_color_gray_fill:n , % \@@_draw_color_gray_stroke:n % } -% \begin{macro}[int] +% \begin{macro} % { % \@@_draw_color_rgb:nnn , % \@@_draw_color_rgb_fill:nnn , @@ -1237,7 +1237,7 @@ % \end{macro} % \end{macro} % -% \begin{macro}[int]{\@@_draw_transformcm:nnnnnn} +% \begin{macro}{\@@_draw_transformcm:nnnnnn} % The first four arguments here are floats (the affine matrix), the last % two are a displacement vector. Once again, force evaluation to allow for % caching. @@ -1257,7 +1257,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_draw_hbox:Nnnnnnn} +% \begin{macro}{\@@_draw_hbox:Nnnnnnn} % Inside a picture |@beginspecial|/|@endspecial| are active, which is % normally a good thing but means that the position and scaling would be off % if the box was inserted directly. Instead, we need to reverse the effect of @@ -1303,7 +1303,7 @@ % % \subsubsection{Basics} % -% \begin{macro}[int]{\@@_literal:n} +% \begin{macro}{\@@_literal:n} % This is equivalent to \verb|\special{pdf:}| but the engine can % track it. Without the \texttt{direct} keyword everything is kept in % sync: the transformation matrix is set to the current point automatically. @@ -1320,7 +1320,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_scope_begin:, \@@_scope_end:} +% \begin{macro}{\@@_scope_begin:, \@@_scope_end:} % Higher-level interfaces for saving and restoring the graphic state. % \begin{macrocode} \cs_new_protected:Npx \@@_scope_begin: @@ -1338,7 +1338,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_matrix:n} +% \begin{macro}{\@@_matrix:n} % Here the appropriate function is set up to insert an affine matrix % into the PDF. With \pdfTeX{} and \LuaTeX{} in direct PDF output mode there % is a primitive for this, which only needs the rotation/scaling/skew part. @@ -1382,7 +1382,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_box_use_rotate:Nn} +% \begin{macro}{\@@_box_use_rotate:Nn} % \begin{variable}{\l_@@_cos_fp, \l_@@_sin_fp} % Rotations are set using an affine transformation matrix which therefore % requires sine/cosine values not the angle itself. We store the rounded @@ -1454,9 +1454,9 @@ % \end{macrocode} % \end{variable} % -% \begin{macro}[int] +% \begin{macro} % {\@@_image_getbb_jpg:n, \@@_image_getbb_pdf:n, \@@_image_getbb_png:n} -% \begin{macro}[aux] +% \begin{macro} % {\@@_image_getbb_auxi:n, \@@_image_getbb_auxii:n} % Getting the bounding box here requires us to box up the image and % measure it. To deal with the difference in feature support in bitmap @@ -1546,7 +1546,7 @@ % \end{macro} % \end{macro} % -% \begin{macro}[int] +% \begin{macro} % {\@@_image_include_jpg:n, \@@_image_include_pdf:n, \@@_image_include_png:n} % Images are already loaded for the measurement part of the code, so % inclusion is straight-forward, with only any attributes to worry about. The @@ -1580,7 +1580,7 @@ % % \subsubsection{Basics} % -% \begin{macro}[int]{\@@_literal:n} +% \begin{macro}{\@@_literal:n} % Equivalent to \texttt{pdf:content} but favored as the link to % the \pdfTeX{} primitive approach is clearer. Some higher-level operations % use |\tex_special:D| directly: see the later comments on where this is @@ -1591,7 +1591,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_scope_begin:, \@@_scope_end:} +% \begin{macro}{\@@_scope_begin:, \@@_scope_end:} % Scoping is done using the driver-specific specials. % \begin{macrocode} \cs_new_protected:Npn \@@_scope_begin: @@ -1625,7 +1625,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_box_use_rotate:Nn} +% \begin{macro}{\@@_box_use_rotate:Nn} % Rotating in \texttt{(x)}dvipdmfx can be implemented using either PDF or % driver-specific code. The former approach however is not \enquote{aware} % of the content of boxes: this means that any embedded links would not be @@ -1671,7 +1671,7 @@ % % \subsection{Images} % -% \begin{macro}[int] +% \begin{macro} % { % \@@_image_getbb_eps:n, \@@_image_getbb_jpg:n, % \@@_image_getbb_pdf:n, \@@_image_getbb_png:n @@ -1698,21 +1698,21 @@ % \end{macrocode} % \end{macro} % -% \begin{variable}[aux]{\g_@@_image_int} +% \begin{variable}{\g_@@_image_int} % Used to track the object number associated with each image. % \begin{macrocode} \int_new:N \g_@@_image_int % \end{macrocode} % \end{variable} % -% \begin{macro}[int] +% \begin{macro} % { % \@@_image_include_eps:n, \@@_image_include_jpg:n, % \@@_image_include_pdf:n, \@@_image_include_png:n % } -% \begin{macro}[aux]{\@@_image_include_auxi:nn} -% \begin{macro}[aux]{\@@_image_include_auxii:nnn, \@@_image_include_auxii:xnn} -% \begin{macro}[aux]{\@@_image_include_auxiii:nn} +% \begin{macro}{\@@_image_include_auxi:nn} +% \begin{macro}{\@@_image_include_auxii:nnn, \@@_image_include_auxii:xnn} +% \begin{macro}{\@@_image_include_auxiii:nn} % The special syntax depends on the file type. There is a difference in % how PDF images are best handled between |dvipdfmx| and |xdvipdfmx|: for % the latter it is better to use the primitive route. The relevant code for @@ -1817,14 +1817,14 @@ % % \subsection{Images} % -% \begin{macro}[int] +% \begin{macro} % {\@@_image_getbb_jpg:n, \@@_image_getbb_pdf:n, \@@_image_getbb_png:n} -% \begin{macro}[aux]{\@@_image_getbb_auxi:nN} -% \begin{macro}[aux]{\@@_image_getbb_auxii:nnN, \@@_image_getbb_auxii:VnN} -% \begin{macro}[aux]{\@@_image_getbb_auxiii:nNnn} -% \begin{macro}[aux]{\@@_image_getbb_auxiv:nnNnn, \@@_image_getbb_auxiv:VnNnn} -% \begin{macro}[aux]{\@@_image_getbb_auxv:nNnn, \@@_image_getbb_auxv:nNnn} -% \begin{macro}[aux, EXP]{\@@_image_getbb_pagebox:w} +% \begin{macro}{\@@_image_getbb_auxi:nN} +% \begin{macro}{\@@_image_getbb_auxii:nnN, \@@_image_getbb_auxii:VnN} +% \begin{macro}{\@@_image_getbb_auxiii:nNnn} +% \begin{macro}{\@@_image_getbb_auxiv:nnNnn, \@@_image_getbb_auxiv:VnNnn} +% \begin{macro}{\@@_image_getbb_auxv:nNnn, \@@_image_getbb_auxv:nNnn} +% \begin{macro}[EXP]{\@@_image_getbb_pagebox:w} % For \texttt{xdvipdfmx}, there are two primitives that allow us to obtain % the bounding box without needing \texttt{extractbb}. The only complexity % is passing the various minor variations to a common core process. The @@ -1900,7 +1900,7 @@ % \end{macro} % \end{macro} % -% \begin{macro}[int]{\@@_image_include_pdf:n} +% \begin{macro}{\@@_image_include_pdf:n} % For PDF images, properly supporting the |pagebox| concept in \XeTeX{} % is best done using the |\xetex_pdffile:D| primitive. The syntax here % is the same as for the image measurement part, although we know at this @@ -1931,7 +1931,7 @@ % % \subsection{Drawing} % -% \begin{macro}[aux]{\@@_draw_literal:n, \@@_draw_literal:x} +% \begin{macro}{\@@_draw_literal:n, \@@_draw_literal:x} % Pass data through using a dedicated interface. % \begin{macrocode} \cs_new_eq:NN \@@_draw_literal:n \@@_literal:n @@ -1939,7 +1939,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_draw_begin:, \@@_draw_end:} +% \begin{macro}{\@@_draw_begin:, \@@_draw_end:} % No special requirements here, so simply set up a drawing scope. % \begin{macrocode} \cs_new_protected:Npn \@@_draw_begin: @@ -1949,7 +1949,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_draw_scope_begin:, \@@_draw_scope_end:} +% \begin{macro}{\@@_draw_scope_begin:, \@@_draw_scope_end:} % In contrast to a general scope, a drawing scope is always done using % the PDF operators so is the same for all relevant drivers. % \begin{macrocode} @@ -1960,9 +1960,9 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_draw_moveto:nn, \@@_draw_lineto:nn} -% \begin{macro}[int]{\@@_draw_curveto:nnnnnn} -% \begin{macro}[int]{\@@_draw_rectangle:nnnn} +% \begin{macro}{\@@_draw_moveto:nn, \@@_draw_lineto:nn} +% \begin{macro}{\@@_draw_curveto:nnnnnn} +% \begin{macro}{\@@_draw_rectangle:nnnn} % Path creation operations all resolve directly to PDF primitive steps, with % only the need to convert to \texttt{bp}. Notice that \texttt{x}-type % expansion is included here to ensure that any variable values are @@ -2002,8 +2002,8 @@ % \end{macro} % \end{macro} % -% \begin{macro}[int]{\@@_draw_evenodd_rule:, \@@_draw_nonzero_rule:} -% \begin{variable}[int]{\g_@@_draw_eor_bool} +% \begin{macro}{\@@_draw_evenodd_rule:, \@@_draw_nonzero_rule:} +% \begin{variable}{\g_@@_draw_eor_bool} % The even-odd rule here can be implemented as a simply switch. % \begin{macrocode} \cs_new_protected:Npn \@@_draw_evenodd_rule: @@ -2015,7 +2015,7 @@ % \end{variable} % \end{macro} % -% \begin{macro}[int] +% \begin{macro} % { % \@@_draw_closepath: , % \@@_draw_stroke: , @@ -2054,11 +2054,11 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_draw_dash:nn} -% \begin{macro}[aux]{\@@_draw_dash:n} -% \begin{macro}[int]{\@@_draw_linewidth:n} -% \begin{macro}[int]{\@@_draw_miterlimit:n} -% \begin{macro}[int] +% \begin{macro}{\@@_draw_dash:nn} +% \begin{macro}{\@@_draw_dash:n} +% \begin{macro}{\@@_draw_linewidth:n} +% \begin{macro}{\@@_draw_miterlimit:n} +% \begin{macro} % { % \@@_draw_cap_butt:, \@@_draw_cap_round:, \@@_draw_cap_rectangle:, % \@@_draw_join_miter:, \@@_draw_join_round:, \@@_draw_join_bevel: @@ -2104,27 +2104,27 @@ % \end{macro} % \end{macro} % -% \begin{macro}[int] +% \begin{macro} % { % \@@_draw_color_cmyk:nnnn , % \@@_draw_color_cmyk_fill:nnnn , % \@@_draw_color_cmyk_stroke:nnnn % } -% \begin{macro}[aux]{\@@_draw_color_cmyk_aux:nnnn} -% \begin{macro}[int] +% \begin{macro}{\@@_draw_color_cmyk_aux:nnnn} +% \begin{macro} % { % \@@_draw_color_gray:n , % \@@_draw_color_gray_fill:n , % \@@_draw_color_gray_stroke:n % } -% \begin{macro}[aux]{\@@_draw_color_gray_aux:n} -% \begin{macro}[int] +% \begin{macro}{\@@_draw_color_gray_aux:n} +% \begin{macro} % { % \@@_draw_color_rgb:nnn , % \@@_draw_color_rgb_fill:nnn , % \@@_draw_color_rgb_stroke:nnn % } -% \begin{macro}[aux]{\@@_draw_color_rgb_aux:nnn} +% \begin{macro}{\@@_draw_color_rgb_aux:nnn} % Yet more fast conversion, all using the FPU to allow for expressions % in numerical input. % \begin{macrocode} @@ -2208,7 +2208,7 @@ % \end{macro} % \end{macro} % -% \begin{macro}[int]{\@@_draw_transformcm:nnnnnn} +% \begin{macro}{\@@_draw_transformcm:nnnnnn} % The first four arguments here are floats (the affine matrix), the last % two are a displacement vector. Once again, force evaluation to allow for % caching. @@ -2226,8 +2226,8 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_draw_hbox:Nnnnnnn} -% \begin{variable}[aux]{\l_@@_tmp_box} +% \begin{macro}{\@@_draw_hbox:Nnnnnnn} +% \begin{variable}{\l_@@_tmp_box} % Inserting a \TeX{} box transformed to the requested position and using % the current matrix is done using a mixture of \TeX{} and low-level % manipulation. The offset can be handled by \TeX{}, so only any rotation/^^A @@ -2239,7 +2239,7 @@ { \hbox_set:Nn \l_@@_tmp_box { - \tex_kern:D \__dim_eval:w #6 \__dim_eval_end: + \tex_kern:D \__dim_eval:n {#6} \@@_scope_begin: \@@_draw_transformcm:nnnnnn {#2} {#3} {#4} {#5} { 0pt } { 0pt } @@ -2268,7 +2268,7 @@ % % \subsubsection{Basics} % -% \begin{macro}[int]{\@@_literal:n} +% \begin{macro}{\@@_literal:n} % Unlike the other drivers, the requirements for making SVG files mean % that we can't conveniently transform all operations to the current point. % That makes life a bit more tricky later as that needs to be accounted for. @@ -2280,7 +2280,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_scope_begin:, \@@_scope_end:} +% \begin{macro}{\@@_scope_begin:, \@@_scope_end:} % A scope in SVG terms is slightly different to the other drivers as % operations have to be \enquote{tied} to these not simply inside them. % \begin{macrocode} @@ -2293,7 +2293,7 @@ % % \subsection{Driver-specific auxiliaries} % -% \begin{macro}[int]{\@@_scope_begin:n} +% \begin{macro}{\@@_scope_begin:n} % In SVG transformations, clips and so on are attached directly to scopes so % we need a way or allowing for that. This is rather more useful than % \cs{@@_scope_begin:} as a result. No assumptions are made about the nature @@ -2306,8 +2306,8 @@ % % \subsubsection{Box operations} % -% \begin{macro}[int]{\@@_box_use_clip:N} -% \begin{variable}[aux]{\g_@@_clip_path_int} +% \begin{macro}{\@@_box_use_clip:N} +% \begin{variable}{\g_@@_clip_path_int} % Clipping in SVG is more involved than with other drivers. The first issue % is that the clipping path must be defined separately from where it is used, % so we need to track how many paths have applied. The naming here uses @@ -2381,7 +2381,7 @@ % \end{variable} % \end{macro} % -% \begin{macro}[int]{\@@_box_use_rotate:Nn} +% \begin{macro}{\@@_box_use_rotate:Nn} % Rotation has a dedicated operation which includes a centre-of-rotation % optional pair. That can be picked up from the driver syntax, so there is % no need to worry about the transformation matrix. @@ -2431,7 +2431,7 @@ % % \subsection{Images} % -% \begin{macro}[int]{\@@_image_getbb_png:n, \@@_image_getbb_jpg:n} +% \begin{macro}{\@@_image_getbb_png:n, \@@_image_getbb_jpg:n} % These can be included by extracting the bounding box data. % \begin{macrocode} \cs_new_eq:NN \@@_image_getbb_png:n \__image_extract_bb:n @@ -2439,8 +2439,8 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_image_include_png:n, \@@_image_include_jpg:n} -% \begin{macro}[aux]{\@@_image_include_bitmap_quote:w} +% \begin{macro}{\@@_image_include_png:n, \@@_image_include_jpg:n} +% \begin{macro}{\@@_image_include_bitmap_quote:w} % The driver here has built-in support for basic image inclusion (see % \texttt{dvisvgm.def} for a more complex approach, needed if clipping, % \emph{etc.}, is covered at the image driver level). The only issue is @@ -2466,7 +2466,7 @@ % % \subsection{Drawing} % -% \begin{macro}[aux]{\@@_draw_literal:n, \@@_draw_literal:x} +% \begin{macro}{\@@_draw_literal:n, \@@_draw_literal:x} % The same as the more general literal call. % \begin{macrocode} \cs_new_eq:NN \@@_draw_literal:n \@@_literal:n @@ -2474,7 +2474,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_draw_begin:, \@@_draw_end:} +% \begin{macro}{\@@_draw_begin:, \@@_draw_end:} % A drawing needs to be set up such that the co-ordinate system is % translated. That is done inside a scope, which as described below % \begin{macrocode} @@ -2488,9 +2488,9 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_draw_scope_begin:, \@@_draw_scope_end:} -% \begin{macro}[aux]{\@@_draw_scope:n, \@@_draw_scope:x} -% \begin{variable}[aux]{\g_@@_draw_scope_int, \l_@@_draw_scope_int} +% \begin{macro}{\@@_draw_scope_begin:, \@@_draw_scope_end:} +% \begin{macro}{\@@_draw_scope:n, \@@_draw_scope:x} +% \begin{variable}{\g_@@_draw_scope_int, \l_@@_draw_scope_int} % Several settings that with other drivers are \enquote{stand alone} have % to be given as part of a scope in SVG. As a result, there is a need to % provide a mechanism to automatically close these extra scopes. That is @@ -2530,11 +2530,11 @@ % \end{macro} % \end{macro} % -% \begin{macro}[int]{\@@_draw_moveto:nn, \@@_draw_lineto:nn} -% \begin{macro}[int]{\@@_draw_rectangle:nnnn} -% \begin{macro}[int]{\@@_draw_curveto:nnnnnn} -% \begin{macro}[aux]{\@@_draw_add_to_path:n} -% \begin{variable}[aux]{\g_@@_draw_path_tl} +% \begin{macro}{\@@_draw_moveto:nn, \@@_draw_lineto:nn} +% \begin{macro}{\@@_draw_rectangle:nnnn} +% \begin{macro}{\@@_draw_curveto:nnnnnn} +% \begin{macro}{\@@_draw_add_to_path:n} +% \begin{variable}{\g_@@_draw_path_tl} % Once again, some work is needed to get path constructs correct. Rather % then write the values as they are given, the entire path needs to be % collected up before being output in one go. For that we use a dedicated @@ -2590,7 +2590,7 @@ % \end{macro} % \end{macro} % -% \begin{macro}[int]{\@@_draw_evenodd_rule:, \@@_draw_nonzero_rule:} +% \begin{macro}{\@@_draw_evenodd_rule:, \@@_draw_nonzero_rule:} % The fill rules here have to be handled as scopes. % \begin{macrocode} \cs_new_protected:Npn \@@_draw_evenodd_rule: @@ -2600,8 +2600,8 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[aux]{\@@_draw_path:n} -% \begin{macro}[int] +% \begin{macro}{\@@_draw_path:n} +% \begin{macro} % { % \@@_draw_closepath: , % \@@_draw_stroke: , @@ -2611,8 +2611,8 @@ % \@@_draw_clip: , % \@@_draw_discardpath: % } -% \begin{variable}[aux]{\g_@@_draw_clip_bool} -% \begin{variable}[aux]{\g_@@_draw_path_int} +% \begin{variable}{\g_@@_draw_clip_bool} +% \begin{variable}{\g_@@_draw_path_int} % Setting fill and stroke effects and doing clipping all has to be done using % scopes. This means setting up the various requirements in a shared % auxiliary which deals with the bits and pieces. Clipping paths are reused @@ -2693,12 +2693,12 @@ % \end{macro} % \end{macro} % -% \begin{macro}[int]{\@@_draw_dash:nn} -% \begin{macro}[aux]{\@@_draw_dash:n} -% \begin{macro}[aux]{\@@_draw_dash_aux:nn} -% \begin{macro}[int]{\@@_draw_linewidth:n} -% \begin{macro}[int]{\@@_draw_miterlimit:n} -% \begin{macro}[int] +% \begin{macro}{\@@_draw_dash:nn} +% \begin{macro}{\@@_draw_dash:n} +% \begin{macro}{\@@_draw_dash_aux:nn} +% \begin{macro}{\@@_draw_linewidth:n} +% \begin{macro}{\@@_draw_miterlimit:n} +% \begin{macro} % { % \@@_draw_cap_butt:, \@@_draw_cap_round:, \@@_draw_cap_rectangle:, % \@@_draw_join_miter:, \@@_draw_join_round:, \@@_draw_join_bevel: @@ -2755,19 +2755,19 @@ % \end{macro} % \end{macro} % -% \begin{macro}[int] +% \begin{macro} % { % \@@_draw_color_cmyk:nnnn , % \@@_draw_color_cmyk_fill:nnnn , % \@@_draw_color_cmyk_stroke:nnnn % } -% \begin{macro}[int] +% \begin{macro} % { % \@@_draw_color_gray:n , % \@@_draw_color_gray_fill:n , % \@@_draw_color_gray_stroke:n % } -% \begin{macro}[int] +% \begin{macro} % { % \@@_draw_color_rgb:nnn , % \@@_draw_color_rgb_fill:nnn , @@ -2865,7 +2865,7 @@ % \end{macro} % \end{macro} % -% \begin{macro}[int]{\@@_draw_transformcm:nnnnnn} +% \begin{macro}{\@@_draw_transformcm:nnnnnn} % The first four arguments here are floats (the affine matrix), the last % two are a displacement vector. Once again, force evaluation to allow for % caching. @@ -2888,7 +2888,7 @@ % \end{macrocode} % \end{macro} % -% \begin{macro}[int]{\@@_draw_hbox:Nnnnnnn} +% \begin{macro}{\@@_draw_hbox:Nnnnnnn} % No special savings can be made here: simply displace the box inside % a scope. As there is nothing to re-box, just make the box passed of % zero size. |