必经之路

抄一部心经,点一盏心灯

用户工具

站点工具


jsb:latex:shufazuopinzhi

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
jsb:latex:shufazuopinzhi [2024/12/29 11:13] – [设计步骤:] lanshizijsb:latex:shufazuopinzhi [2024/12/29 22:02] (当前版本) – [总结和其他] lanshizi
行 1: 行 1:
-## 设计一张书法作品纸+## 设计一张书法作品纸----保姆级教程
  
-我要设计的是这样的一张书法作品纸:+我要设计的是这样的一张书法A4作品纸:
  
 {{:undefined:shufazuopin1.jpg?400|}} {{:undefined:shufazuopin1.jpg?400|}}
-### 设计步骤: 
  
-#### 1 设置页面尺寸+### 1 设置页面尺寸
  
 可以设置页面大小,设置页边距,我设置都是0cm。 可以设置页面大小,设置页边距,我设置都是0cm。
行 15: 行 14:
 \usepackage[top=0cm, bottom=0cm, left=0cm, right=0cm]{geometry} \usepackage[top=0cm, bottom=0cm, left=0cm, right=0cm]{geometry}
 ``` ```
-#### 2 找标准坐标点。+### 2 找标准坐标点。
  
 这个图比较简单,只用找到页面的中线就好,也就是中心的 X 坐标。用A4纸的21cm*29.7cm ,如果直接21cm除以 2 好像不行。 这个图比较简单,只用找到页面的中线就好,也就是中心的 X 坐标。用A4纸的21cm*29.7cm ,如果直接21cm除以 2 好像不行。
行 32: 行 31:
  
  
-#### 3 定义颜色:+### 3 定义颜色:
  
 需要两个颜色,一个是左右长方块的颜色,一个方格的颜色: 需要两个颜色,一个是左右长方块的颜色,一个方格的颜色:
行 41: 行 40:
 ``` ```
  
-#### 4 两个背景图:+### 4 两个背景图:
  
 我是用屏幕截图后,转化成 jpg 文件的。 我是用屏幕截图后,转化成 jpg 文件的。
行 51: 行 50:
     \def\bgmid{images/bgmid.jpg}     \def\bgmid{images/bgmid.jpg}
 ``` ```
 +### 5 中间的绿色:
  
-#### 5 中间的绿色:+基本原理是,把那张背景图片bggezi排列在页面中间的长方形中。
  
 要注意坐标的规律: 要注意坐标的规律:
行 69: 行 69:
     \foreach \y in {-1,0, 1, ..., 15} { % 根据需要调整数字     \foreach \y in {-1,0, 1, ..., 15} { % 根据需要调整数字
         \node[anchor=north west] at (\mymid - \imgwd, -\y*2) {         \node[anchor=north west] at (\mymid - \imgwd, -\y*2) {
-                \includegraphics[width=\imgwd cm]{\bg2}+                \includegraphics[width=\imgwd cm]{\bggezi}
             };             };
         \node[anchor=north west] at (\mymid, -\y*2) {         \node[anchor=north west] at (\mymid, -\y*2) {
-                \includegraphics[width=\imgwd cm]{\bg2}+                \includegraphics[width=\imgwd cm]{\bggezi}
             };             };
     }     }
行 80: 行 80:
 {{:jsb:latex:step1.jpg?400|}} {{:jsb:latex:step1.jpg?400|}}
  
-+ 
 +### 6 画格子 
 +这一步最简单了,代码如下: 
 +```latex 
 +    %中间画格子 
 +    \pgfmathparse{-\myht +1}  
 +    \let\btstart\pgfmathresult  %设置格子和页面底部的距离 1cm,那 Y 坐标就是-\myht + 1 
 +    \pgfmathparse{\mymid -\gezi*4.5} 
 +    \let\leftstart\pgfmathresult %设置格子左侧的 起始坐标中心线减去4 个半格子长度。 X = \mymid -1.5*4.5 
 +    \foreach \x in {0, 1, ..., 8} { % 9 个横向方格 
 +        \foreach \y in {0, 1, ..., 14} { %  15 个纵向方格 
 +            \draw[colorgezi, line width=1pt] (\leftstart+\x*\gezi, \btstart + \y*\gezi) rectangle ++(\gezi, \gezi); 
 +        } 
 +    } 
 +     
 +``` 
 + 
 +现在效果如下: 
 + 
 +{{:jsb:latex:step2.jpg?400|}} 
 + 
 +### 7 画两侧方块 
 +这一步也很简单,左右画方块有些冗余没关系,确保页面上都被覆盖。 
 + 
 +```latex 
 +    \pgfmathparse{\mymid -\gezi*4.5 -0.5} 
 +    \let\leftrect\pgfmathresult  %定义左侧方块的最右 X坐标 
 +    \pgfmathparse{\mymid +\gezi*4.5+0.5} 
 +    \let\rightrect\pgfmathresult  %定义右侧方块最左 X 坐标。 
 +    \fill[coloredge] (\leftrect, 1) rectangle (\mymid-15, -\myht); 
 +    \fill[coloredge] (\rightrect, 1) rectangle (\mymid+15,  
 +``` 
 + 
 +效果如图: 
 + 
 +{{:jsb:latex:step3.jpg?400|}} 
 + 
 +
 +### 8 增加长条装饰 
 + 
 +这一步稍微遇到了些困难,因为起始位置好像不太准,不过问题不大,所见即所得,多调试几次,手工调整就好了 
 + 
 +```latex 
 +    %左右装饰图片,此处的尺寸好像不太明白,根据效果手工调整。 
 +    \newcommand{\geziwd}{0.3} %装饰图片的宽度 
 +    \foreach \y in {-1,0, 1, ..., 10} { % 根据需要调整数字 
 +        \node[anchor=north east] at (\leftrect+\geziwd, -\y*3) { 
 +                \includegraphics[width=\geziwd cm]{\bgmid} 
 +            }; %north east 表示图片的坐标右上对齐 
 +        \node[anchor=north west] at (\rightrect-\geziwd, -\y*3) { 
 +                \includegraphics[width=\geziwd cm]{\bgmid} 
 +            }; %north west 表示图片的坐标左上对齐 
 +    } 
 + 
 +``` 
 +效果图: 
 + 
 +{{:undefined:shufazuopin1.jpg?400|}} 
 +### 总和其他 
 + 
 +1. 应该还可以再简化代码,特别是用`\node`填充图片,我也不是很熟悉,只是问了 AI,然后修改的。 
 +1. 有个优化想法:可以第一步,把整个背景设置成浅绿色,然后再把中间的绿色方格画好就可以覆盖了,不用再画左右的方块了!这样的话,效率高了很多,也不容易出错。 
 +1. 这个作品纸,只有左右对称,不需要 Y 轴的中线,如果上下对称,可以寻找 Y 的中线,类似设置 mymid一样。 
 +1. 线条颜色和背景颜色,不那么容易设置。mac 电脑没法看到图片的 RGB 颜色,我用 python 写段代码,直接读取图片颜色的 RGB 值。如果你有其他办法,也可以代替。 
 +1. 代码和图片下载: 
 +{{ :jsb:latex:zuopinzhi.zip |}} 
jsb/latex/shufazuopinzhi.1735442039.txt.gz · 最后更改: 2024/12/29 11:13 由 lanshizi