Latex學習筆記(六)——自定義Latex模板
前言:
對於一個給定的模板,自己做了修改,用於日常工作寫報告使用(主要去除了封面和摘要部分),包含兩個檔案:(1) cls 檔案裡面定義好了常用的格式和環境;(2) tex 檔案裡面是我們文件內容的原始碼。當然,大家也可以根據自己的需要進行更改。
一、cls 檔案
cls 檔案裡面定義好了常用的格式和環境,如下所示:
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
\newif\[email protected]@bwprint\@[email protected]
\newif\[email protected] @preface\@[email protected]
\newcommand\[email protected]@keywords{}
\newcommand*\[email protected]@tihao{}
\newcommand*\[email protected]@baominghao{}
\newcommand*\[email protected]@schoolname{}
\newcommand*\[email protected]@membera{}
\newcommand*\[email protected]@memberb{}
\newcommand*\ [email protected]@memberc{}
\newcommand*\[email protected]@supervisor{}
\newcommand*\[email protected]@yearinput{}
\newcommand*\[email protected]@monthinput{}
\newcommand*\[email protected]@dayinput{}
\DeclareOption{colorprint}{\@[email protected]}
\DeclareOption{bwprint}{\@ [email protected]}
\DeclareOption{withoutpreface}{\@[email protected]}
\DeclareOption*{\PassOptionsToClass{\CurrentOption}{ctexart}}
\ExecuteOptions{colorprint}
\ProcessOptions\relax
\LoadClass[a4paper,cs4size]{ctexart}
\RequirePackage{ifxetex}
\RequireXeTeX
\ifxetex\else
\ClassError{mcmthesis}{You must use the `xelatex' driver\MessageBreak Please choose `xelatex'}{%
Just choose `xelatex', no `pdflatex' or `latex' and so on.}
\fi
%---------------------匯入必要的巨集包----------------------------------------
% 數學巨集包
\RequirePackage{amsmath}
\RequirePackage{amsfonts}
\RequirePackage{amssymb}
\RequirePackage{bm}
% 設定顏色
\RequirePackage{xcolor}
% 插入圖片
\RequirePackage{graphicx}
% 表格
\RequirePackage{tabularx,array}
%% 長表格
\RequirePackage{longtable}
%% booktabs 提供了\toprule 等命令.
\RequirePackage{booktabs}
%% multirow 支援在表格中跨行
\RequirePackage{multirow}
%% 調整間隔, 讓表格更好看些
\RequirePackage{bigstrut}
%% 在跨行表格中輸入定界符
\RequirePackage{bigdelim}
% 保護脆落命令
\RequirePackage{cprotect}
% 首行縮排
\RequirePackage{indentfirst}
% 設定浮動體的標題
\RequirePackage{caption}
% 定製列表環境
\RequirePackage{enumitem}
% 下劃線
\RequirePackage{ulem}
% 尺寸計算
\RequirePackage{calc}
\RequirePackage{titletoc,url}
%參考文獻
\RequirePackage[numbers]{natbib}
\setlength{\bibsep}{0pt plus 0.3ex}
\RequirePackage{etoolbox}
\AtBeginEnvironment{thebibliography}{%
\phantomsection
\addcontentsline{toc}{section}{\refname}
}
% 超連結 hyperref 的設定
\RequirePackage{hyperref}
%---------------------匯入必要的巨集包----------------------------------------
%---------------設定latex中插入的程式程式碼格式----------------------------------------
%匯入listings巨集包
\RequirePackage{listings}
%先自定義三種顏色
\definecolor{dkgreen}{rgb}{0,0.6,0}
\definecolor{gray}{rgb}{0.5,0.5,0.5}
\definecolor{mauve}{rgb}{0.58,0,0.82}
%設定lstset環境
\lstset{
frame=tb,
aboveskip=3mm,
belowskip=3mm,
showstringspaces=false,
columns=flexible,
framerule=1pt,
rulecolor=\color{gray!35},
backgroundcolor=\color{gray!5},
basicstyle={\small\ttfamily},
numbers=left,
numberstyle=\tiny\color{gray},
keywordstyle=\color{blue},
commentstyle=\color{dkgreen},
stringstyle=\color{mauve},
breaklines=true,
breakatwhitespace=true,
tabsize=3,
}
%---------------設定latex中插入的程式程式碼格式---------------------------------------
%-----------------------設定頁面佈局-------------------------------------
% 匯入頁面佈局的巨集包
\RequirePackage{geometry}
\geometry{top=30.0mm,bottom=25.0mm,left=31.7mm,right=31.7mm,headsep=8mm}
% 利用巨集包 geometry設定上、下、左、右的頁邊距以及標題和正文之間的間距
\renewcommand*{\baselinestretch}{1.38}
% 將行間距調整為1.38倍行距
%-----------------------設定頁面佈局-------------------------------------
%----------------------設定首行縮排------------------------------
% 匯入首行縮排用的巨集包
\RequirePackage{indentfirst}
% 每行縮排兩個漢字
\setlength{\parindent}{2em}
%----------------------設定首行縮排------------------------------
%----------------------設定文章字型------------------------------
% 設定英文字型
\setmainfont{Times New Roman} %襯線字型
\setmonofont{Courier New} %無襯線字型
\setsansfont{Arial} %等寬字型,一般是印表機字型(中文都是等寬的)
% 設定中文字型
\setCJKmainfont[AutoFakeBold = {2.15},ItalicFont={[simkai.ttf]}]{SimSun}
\setCJKfamilyfont{xw}{STXinwei}
\ifx\lishu\undefined%
\setCJKfamilyfont{zhli}{LiSu}
\newcommand*{\lishu}{\CJKfamily{zhli}}
\else
\fi
\newcommand*{\xinwei}{\CJKfamily{xw}}
%\newcommand*{\lishu}{\CJKfamily{zhli}}
%----------------------設定文章字型------------------------------
%------------------------浮動環境設定-----------------------------------------------------------
% 下面給出的命令用來控制一頁中有多大比例的區域可用來放置浮動物件
% (這裡的比例是指浮動物件的高度除以正文高度\textheight)。
% 前面三個命令只作用於文字頁,而最後一個命令只作用於浮動頁。這些命令的值可以用 \renewcommand 來修改。
% (1) \textfraction:頁面中必須用來排放文字的最小比例。預設值為 0.2,即要求每頁的文字至少佔據 20%。
% 而這通常不是我們想要的, 我們將這個要求降低到 5%。
% (2) \topfraction:頁面頂部可以用來放置浮動物件的高度與整個頁面高度的最大比例。預設值為 0.7,即
% 放置在頁頂部的浮動物件所佔的高度不得超過整個頁面高度 70%。
% (3) \bottomfraction: 頁面底部可以用來放置浮動物件的高度與整個頁面高度的最大比例。預設值為 0.3。
% 有時如果多個浮動環境連續放在一起, latex也會將它們分在幾個不同頁,即使它們可在同一頁放得下。
% 我們可以通過修改 \topfraction 和 \bottomfraction 分別設定頂端和底端的浮動環境的最大比例。
% (4) \floatpagefraction: 浮動頁中必須由浮動物件佔用的最小比例。因此在一浮動頁中空白所佔的比例
% 不會超過 1 - \floatpagefraction。預設值為 0.5。
% 有時 LaTeX 會把一個浮動環境單獨放在一頁,我們通過設定要求這個環境至少要佔據 85% 才能單獨放在一頁。
\renewcommand*{\textfraction}{0.05}
\renewcommand*{\topfraction}{0.9}
\renewcommand*{\bottomfraction}{0.8}
\renewcommand*{\floatpagefraction}{0.85}
%------------------------浮動環境設定-----------------------------------------------------------
%------------------插圖、表格以及列表環境設定---------------------------------------------------
% 關於圖片巨集包graphicx,如果圖片沒有指定字尾, 依次按下列順序搜尋
\DeclareGraphicsExtensions{.pdf,.eps,.jpg,.png}
% 設定圖表搜尋路徑, 可以給圖表資料夾取如下名字
\graphicspath{{figures/}{figure/}{pictures/}{picture/}{pic/}{pics/}{image/}{images/}}
% 宣告標題的字型、字號
\DeclareCaptionFont{song}{\songti}
\DeclareCaptionFont{minusfour}{\zihao{-4}}
% 如果文章中有section,那麼插圖示題標籤將是1.1, 1.2, 2.1等。
% 我們可以如下設定,該命令指定了一個將更改的標籤(如: \thefigure )以及希望顯示的標籤
% 型別(如:\arabic{figure} ), 也就是說要將插圖的序列號顯示為阿拉伯數字,如1, 2, 3等。
\renewcommand{\thefigure}{\thesection.\arabic{figure}}
% 可以使用 \captionsetup 設定標題樣式,這樣後面所有的標題樣式都是根據 \captionsetup 重新設定的,
% 即 \captionsetup[FLOAT_TYPE]{OPTIONS}
% 其中可選引數FLOAT_TYPE 可以是table、subtable、figure、subfigure等。
\captionsetup[figure]{
format=hang, % 標題從第二行開始都有縮排, 應該和 justification=raggedright 的效果一樣.
labelsep=quad, % 分隔符是一個空格,指標題名稱和序號直接的空隙
font={song,minusfour,bf}, % 將fugure環境中的字型設定為: 宋體小四
position=bottom % position=bottom, 不代表標題放在下面, 標題仍放在你放\caption的位置
}
% 表格環境設定
\captionsetup[table]{%
format=hang, % 標題從第二行開始都有縮排, 應該和 justification=raggedright 的效果一樣.
labelsep=quad, % 分隔符是一個空格
font={song,minusfour,bf}, % 表的字型, 宋體小四
position=top % position=bottom, 不代表標題放在下面, 標題仍放在你放\caption的位置.
}
% 列表環境設定
% 列表就是將所要表達的內容分為若干個條目並按一定的順序排列,達到簡明、直觀的效果。在論文的寫作中會經常使用到列表。
% LaTeX 中常見的列表環境有 enumerate、itemize 和 description。這三種列表環境的主要區別是列表項標籤的不同。
% enumerate 是有序的列表; itemize 以圓點作為標籤;description 是解說列表,可以指定標籤。
\setlist{%
topsep=0.3em, % 列表頂端的垂直空白
partopsep=0pt, % 列表環境前面緊接著一個空白行時其頂端的額外垂直空白
itemsep=0ex plus 0.1ex, % 列表項之間的額外垂直空白
parsep=0pt, % 列表項內的段落之間的垂直空白
leftmargin=1.5em, % 環境的左邊界和列表之間的水平距離
rightmargin=0em, % 環境的右邊界和列表之間的水平距離
labelsep=0.5em, % 包含標籤的盒子與列表項的第一行文字之間的間隔
labelwidth=2em % 包含標籤的盒子的正常寬度;若實際寬度更寬,則使用實際寬度。
}
%------------------------插圖、表格以及列表環境設定------------------------------------------
%------------------------演算法(虛擬碼)的環境設定----------------------------------------------
\usepackage{algorithm}
\usepackage{algpseudocode}
\usepackage{amsmath}
\floatname{algorithm}{演算法}
\renewcommand{\algorithmicrequire}{\textbf{輸入:}} % Use Input in the format of Algorithm
\renewcommand{\algorithmicensure}{\textbf{輸出:}} % Use Output in the format of Algorithm
%------------------------演算法(虛擬碼)的環境設定----------------------------------------
%----------------------------設定目錄的超連結--------------------------------------------------------
% \AtBeginDocument{%
\hypersetup{%
% % unicode=false, % hyperref 和 xetex 同時使用時不能開啟 Unicode 選項.
hyperfootnotes=true,
hyperindex=true,
colorlinks=true,
bookmarksnumbered=true,
bookmarksopen=true,
bookmarksopenlevel=0,
allcolors=black,
breaklinks=true}%
% }
% \[email protected]@bwprint
% \AtBeginDocument{\hypersetup{hidelinks}}
% \else\relax\fi
\def\UrlAlphabet{%
\do\a\do\b\do\c\do\d\do\e\do\f\do\g\do\h\do\i\do\j%
\do\k\do\l\do\m\do\n\do\o\do\p\do\q\do\r\do\s\do\t%
\do\u\do\v\do\w\do\x\do\y\do\z\do\A\do\B\do\C\do\D%
\do\E\do\F\do\G\do\H\do\I\do\J\do\K\do\L\do\M\do\N%
\do\O\do\P\do\Q\do\R\do\S\do\T\do\U\do\V\do\W\do\X%
\do\Y\do\Z}
\def\UrlDigits{\do\1\do\2\do\3\do\4\do\5\do\6\do\7\do\8\do\9\do\0}
\[email protected]@macro{\UrlBreaks}{\UrlOrds}
\[email protected]@macro{\UrlBreaks}{\UrlAlphabet}
\[email protected]@macro{\UrlBreaks}{\UrlDigits}
%----------------------------設定目錄的超連結--------------------------------------------------------
%--------------------------------中文標題格式設定-----------------------------------------
% 通過 setcounter 命令來控制目錄深度,如顯示三級目錄
\setcounter{secnumdepth}{3}
\def\@seccntformat#1{\csname the#1\endcsname\ \ }
% 更改節、子節等的標題前序號的格式
\renewcommand\thesection{\arabic{section}.}
\renewcommand\thesubsection{\arabic{section}\thinspace.\thinspace\arabic{subsection}}
\renewcommand\thesubsubsection{\thesubsection\thinspace.\thinspace\arabic{subsubsection}}
% 節標題格式, 居中,字型採用 \normalfont,大小採用 \normalsize
\renewcommand\section{\@startsection{section}{1}{\[email protected]}%
{2.5ex \@plus -1ex \@minus -.2ex}%
{2.3ex \@plus.2ex}%
{\bfseries\centering\zihao{4}\heiti}}
\renewcommand\subsection{\@startsection{subsection}{2}{\[email protected]}%
{1.25ex\@plus -1ex \@minus -.2ex}%
{1.25ex \@plus .2ex}%
{\normalfont\normalsize\bfseries}}
\renewcommand\subsubsection{\@startsection{subsubsection}{3}{\[email protected]}%
{1.25ex\@plus -1ex \@minus -.2ex}%
{1.2ex \@plus .2ex}%
{\normalfont\normalsize\bfseries}}
\renewcommand\paragraph{\@startsection{paragraph}{4}{\[email protected]}%
{3.25ex \@plus1ex \@minus.2ex}%
{-1em}%
{\normalfont\normalsize\bfseries}}
\renewcommand\subparagraph{\@startsection{subparagraph}{5}{\parindent}%
{3.25ex \@plus1ex \@minus .2ex}%
{-1em}%
{\normalfont\normalsize\bfseries}}
%-------------------------------中文標題格式設定--------------------------------------
%----------------------------以中文重新命名數學定理相關的常量---------------------------
% 數學環境, 定理等設定
\newtheorem{definition}{\[email protected]@definition}
\newtheorem{theorem}{\[email protected]@theorem}
\newtheorem{lemma}{\[email protected]@lemma}
\newtheorem{corollary}{\[email protected]@corollary}
\newtheorem{assumption}{\[email protected]@assumption}
\newtheorem{conjecture}{\[email protected]@conjecture}
\newtheorem{axiom}{\[email protected]@axiom}
\newtheorem{principle}{\[email protected]@principle}
\newtheorem{problem}{\[email protected]@problem}
\newtheorem{example}{\[email protected]@example}
\newtheorem{proof}{\[email protected]@proof}
\newtheorem{solution}{\[email protected]@solution}
%數學定理相關的常量
\newcommand*{\[email protected]@definition}{定義}
\newcommand*{\[email protected]@theorem}{定理}
\newcommand*{\[email protected]@lemma}{引理}
\newcommand*{\[email protected]@corollary}{推論}
\newcommand*{\[email protected]@assumption}{假設}
\newcommand*{\[email protected]@conjecture}{猜想}
\newcommand*{\[email protected]@axiom}{公理}
\newcommand*{\[email protected]@principle}{定律}
\newcommand*{\[email protected]@problem}{問題}
\newcommand*{\[email protected]@example}{例}
\newcommand*{\[email protected]@proof}{證明}
\newcommand*{\[email protected]@solution}{解}
%----------------------------以中文重新命名數學定理相關的常量-----------------------------------
%----------------------------設定目錄格式-----------------------------------------------
% 節的目錄格式
\titlecontents{section}[0pt]{\vspace{2mm}\bfseries\heiti}
{\thecontentslabel\hskip.5em}{}{\titlerule*[0.5pc]{.}\contentspage}
% 小節的目錄格式
\titlecontents{subsection}[30pt]{\songti}
{\thecontentslabel\hskip.5em}{}{\titlerule*[0.5pc]{.}\contentspage}
\titlecontents{subsubsection}[55pt]{\songti}
{\thecontentslabel\hskip.5em}{}{\titlerule*[0.5pc]{.}\contentspage}
% itletoc 巨集包用於自定義目錄樣式,其中最常用的是下面這條目錄樣式命令。
% \titlecontents 命令來設定不同級別目錄項的格式:
% \titlecontents{章節名稱}[左端距離]{標題字型、與上文間距等}{標題序號}{空}{引導符和頁碼}[與下文間距]
% (1) 其中0pt([左端距離])是目錄項到版芯左邊界的距離;\vspace{2mm}表示與上文留出一定的垂直距離,該距離為2mm;
% \bfseries\heiti 把整條目錄項的字型設為黑體。
% (2) 後面一項是設定目錄項的頭部,並在其後留出一個漢字寬度的距離。緊跟的是設定目錄項主體的格式,
% 這裡因為跟目錄項頭部相同而空置。
% (3) 再後面是設定填充命令和頁碼。這裡用\titlerule*命令畫出填充點,
% 這裡是把垂直居中的實心圓點作為填充符號(習慣上中文不採用居下的填充點),
% 並以10pt為包含一個填充符號的水平盒子的寬度,即這個寬度越小,填充點越緊密; 填充點後加上頁碼 \contentspage。
% 注意:用 titlesec 巨集包可以在標題中加一些填充物,比如:一條水平線、一排連續或不連續的點等等。用以下三個命令來實現:
% (1) \titleline[<align>]{<horizontalmaterial>}
% 其中中 <align> 表示對齊方式,有三個引數 l、c、r,分別代表左對齊、居中對齊、右對齊;
% <horizontal material> 是要填充的材料,可以是文字、符號等等。
% (2) \titlerule [<height>]:表示在標題中新增一條水平線,<height> 是線的寬度。
% (3) \titlerule ∗[<width >]{<text>}:用於在標題中新增一條填充物,<width> 為填充物的寬度,<text> 為填充的文字或符號。
%----------------------------設定目錄格式-----------------------------------------------
\pagestyle{plain}
\endinput
二、tex 檔案
tex 檔案中的原始碼如下所示:
\documentclass[bwprint]{test}
\title{全國研究生數學建模競賽論文標題}
\author{張三}
\begin{document}
\maketitle
\newpage
\tableofcontents
\pagestyle{plain}
\newpage
\section{問題重述}
\subsection{引言}
創意平板摺疊桌注重於表達木製品的優雅和設計師所想要強調的自動化與功能性。為了增大有效使用面積。設計師以長方形木板的寬為直徑截取了一個圓形作為桌面,又將木板剩餘的面積切割成了若干個長短不一的木條,每根木條的長度為平板寬到圓上一點的距離,分別用兩根鋼筋貫穿兩側的木條,使用者只需提起木板的兩側,便可以在重力的作用下達到自動升起的效果,相互對稱的木條宛如下垂的桌布,精密的製作工藝配以質樸的木材,讓這件工藝品看起來就像是工業革命時期的機器。
\subsection{問題的提出}
\subsubsection{問題的提出內容一}
圍繞創意平板摺疊桌的動態變化過程、設計加工引數,本文依次提出如下問題:
1)給定長方形平板尺寸 ($120 cm \times 50 cm \times 3 cm$),每根木條寬度(2.5 cm),連線桌腿木條的鋼筋的位置,摺疊後桌子的高度(53 cm)。要求建立模型描述此摺疊桌的動態變化過程,並在此基礎上給出此摺疊桌的設計加工引數和桌腳邊緣線的數學描述。
(2)摺疊桌的設計應做到產品穩固性好、加工方便、用材最少。對於任意給定的摺疊桌高度和圓形桌面直徑的設計要求,討論長方形平板材料和摺疊桌的最優設計加工引數,例如,平板尺寸、鋼筋位置、開槽長度等。對於桌高70 cm,桌面直徑80 cm的情形,確定最優設計加工引數。
(3)給出軟體設計的數學模型,可以根據客戶任意設定的摺疊桌高度、桌面邊緣線的形狀大小和桌腳邊緣線的大致形狀,給出所需平板材料的形狀尺寸和切實可行的最優設計加工引數,使得生產的摺疊桌儘可能接近客戶所期望的形狀,並根據所建立的模型給出幾個設計的創意平板摺疊桌。要求給出相應的設計加工引數,畫出至少8張動態變化過程的示意圖。
\section{模型的假設}
\begin{itemize}
\item 忽略實際加工誤差對設計的影響;
\item 木條與圓桌面之間的交接處縫隙較小,可忽略;
\item 鋼筋強度足夠大,不彎曲;
\item 假設地面平整。
\end{itemize}
\section{符號說明}
\begin{tabular}{cc}
\hline
\makebox[0.4\textwidth][c]{符號} & \makebox[0.5\textwidth][c]{意義} \\ \hline
D & 木條寬度(cm) \\ \hline
L & 木板長度(cm) \\ \hline
W & 木板寬度(cm) \\ \hline
N & 第n根木條 \\ \hline
T & 木條根數 \\ \hline
H & 桌子高度(cm) \\ \hline
R & 桌子半徑(cm) \\ \hline
R & 桌子直徑(cm) \\ \hline
\end{tabular}
\section{問題分析}
\subsection{問題一分析}
題目要求建立模型描述摺疊桌的動態變化圖,由於在摺疊時用力大小的不同,我們不能描述在某一時刻摺疊桌的具體形態,但我們可以用每根木條的角度變化來描述摺疊桌的動態變化。首先,我們知道摺疊桌前後左右對稱,我們可以運用幾何知識求出四分之一木條的角度變化。最後,根據初始時刻和最終形態兩種狀態求出桌腿木條開槽的長度。
題目要求建立模型描述摺疊桌的動態變化圖,由於在摺疊時用力大小的不同,我們不能描述在某一時刻摺疊桌的具體形態,但我們可以用每根木條的角度變化來描述摺疊桌的動態變化。首先,我們知道摺疊桌前後左右對稱,我們可以運用幾何知識求出四分之一木條的角度變化。最後,根據初始時刻和最終形態兩種狀態求出桌腿木條開槽的長度。
\begin{algorithm}[H]
\caption{BFS(G,s)}
\begin{algorithmic}[1]
\For{each vertex $u \in V[G] - \{ s\} $}
\State $color[u]=WHITE$
\State $d[u] = \infty $
\State $\pi [u] = NIL$
\EndFor
\State $color[s]=GRAY$
\State $d[s] = 0 $
\State $\pi [s] = NIL$
\State $Q = \emptyset $
\State $ENQUEUE(Q,s)$
\While{$Q \ne \emptyset $ }
\State $u = DEQUEUE(Q)$
\For{each $v \in Adj[u]$}
\If{$color[v]=WHITE$}
\State $color[v=GRAY]$
\State $d[v]=d[u]+1$
\State $\pi[v]=u$
\State ENQUEUE(Q,V)
\EndIf
\EndFor
\EndWhile
\end{algorithmic}
\end{algorithm}
\subsection{問題二分析}
題目要求從摺疊桌的穩固性好、加工方便、用材最少三個角度,確定設計加工引數。我們可以從應力、支撐面積考慮穩固性,從開槽長度考慮加工方便,從木板長度考慮用材最少。而它們之間又是相互制約,我們需要確定最優設計加工引數,可以建立非線性規劃模型,用lingo軟體來求解最優設計加工引數(平板尺寸、鋼筋位置、開槽長度等),這裡以合力的方向(斜向上)與最長木條(桌腿)的夾角方向最小為目標函式,以木條所承受應力小於木條的許用應力、支撐面積大於桌面面積、木條的開槽長度小於木條本身長為約束條件。
\subsection{問題三分析}
題目要求製作軟體的意思就是客戶給定摺疊桌高度、桌面邊緣線的形狀大小和桌腳邊緣線的大致形狀,將這些資訊輸入程式就得到客戶想要的桌子。我們在求解最優設計加工引數時,自行給定桌面邊緣線形狀(橢圓、相交圓等),桌腳邊緣線形狀,摺疊桌高度,應用第二問的非線性規劃模型,用MATLAB軟體繪製摺疊桌截面圖,得到自己設計的創意平板摺疊桌。
\end{document}
三、編譯
對 tex 檔案進行編譯後的結果如下所示:
最後,附上一個中國科學院大學的碩士論文模板。我們可以根據這個論文模板來定製,基本可以滿足實驗報告、技術報告、大作業的需求,百試不爽。下載連結
相關推薦
Latex學習筆記(六)——自定義Latex模板
前言: 對於一個給定的模板,自己做了修改,用於日常工作寫報告使用(主要去除了封面和摘要部分),包含兩個檔案:(1) cls 檔案裡面定義好了常用的格式和環境;(2) tex 檔案裡面是我們文件內容的原始碼。當然,大家也可以根據自己的需要進行更改。 一、
AngularJs學習筆記(4)——自定義指令
ref 告訴 ack 生命周期 .com bsp ctrl 參數變量 ng- 對指令的第一印象:它是一個自定義標簽! 先來看一個簡單的指令: <!doctype html> <html ng-app="myApp"> <head>
Ehcache學習筆記(2)--自定義ehcache工具類
二:自定義EhcacheUtils 1、CacheUtils package cn.kexq.commons.utils; import net.sf.ehcache.Cache; import net.sf.ehcache.CacheManager; import net.sf.eh
shiro學習筆記(3)--自定義realm、授權
一:自定義Realm 1、繼承AuthorizingRealm(因為該類中有認證、授權的抽象方法,實現簡單) public class MyRealm1 extends AuthorizingRealm{ @Override public String getName(
Vue:學習筆記(七)-自定義指令
提醒 原帖完整收藏於IT老兵驛站,並會不斷更新。 前言 前面總結到了元件,對混入也進行了研究,不過感覺沒有啥需要總結的,就先總結指令吧,參考這裡,記錄筆記。 正文 簡介 全域性註冊 // 註冊一個全域性自定義指令 `v-focus` Vue.di
springmvc學習筆記(26)——自定義型別轉換器
資料繫結流程 使用springmvc框架有諸多好處,其中較為突出的就是它的資料繫結。 當我們的前端傳過來一個表單的時候,我們只需要使用一個類物件(如Student物件)就接收,springmvc將幫我們把屬性一一對應的填充進去。這就是資料繫結。 資料繫結過程中,springmvc幫我們把前端
springmvc學習筆記(28)——自定義攔截器
1. 自定義攔截器 所謂的攔截器,就是用來攔截請求,因此我們可以對使用者發來的請求做處理。 寫一個類,實現攔截器的介面 import javax.servlet.http.HttpServletRequest; import javax.servlet.http.H
類的學習筆記(3)——自定義裝飾器及裝飾器的理解
例一: 實現多加100 def fun1(x): def fun2(y): return x(y)+100 return fun2 #裝飾器 def ff(y): return y*y
Maven學習筆記(一)——自定義maven變數以及maven內建常量
在建立Maven工程後,外掛配置中通常會用到一些Maven變數,因此需要找個地方對這些變數進行統一定義,下面介紹如何定義自定義變數。 在根節點project下增加properties節點,所有自定義變數均可以定義在此節點內,如下所示: <!-- 全域性屬性配置 --
Shader學習筆記(三)自定義光照模型,經典光照模型Lambert與HalfLambert
自定義光照模型 #pragma surface surfaceFaction lightModel surfaceFaction:著色器程式碼的方法的名字 lightModel:光照模型的名稱 自
攜程 Apollo 配置中心 | 學習筆記(三) 自定義Spring Boot專案通過配置中心啟動專案
一、前言二、專案搭建 2.1 建立Spring Boot專案 因為專案用的是Eureka作為服務註冊與發現,因此這裡我加入了Eureka Client的依賴pom.xml檔案 <dependency> <grou
pytorch學習筆記(六):自定義Datasets
什麼是Datasets: 在輸入流水線中,我們看到準備資料的程式碼是這麼寫的data = datasets.CIFAR10("./data/", transform=transform, train=
MySQL學習筆記(六)—— MySQL自連接
概念 cor 子查詢 ron 表操作 例子 質量 _id order by 有的時候我們需要對同一表中的數據進行多次檢索,這個時候我們可以使用之前學習過的子查詢,先查詢出需要的數據,再進行一次檢索。 例如:一張products表,有產品id,供應商id(vend_
學習筆記(六)
tde 監聽 文本 ren 頁面 define www 顯示 back BUG集錦:1. storage on 事件監聽必須兩個頁面同時打開,且處於服務器訪問狀態2. submit 和 button 不能套在 a 裏面,否則 submit 事件將消失3. 新建 Object
機器學習筆記(六)邏輯回歸
邏輯回歸 alt 表示 結果 不變 改變 最小值 nbsp 可能性 一、邏輯回歸問題 二分類的問題為是否的問題,由算出的分數值,經過sign函數輸出的是(+1,-1),想要輸出的結果為一個幾率值,則需要改變函數模型 ,其中,, 則邏輯回歸的函數為 二、邏輯回歸錯誤評價 線性
javascript學習筆記(二):定義函數、調用函數、參數、返回值、局部和全局變量
兩個 cnblogs bsp 結果 value ava ase com 調用 定義函數、調用函數、參數、返回值 關鍵字function定義函數,格式如下: function 函數名(){ 函數體 } 調用函數、參數、返回值的規則和c語言規則類似。 1 <!DOC
jquery學習筆記(六)插件的編寫
function jquery 命名方式 一、對jQuery對象的擴展;(function($){ $.fn.extend( { fun1:abc,fun2:1bc … } )})(jQuery)二、對jQuery本身的擴展,相當於靜態方法;(function($){ $
Python學習筆記(六)map/reduce
code image 但是 oat tools col .com 參數 map() 摘抄:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/00143178
Unity3D之Mecanim動畫系統學習筆記(六):使用腳本控制動畫
ont nim 復制代碼 info rip esc enter machine images 控制人物動畫播放 這裏我重新弄了一個簡單的場景和新的Animator Controller來作為示例。 下面先看看Animator Controller的配置: 人物在站
如鵬網學習筆記(六)ADO.Net基礎
direct 問題 .... 數據庫連接 sta adapter query 寫到 數據類型 ADO.Net基礎 一、ADO.Net簡介 1,程序要通過SQL語句自動化的操作數據庫,必須要用一個類庫, 類庫要提供execute("insert into ...