latex - 在图像周围环绕文本时下边距较大
问题描述
我在这里有这个 LaTeX 代码:
\documentclass{article}
\usepackage{geometry}
\geometry{a4paper, portrait, margin=1in}
\usepackage{graphicx}
\usepackage{wrapfig}
\begin{document}
\section{Klasična rasterizacija}
\begin{wrapfigure}{r}{0.4\textwidth}
\centering
\includegraphics[width=0.38\textwidth]{images/OpenGLPipeline}
\caption{OpenGL cijevovod}
\end{wrapfigure}
Prilikom klasične rasterizacije (koja se ponekad naziva i trokut rasterizacija) trodimenzionalna se scene projicira na dvodimenzionalnu površinu, najčešće ekran. Kako bi to bilo postignuto potrebno je svaki od elemenata scene provući kroz rasterizacijski cjevovod koji se sastoji od nekoliko faza.
\subsection{Pregled cjevovoda OpenGLa}
\paragraph{}
Ovo je grubi popis faza cjevovoda OpenGLa:
\begin{itemize}
\item Specifikacija točaka
\item Vertex shader
\item Teselacije
\item Geometry shader
\item Sastavljanje i procesiranje primitiva
\item Rasterizacija
\item Fragment shader
\item Post procesiranje fragmenata
\end{itemize}
Vertex, geometry i fragment shader su programabilni koraci koje se potpunosti može kontrolirati, dok je većina ostalih koraka fiksna. Na neke od njih može se ograničeno djelovati podešavanjem raznih varijabli.
\subsection{Pregled cjevovoda OpenGLa}
\subsubsection{Specifikacija točaka}
\paragraph{}
Kako bi renderiranje započelo, grafičkoj se kartici trebaju dostaviti svi podaci o entitetu koji se želi prikazati. U memoriji grafičke kartice nalaze se bufferi u koji se ispunjuju podacima o entitetu koji se trenutno crta. To se ostvaruje tako da se šalje set podataka za svaku pojedinu točku, a to su najčešće pozicija točke, normala na točku te mapirane koordinate na pridruženim teksturama. Podaci koje šaljemo mogu imati bilo kakvo značenje jer se u idućem koraku tim podacima može manipulirati na proizvoljan način.\\
Svi podaci ne moraju nužno biti vezani za pojedinu točku, već se mogu slati podaci koji su vezani na čitave setove točaka (recimo sve točke koje čine pojedini model), ili podaci koji su globalni i vrijede uvijek (poput pozicije, prirode i intenziteta izvora svjetala u svijetu ili recimo pozicije kamere). Prije samog početka rada grafičke kartice, u nju se učitavaju i razne teksture koje se koriste tijekom renderiranja.
\end{document}
这会产生这个文件:
我不希望下边距那么大。我完全了解 /vspace command,但我正在寻找一种适用于在任何设置中显示此行为的任何图像的解决方案,我不想在每次发生变化时都手动设置它。
有问题的图像可以在khronos 网站上找到。
解决方案
wrapfig
在 .等列表附近使用时会出现问题itemize
。要解决方法,您可以指定短线的数量(调整[18]
以适合您的图像,我的猜测26
可能会起作用):
\documentclass{article}
\usepackage{geometry}
\geometry{a4paper, portrait, margin=1in}
\usepackage{graphicx}
\usepackage{wrapfig}
\begin{document}
\section{Klasična rasterizacija}
\begin{wrapfigure}[18]{r}{0.4\textwidth}
\centering
\includegraphics[width=0.38\textwidth]{example-image-10x16}
\caption{OpenGL cijevovod}
\end{wrapfigure}
Prilikom klasične rasterizacije (koja se ponekad naziva i trokut rasterizacija) trodimenzionalna se scene projicira na dvodimenzionalnu površinu, najčešće ekran. Kako bi to bilo postignuto potrebno je svaki od elemenata scene provući kroz rasterizacijski cjevovod koji se sastoji od nekoliko faza.
\subsection{Pregled cjevovoda OpenGLa}
\paragraph{}
Ovo je grubi popis faza cjevovoda OpenGLa:
\begin{itemize}
\item Specifikacija točaka
\item Vertex shader
\item Teselacije
\item Geometry shader
\item Sastavljanje i procesiranje primitiva
\item Rasterizacija
\item Fragment shader
\item Post procesiranje fragmenata
\end{itemize}
Vertex, geometry i fragment shader su programabilni koraci koje se potpunosti može kontrolirati, dok je većina ostalih koraka fiksna. Na neke od njih može se ograničeno djelovati podešavanjem raznih varijabli.
\subsection{Pregled cjevovoda OpenGLa}
\subsubsection{Specifikacija točaka}
\paragraph{}
Kako bi renderiranje započelo, grafičkoj se kartici trebaju dostaviti svi podaci o entitetu koji se želi prikazati. U memoriji grafičke kartice nalaze se bufferi u koji se ispunjuju podacima o entitetu koji se trenutno crta. To se ostvaruje tako da se šalje set podataka za svaku pojedinu točku, a to su najčešće pozicija točke, normala na točku te mapirane koordinate na pridruženim teksturama. Podaci koje šaljemo mogu imati bilo kakvo značenje jer se u idućem koraku tim podacima može manipulirati na proizvoljan način.\\
Svi podaci ne moraju nužno biti vezani za pojedinu točku, već se mogu slati podaci koji su vezani na čitave setove točaka (recimo sve točke koje čine pojedini model), ili podaci koji su globalni i vrijede uvijek (poput pozicije, prirode i intenziteta izvora svjetala u svijetu ili recimo pozicije kamere). Prije samog početka rada grafičke kartice, u nju se učitavaju i razne teksture koje se koriste tijekom renderiranja.
\end{document}
推荐阅读
- sql - 爆炸后如何从数组中删除一个元素
- ruby - 如何在 Ruby 中检查图像是否可热链接
- reactjs - 如何在 React 功能组件中正确使用 refs
- matlab - 置信区间位于组栏的中心
- c++ - 带有 intel pin 的 nlohmann/json 库
- php - 将画布图像保存到服务器
- ios - 如何修复“nw_connection_receive_internal_block_invoke”(控制台)
- properties - 如何有条件地修改按钮(或其他 UIView)的属性?
- javascript - 从 Javascript 中的函数创建关联数组
- ios - 如何从 Xcode 中导入的 .dae 中访问混合形状