![带有波浪边缘和阴影的数字卡](https://linux22.com/image/476015/%E5%B8%A6%E6%9C%89%E6%B3%A2%E6%B5%AA%E8%BE%B9%E7%BC%98%E5%92%8C%E9%98%B4%E5%BD%B1%E7%9A%84%E6%95%B0%E5%AD%97%E5%8D%A1.png)
这是我的 mwe,不太好。我想创建一些像附图中那样的东西,简单,这样我就可以制作更大、更小和单独的卡片,这样我就可以更改卡片上的数字,背景中的阴影也很好。
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{shadows.blur}
\usetikzlibrary{shapes.symbols}
\begin{document}
\begin{center}
\begin{tikzpicture}
\node[draw=none,shade, scale=3,
top color=blue!40,
bottom color=blue!5,
rounded corners=6pt,
blur shadow={shadow blur steps=5}
] {\sffamily\bfseries\large 1 };
\node[tape,draw=none,shade, scale=3,
top color=blue!40,
bottom color=blue!5,
rounded corners=1pt,
blur shadow={shadow blur steps=5,shadow blur extra rounding=1.3pt}
] at (5,0){\sffamily\bfseries\large 2};
\node [below] at (-2,0.5) { \huge Jack};
\end{tikzpicture}
\end{center}
\end{document}
答案1
您可以使用star
形状rounded corners
并设置star point ratio
来获得圆形卡片。
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{shapes.geometric, shadows}
\tikzset{
card/.style={
star, star points=4, star point ratio=1.47,
draw, rounded corners, shape border rotate=45, fill=white,
general shadow={fill=gray!20, shadow scale=1.2},
inner sep=0pt, minimum size=7mm, font=\sffamily\bfseries,
yscale=1.4, scale=2
}
}
\newcommand{\card}[2][]{\tikz[baseline, #1]{\node[card]{#2};}}
\begin{document}
\pgfmathsetseed{12}
Jack \foreach \c[count=\n] in {7,3,2,6,9,7} {\card[transform shape, rotate=6-2*\n+3*rand]{\c}\;\;}
\bigskip
Jodie \foreach \c[count=\n] in {4,8,9,0,0,7} {\card[transform shape, rotate=6-2*\n+3*rand]{\c}\;\;}
\bigskip
Scaled \foreach \c[count=\n] in {A,B,C,D,E,F} {\card[transform shape, scale=.7]{\c}\;\;}
\bigskip
Single \card{?}
\end{document}
答案2
这是我能想到的最好的办法,从网站上借了一些东西,但我看不懂,也试过,有人能解释一下并简化一下吗?它确实有效
% !TeX program = xelatex
% !TeX spellcheck = en_GB
\documentclass[12pt,addpoints]{exam}
\usepackage[margin=15mm]{geometry}
\usepackage{tikz}
\usepackage{pifont}
\usepackage{anttor}
\usepackage[normalem]{ulem}
%\renewcommand\ULthickness{4pt}
%\setlength \ULdepth{16pt}
\begin{document}
\pgfmathsetmacro{\cardwidth}{2}
\pgfmathsetmacro{\cardheight}{3}
\pgfmathsetmacro{\stripwidth}{0.6}
\pgfmathsetmacro{\strippadding}{0.1}
\pgfmathsetmacro{\textpadding}{-0.3}
\pgfmathsetmacro{\ruleheight}{0.1}
\newcommand\myfontsize{\fontsize{50pt}{50pt}\selectfont}
杰克和乔迪正在玩纸牌游戏。每位玩家发了 6 张牌。
游戏的目标是通过重新排列手中的牌来创造出最大的数字。
\begin{tikzpicture}
\draw [] (0,0) ;
\node[align=left] at (0,2) { \Large \color{blue} \textbf{Jack's } \\ \large \color{blue} \textbf{Cards } };
\end{tikzpicture}
\begin{tikzpicture}
\draw[rounded corners=0.2cm, very thick,color=blue] (0,0) rectangle (\cardwidth,\cardheight);
\fill[white,rounded corners=0.1cm] (\strippadding,\strippadding) rectangle (\strippadding+\stripwidth,\cardheight-\strippadding);
\node[text width=(\cardwidth-\strippadding-\stripwidth-2*\textpadding-0.3)*1cm,below right, ] at (\strippadding+\stripwidth+\textpadding,\cardheight-\textpadding) {
{ }\\
\vspace{0.9cm}
{ \myfontsize 7 }
\vfill };
\end{tikzpicture}
\begin{tikzpicture}
\draw[rounded corners=0.2cm, very thick,color=blue] (0,0) rectangle (\cardwidth,\cardheight);
\fill[white,rounded corners=0.1cm] (\strippadding,\strippadding) rectangle (\strippadding+\stripwidth,\cardheight-\strippadding);
\node[text width=(\cardwidth-\strippadding-\stripwidth-2*\textpadding-0.3)*1cm,below right] at (\strippadding+\stripwidth+\textpadding,\cardheight-\textpadding) {
{ }\\
\vspace{0.9cm}
{ \myfontsize 3 }
\vfill };
\end{tikzpicture}
\begin{tikzpicture}
\draw[rounded corners=0.2cm, very thick,color=blue] (0,0) rectangle (\cardwidth,\cardheight);
\fill[white,rounded corners=0.1cm] (\strippadding,\strippadding) rectangle (\strippadding+\stripwidth,\cardheight-\strippadding);
\node[text width=(\cardwidth-\strippadding-\stripwidth-2*\textpadding-0.3)*1cm,below right] at (\strippadding+\stripwidth+\textpadding,\cardheight-\textpadding) {
{ }\\
\vspace{0.9cm}
{ \myfontsize 2 }
\vfill };
\end{tikzpicture}
\begin{tikzpicture}
\draw[rounded corners=0.2cm, very thick,color=blue] (0,0) rectangle (\cardwidth,\cardheight);
\fill[white,rounded corners=0.1cm] (\strippadding,\strippadding) rectangle (\strippadding+\stripwidth,\cardheight-\strippadding);
\node[text width=(\cardwidth-\strippadding-\stripwidth-2*\textpadding-0.3)*1cm,below right] at (\strippadding+\stripwidth+\textpadding,\cardheight-\textpadding) {
{ }\\
\vspace{0.9cm}
{ \myfontsize 6 }
\vfill };
\end{tikzpicture}
\begin{tikzpicture}
\draw[rounded corners=0.2cm, very thick,color=blue] (0,0) rectangle (\cardwidth,\cardheight);
\fill[white,rounded corners=0.1cm] (\strippadding,\strippadding) rectangle (\strippadding+\stripwidth,\cardheight-\strippadding);
\node[text width=(\cardwidth-\strippadding-\stripwidth-2*\textpadding-0.3)*1cm,below right] at (\strippadding+\stripwidth+\textpadding,\cardheight-\textpadding) {
{ }\\
\vspace{0.9cm}
{ \myfontsize 9 }
\vfill };
\end{tikzpicture}
\begin{tikzpicture}
\draw[rounded corners=0.2cm, very thick,color=blue] (0,0) rectangle (\cardwidth,\cardheight);
\fill[white,rounded corners=0.1cm] (\strippadding,\strippadding) rectangle (\strippadding+\stripwidth,\cardheight-\strippadding);
\node[text width=(\cardwidth-\strippadding-\stripwidth-2*\textpadding-0.3)*1cm,below right] at (\strippadding+\stripwidth+\textpadding,\cardheight-\textpadding) {
{ }\\
\vspace{0.9cm}
{ \myfontsize 7 }
\vfill };
\end{tikzpicture}
\vspace{0.2cm}
\begin{tikzpicture}
\draw [] (0,0) ;
\node[align=left] at (0,2) { \Large \color{red} \textbf{Jodie's } \\ \large \color{red} \textbf{Cards } };
\end{tikzpicture}
\begin{tikzpicture}
\draw[rounded corners=0.2cm, very thick,color=red] (0,0) rectangle (\cardwidth,\cardheight);
\fill[white,rounded corners=0.1cm] (\strippadding,\strippadding) rectangle (\strippadding+\stripwidth,\cardheight-\strippadding);
\node[text width=(\cardwidth-\strippadding-\stripwidth-2*\textpadding-0.3)*1cm,below right, ] at (\strippadding+\stripwidth+\textpadding,\cardheight-\textpadding) {
{ }\\
\vspace{0.9cm}
{ \myfontsize 4 }
\vfill };
\end{tikzpicture}
\begin{tikzpicture}
\draw[rounded corners=0.2cm, very thick,color=red] (0,0) rectangle (\cardwidth,\cardheight);
\fill[white,rounded corners=0.1cm] (\strippadding,\strippadding) rectangle (\strippadding+\stripwidth,\cardheight-\strippadding);
\node[text width=(\cardwidth-\strippadding-\stripwidth-2*\textpadding-0.3)*1cm,below right] at (\strippadding+\stripwidth+\textpadding,\cardheight-\textpadding) {
{ }\\
\vspace{0.9cm}
{ \myfontsize 8 }
\vfill };
\end{tikzpicture}
\begin{tikzpicture}
\draw[rounded corners=0.2cm, very thick,color=red] (0,0) rectangle (\cardwidth,\cardheight);
\fill[white,rounded corners=0.1cm] (\strippadding,\strippadding) rectangle (\strippadding+\stripwidth,\cardheight-\strippadding);
\node[text width=(\cardwidth-\strippadding-\stripwidth-2*\textpadding-0.3)*1cm,below right] at (\strippadding+\stripwidth+\textpadding,\cardheight-\textpadding) {
{ }\\
\vspace{0.9cm}
{ \myfontsize 9 }
\vfill };
\end{tikzpicture}
\begin{tikzpicture}
\draw[rounded corners=0.2cm, very thick,color=red] (0,0) rectangle (\cardwidth,\cardheight);
\fill[white,rounded corners=0.1cm] (\strippadding,\strippadding) rectangle (\strippadding+\stripwidth,\cardheight-\strippadding);
\node[text width=(\cardwidth-\strippadding-\stripwidth-2*\textpadding-0.3)*1cm,below right] at (\strippadding+\stripwidth+\textpadding,\cardheight-\textpadding) {
{ }\\
\vspace{0.9cm}
{ \myfontsize 0 }
\vfill };
\end{tikzpicture}
\begin{tikzpicture}
\draw[rounded corners=0.2cm, very thick,color=red] (0,0) rectangle (\cardwidth,\cardheight);
\fill[white,rounded corners=0.1cm] (\strippadding,\strippadding) rectangle (\strippadding+\stripwidth,\cardheight-\strippadding);
\node[text width=(\cardwidth-\strippadding-\stripwidth-2*\textpadding-0.3)*1cm,below right] at (\strippadding+\stripwidth+\textpadding,\cardheight-\textpadding) {
{ }\\
\vspace{0.9cm}
{ \myfontsize 0 }
\vfill };
\end{tikzpicture}
\begin{tikzpicture}
\draw[rounded corners=0.2cm, very thick,color=red] (0,0) rectangle (\cardwidth,\cardheight);
\fill[white,rounded corners=0.1cm] (\strippadding,\strippadding) rectangle (\strippadding+\stripwidth,\cardheight-\strippadding);
\node[text width=(\cardwidth-\strippadding-\stripwidth-2*\textpadding-0.3)*1cm,below right] at (\strippadding+\stripwidth+\textpadding,\cardheight-\textpadding) {
{ }\\
\vspace{0.9cm}
{ \myfontsize 7 }
\vfill };
\end{tikzpicture}
\end{document}