- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我要改knitr
创建 figure
时的行为LaTeX
中的环境调用不同的LaTeX
命令比 \label{}
,例如 \alabel{}
我在哪里定义 \alabel
运行 \label{foo}
以及 \hypertarget{foo}{}
使用 hyperref
LaTeX
包裹。我这样做是为了在 Web 浏览器中构造一个 URL 以到达 .pdf
中的特定位置。使用 pdflatex
创建的文档,例如http://.../my.pdf#nameddest=foo
.
我怎样才能覆盖 \label{}
或发出额外的 \hypertarget{same label used by \label{}
在数字?
这是在 .Rnw
的上下文中。文件。我希望 anchor 出现在 figure
中环境 for optimal positioning of the cursor when jumping into the
.pdf` 文件。
更新
在重新考虑这一点时,我认为最好不要生成 hypertarget
anchor ,但写一个R
解析 LaTeX
的函数aux
文件以检索引用的页码(\newlabel
行)以生成所需的 pdf
的 URL文件。在 .Rnw
或 .Rmd
我可以在一个句子中调用这个函数来插入计算的 URL。
更新
毕竟我决定采用@werner 的出色方法,该方法完美无缺。对于任何对 R
感兴趣的人- 不需要使用 hypertarget
的方法,这里是 LaTeX
需要为其设置的代码 - 这处理物理页码与逻辑页码不匹配的情况(例如,使用诸如章节号之类的逻辑数字 - 章节内的页面。
% Creates .pag file mapping absolute page numbers to logical page
% numbers; works with R function latexRef
\newwrite\pgfile
\immediate\openout\pgfile=\jobname .pag
\newcounter{abspage}
\setcounter{abspage}{0}
\useackage{everypage}
\AddEverypageHook{%
\addtocounter{abspage}{1}
\immediate\write\pgfile{\thepage, \theabspage}%
}
\AtEndDocument{\clearpage\immediate\closeout\pgfile}
R
在
.aux, .pag
中进行查找的函数文件:
## Create hyperlink to appropriate physical page in a pdf document
## created by pdflatex given the .aux and .pag file. Absolute and
## named page numbers are store in the .pag file created by hslide.sty
latexRef <- function(label, base, name, path='doc/',
blogpath='/home/harrelfe/R/blog/blogdown/static/doc/',
lang=c('markdown', 'latex')) {
lang <- match.arg(lang)
aux <- paste0(blogpath, base, '.aux')
if(! file.exists(aux))
stop(paste('no file named', aux))
path <- paste0(path, base, '.pdf')
pag <- paste0(blogpath, base, '.pag')
pagemap <- NULL
if(file.exists(pag)) {
p <- read.table(pag, sep=',')
pagemap <- trimws(p[[2]])
names(pagemap) <- trimws(p[[1]])
}
r <- readLines(aux)
w <- paste0('\\\\newlabel\\{', label, '\\}')
i <- grepl(w, r)
if(! any(i)) stop(paste('no label =', label))
r <- r[i][1]
r <- gsub('\\{', ',', r)
r <- gsub('\\}', ',', r)
x <- scan(text=r, sep=',', what=character(0), quiet=TRUE)
section <- x[5]
if(section != '') section <- paste0(' Section ', section)
page <- trimws(x[7])
if(length(pagemap)) page <- pagemap[page]
url <- paste0('http://fharrell.com/', path, '#page=', page)
switch(lang,
markdown = paste0('[', name, section, '](', url, ')'),
latex = paste0('\\href{', url, '}{', name, section, '}')
)
}
最佳答案
您可以将以下内容添加到您的 LaTeX 序言中,以全局替换 \label
与 \label
的组合-和- \hypertarget
通过以下方式:
---
title: 'A title'
author: 'An author'
date: 'A date'
output:
pdf_document:
keep_tex: true
header-includes:
- \AtBeginDocument{
\let\oldlabel\label
\renewcommand{\label}[1]{\oldlabel{#1}\hypertarget{#1}{}}
}
---
See Figure \ref{fig:figure}.
\begin{figure}
\caption{A figure caption}
\label{fig:figure}
\end{figure}
关于r - 如何系统地更改 knitr\label{} 行为以添加超链接 anchor ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48322282/
我创建了一个用户可以添加测试的字段。这一切运行顺利我只希望当用户点击(添加另一个测试)然后上一个(添加另一个测试)删除并且这个显示在新字段中。 所有运行良好的唯一问题是点击(添加另一个字段)之前添加另
String[] option = {"Adlawan", "Angeles", "Arreza", "Benenoso", "Bermas", "Brebant
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
我正在努力将 jQuery 滚动功能添加到 nav-tab (Bootstrap 3)。我希望用户能够选择他们想要的选项卡,并在选项卡内容中有一个可以平滑滚动到 anchor 的链接。这是我的代码,可
我正在尝试在用户登录后再添加 2 个 ui 选项卡。首先,我尝试做一个之后。 $('#slideshow').tabs('remove', '4'); $("#slideshow ul li:last
我有一个包含选择元素的表单,我想通过选择添加和删除其中一些元素。这是html代码(这里也有jsfiddle http://jsfiddle.net/txhajy2w/):
正在写这个: view.backgroundColor = UIColor.white.withAlphaComponent(0.9) 等同于: view.backgroundColor = UICo
好的,如果其中有任何信息,我想将这些列添加到一起。所以说我有 账户 1 2 3 . 有 4 个帐户空间,但只有 3 个帐户。我如何创建 java 脚本来添加它。 最佳答案 Live Example H
我想知道是否有一种有效的预制算法来确定一组数字的和/差是否可以等于不同的数字。示例: 5、8、10、2,使用 + 或 - 等于 9。5 - 8 = -3 + 10 = 7 + 2 = 9 如果有一个预
我似乎有一个卡住的 git repo。它卡在所有基本的添加、提交命令上,git push 返回所有内容为最新的。 从其他帖子我已经完成了 git gc 和 git fsck/ 我认为基本的调试步骤是
我的 Oracle SQL 查询如下- Q1- select hca.account_number, hca.attribute3, SUM(rcl.extended_amou
我正在阅读 http://developer.apple.com/iphone/library/documentation/iPhone/Conceptual/iPhoneOSProgrammingG
我正在尝试添加一个“加载更多”按钮并限制下面的结果,这样投资组合页面中就不会同时加载 1000 个内容,如下所示:http://typesetdesign.com/portfolio/ 我对 PHP
我遇到这个问题,我添加了 8 个文本框,它工作正常,但是当我添加更多文本框(如 16 个文本框)时,它不会添加最后一个文本框。有人遇到过这个问题吗?提前致谢。 Live Link: JAVASCRIP
add/remove clone first row default not delete 添加/删除克隆第一行默认不删除&并获取正确的SrNo(例如:添加3行并在看到问题后删除SrNo.2)
我编码this ,但删除按钮不起作用。我在控制台中没有任何错误.. var counter = 0; var dataList = document.getElementById('materi
我有一个类似数组的对象: [1:数组[10]、2:数组[2]、3:数组[2]、4:数组[2]、5:数组[3]、6:数组[1]] 我正在尝试删除前两个元素,执行一些操作,然后将它们再次插入到同一位置。
使用的 Delphi 版本:2007 你好, 我有一个 Tecord 数组 TInfo = Record Name : String; Price : Integer; end; var Info
我使用了基本的 gridster 代码,然后我声明了通过按钮添加和删除小部件的函数它工作正常但是当我将调整大小功能添加到上面的代码中时,它都不起作用(我的意思是调整大小,添加和删除小部件) 我的js代
title 323 323 323 title 323 323 323 title 323 323 323 JS $(document).keydown(function(e){
我是一名优秀的程序员,十分优秀!