标签: cross-reference

交叉引用组件

我的 .net 解决方案中有三个项目。
主项目和两个类库项目。

我发现我需要交叉引用类库项目。
我可以这样做吗?安全吗还是有一些注意事项?

.net project-reference cross-reference circular-reference

5
推荐指数
1
解决办法
5527
查看次数

XSL交叉引用

我正在学习XSL,并且有关于交叉引用的问题.我的目标XML文件的结构如下:

<XML>
    <Model>
        <packedElement typ="class" id="1"/>
        <packedElement typ="class" id="2"/>
        <packedElement typ="class" id="3"/>
    </Model>
    <Elements>
        <Element idref="1">
            <Attributes comment="comment 1."/>
        </Element>
        <Element idref="2">
            <Attributes comment="comment 2."/>
        </Element>
        <Element idref="3">
            <Attributes comment="comment 3."/>
        </Element>
    </Elements>
</XML>
Run Code Online (Sandbox Code Playgroud)

我想连接id = idref.我的目标是列出所有packedElements并打印他们的评论.你们能帮助我吗?

我尝试用关键功能解决它,但我不是很成功.

编辑:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="2.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:fn="http://www.w3.org/2005/xpath-functions">
<xsl:output method="xml" encoding="UTF-8"/>

<xsl:key name="CommentK" match="Element" use="@idref"/>


<xsl:template match="XML">
<XML>
<xsl:apply-templates/>
</XML>
</xsl:template>

<xsl:template name="Start" match="packedElement">
<xsl:variable name="TEST" select="@id"/>
<xsl:variable name="Comment">
<xsl:call-template name="FindComment">
<xsl:with-param name="test2" select="@id"/>
</xsl:call-template>
</xsl:variable>
<content comment="{$Comment}" id ="{@id}" …
Run Code Online (Sandbox Code Playgroud)

xml xslt cross-reference

5
推荐指数
1
解决办法
1530
查看次数

如何在下载时部分显示 PDF 文件?

根据PDF 1.7 规范,第 90 页,第 3.4 节:

前面的部分描述了单个对象的语法。本节介绍如何在 PDF 文件中组织对象以实现高效的随机访问和增量更新。规范的 PDF 文件最初由四个元素组成(见图 3.2):

  • 标识文件符合的 PDF 规范版本的单行标题

  • 包含构成文件中包含的文档的对象的主体

  • 包含有关文件中间接对象信息的交叉引用表

  • 提供交叉引用表的位置和文件正文中某些特殊对象的位置的预告片

基本上,该结构具有标题,然后是正文内容,然后是交叉引用表,最后是给出外部参照表位置的尾部。这里的关键部分是trailerxref表位于文件末尾,该xref表包含正文内容的相关元数据(主要是 10 位字节偏移量)。

鉴于外部参照表本身位于PDF 文件的最末尾

  • 我的浏览器(谷歌浏览器)如何在整个文件下载完成之前部分显示 PDF 文件(前一百页左右)?

查看我部分下载的 PDF 文件的屏幕截图:

部分下载的PDF文件

pdf random-access cross-reference

5
推荐指数
1
解决办法
1542
查看次数

通过 rmarkdown 交叉引用章节编号或名称

试图在 Rmarkdown 中找到一种方法来交叉引用自动编号和/或通过其命名的章节来做类似的事情

"As I explained hundred pages ago in \ref{ch:Chapter_Label}....."
Run Code Online (Sandbox Code Playgroud)

然后生成的生成的 pdf 文档具有以下内容:

"As I explained hundred pages ago in Chapter 3....."
Run Code Online (Sandbox Code Playgroud)

或者

"As I explained hundred pages ago in <Chapter Name> ....."
Run Code Online (Sandbox Code Playgroud)

我在想一些机制,比如:

\chapter{My_Title} \label{ch:1}
Run Code Online (Sandbox Code Playgroud)

然后在我使用的文本中的任何地方,\ref{ch:1}我都会得到文本嵌入的“My_Title”或“Chapter 1”(或它获得的任何自动编号)。

Rmarkdown 似乎无法使用 hyperref 包,或者我遗漏了一些东西。

有人可以帮助我吗?

latex cross-reference pandoc knitr r-markdown

5
推荐指数
1
解决办法
2968
查看次数

如何在bookdown/knitr/Rmarkdown中添加交叉引用补充图

感谢bookdownYihui Xie提供的非常有用的软件包,数字的交叉引用非常有效。并且可以参考这个问题中描述的数字

但是,在用 R 为科学论文撰写出版物时,我必须将几组数字分开。第一组是进入出版物的数字,第二组是补充数字。

我想有一个单独的计数器用于补充数字。目前有没有办法在bookdown包装中做到这一点?

所以基本上我喜欢

\@ref(fig:figure1) # evaluates to Fig. 1
\@ref(fig:figure2) # evaluates to Fig. 2
\@ref(figS:supplementary-figure1) #evaluates to Fig. S1. 
Run Code Online (Sandbox Code Playgroud)

