[pstricks] 2 pictures (psmatrix) side by side

Denis Girou Denis.Girou at idris.fr
Wed Nov 28 21:20:02 CET 2001

>>>>> "Richard.Sudarmono" == Richard Sudarmono <RiSud at web.de> writes:

    Richard.Sudarmono> Bty .. I know how to make a parallelogram. But how can I use it as a
    Richard.Sudarmono> framebox (as \psovalbox or \psdiabox)?
    Richard.Sudarmono> (Just like the folowing picture..)

    Richard.Sudarmono>       _______________
    Richard.Sudarmono>     /               /
    Richard.Sudarmono>   / Parallelogram /
    Richard.Sudarmono> /_______________/

    Richard.Sudarmono> Maybe you can give me hint, where I could find the example/answer for
    Richard.Sudarmono> my problem.

  This doesn't exist. But this is not too difficult to build adapting the code
of \psframebox.




% Box of a parallelogram form built using the code of \psframebox

% The length used for the parallelogram (3mm by default)
\def\psset at parallelogramsep#1{\pssetlength\psparallelogramsep{#1}}
\psset at parallelogramsep{3mm}

\def\psparallelogrambox{\pst at object{psparallelogrambox}}

\def\psparallelogrambox at i{\pst at makebox\psparallelogrambox at ii}

\def\psparallelogrambox at ii{%
\pst at useboxpar
\pst at dima=\pslinewidth
\advance\pst at dima by \psframesep
\pst at dimc=\wd\pst at hbox\advance\pst at dimc by \pst at dima
\pst at dimb=\dp\pst at hbox\advance\pst at dimb by \pst at dima
\pst at dimd=\ht\pst at hbox\advance\pst at dimd by \pst at dima
\setbox\pst at hbox=\hbox{%
\ifpsboxsep\kern\pst at dima\fi
\begin at ClosedObj
\addto at pscode{%
\psk at cornersize
\pst at number\pst at dima neg
\pst at number\pst at dimb neg
\pst at number\pst at dimc
\pst at number\pst at dimd
% D.G. modification begin - Nov. 28, 2001
%\tx at Frame}%
\pst at number\psparallelogramsep
\tx at Parallelogram}%
% D.G. modification end
\def\pst at linetype{2}%
\end at ClosedObj
\box\pst at hbox
\ifpsboxsep\kern\pst at dima\fi}%
\ifpsboxsep\dp\pst at hbox=\pst at dimb\ht\pst at hbox=\pst at dimd\fi
\leavevmode\box\pst at hbox

% From the Frame and Rect PostScript macros
\pst at def{Parallelogram}<{%
/ParallelogramA {
x1 pgs sub y1 moveto
x1 y2 lineto
x2 pgs add y2 lineto
x2 y1 lineto
x1 pgs sub y1 lineto
closepath} def
/pgs ED
CLW mul
/a ED
3 -1 roll
2 copy gt { exch } if
a sub
/y2 ED
a add
/y1 ED
2 copy gt { exch } if
a sub
/x2 ED
a add
/x1 ED
1 index 0 eq {pop pop ParallelogramA } { OvalFrame } ifelse}>








\psparallelogrambox{Long text}
\psparallelogrambox[parallelogramsep=0.5]{Long text}



More information about the PSTricks mailing list