附注。对我来说最重要的输出是bookdown::word_document2

最小工作示例:

---
title: "MWD"
output: bookdown::word_document2
---

# Results
This text refers to Fig. \@ref(fig:fig1main). 
We also want to refere here to Fig. \@ref(fig:fig2main).

In some cases we also need supplementary data. Please see Suppl. Fig. S\@ref(fig:fig1supp).

Please note that the 'S' before the reference should optimally NOT …
Run Code Online (Sandbox Code Playgroud)

r cross-reference knitr r-markdown bookdown

5
推荐指数
1
解决办法
219
查看次数

Rmarkdown:markdown 语法中包含的交叉引用图像

我想交叉引用我包含在降价![caption with spaces](path/to/image.png)语法中的图像。

我希望能够将此图像交叉引用为\@ref(fig:caption-with-spaces).

我正在使用bookdown::pdf_document2.

这可能吗?

latex cross-reference r-markdown bookdown

5
推荐指数
2
解决办法
301
查看次数

是否有可能干涸yaml?

我使用Rails的4.1.4 YAML语言环境文件来存储一些翻译,例如:

en:
  words:
    en:
      passport: "passport"
      ticket: "ticket"
      train: "train"
de:
  words:
    en:
      passport: "passport"
      ticket: "ticket"
      train: "train"
Run Code Online (Sandbox Code Playgroud)

有了这个,我可以用t("words.#{to_language}.train")返回train的德国用户(I18n.locale ==:DE)谁选择了英语作为to_language.

我的问题是:有什么方法我不能重复自己,并有类似下面的代码?

en OR de:
  words:
    en:
      passport: "passport"
      ticket: "ticket"
      train: "train"
Run Code Online (Sandbox Code Playgroud)

也许我可以将所有单词内容分配给变量然后只做:

en:
  all_words
de:
  all_words
Run Code Online (Sandbox Code Playgroud)

谢谢

yaml dry cross-reference ruby-on-rails-4

4
推荐指数
2
解决办法
1341
查看次数

通过 PyYAML 创建带有别名的 yaml 文件

我需要创建一个具有以下格式的 yaml 文件:

imager: &imager
  type: "detector"
  half_angle: 75 degrees
  max_distance: 23000 meters
ownship: &ownship
  origin: [11,11,5]
  type: "uav"

vehicles:
  - <<: *ownship
  name: "uav1"
  origin: [35.69257148103399 degrees, -117.689417544709 degrees, 5500]
  sensors:
    - <<: *imager
      name: "imager1"
Run Code Online (Sandbox Code Playgroud)

我将所有特定数据存储在 Python 类中,因此我想使用 PyYAML 来使事情变得简单。然而,当我去阅读文档时,我没有看到如何使用 PyYAML 处理别名。这个功能是否存在,或者我应该继续制作我自己的 yaml writer?

python alias yaml cross-reference pyyaml

4
推荐指数
1
解决办法
6780
查看次数

PyYaml“包含文件”和yaml别名(锚定/引用)

我有一个很大的YAML文件,其中大量使用了YAML锚点和引用,例如:

warehouse:
  obj1: &obj1
    key1: 1
    key2: 2
specific:
  spec1: 
    <<: *obj1
  spec2:
    <<: *obj1
    key1: 10
Run Code Online (Sandbox Code Playgroud)

该文件太大,因此我寻找了一种解决方案,该解决方案可以将我拆分为2个文件:warehouse.yamlspecific.yaml,并将其包含warehouse.yaml在中specific.yaml。我读了这篇简单的文章,它描述了如何使用PyYAML实现这一目标,但是它也表明不支持合并键(<<)。

我确实有一个错误:

yaml.composer.ComposerError:找到未定义的别名'obj1

当我试图那样去。

因此,我开始寻找替代方法,但由于对PyYAML的了解不多,我感到困惑。

我可以获得所需的合并键支持吗?还有其他解决方案吗?

yaml cross-reference pyyaml

4
推荐指数
1
解决办法
3047
查看次数

集合比较器的前向声明

我有一个使用节点(顶点)的图形结构,而节点又以std::pair<Node*, int>节点是边缘另一端的形式附加边缘,整数是边缘权重.我想std::multiset根据连接的节点索引和边缘权重将边缘排序为a .

enum color { white, grey, black };

struct EdgeComparator;

struct Node {
  int n;
  std::multiset<std::pair<Node *, int>, EdgeComparator> edges;
  enum color col;
  int d;  // distance to source node

  explicit Node(int n) : n(n), edges(), col(white), d() {};
};

struct EdgeComparator {
  bool operator()(const std::pair<Node *, int> &p1,
                  const std::pair<Node *, int> &p2) {
    if (p1.second == p2.second)
      return p1.first->n < p2.first->n;
    return p1.second < p2.second;
  }
};
Run Code Online (Sandbox Code Playgroud)

这种前向声明方法导致错误:invalid use of incomplete …

c++ graph cross-reference forward-declaration

4
推荐指数
1
解决办法
145
查看次数