小编mar*_*arw的帖子

如何防止文本在图形和表格之间爬行

我对 LaTeX 中的浮点数有疑问,例如表格中的数字。在我的文档中,我有一段连续的图像和表格,这些图像和表格跨越几页。我希望本节不受以下章节的文本影响。但是,由于图片和表格并没有填满整个页面,所以在页面底部放置了一些文本行,这很烦人,因为文本与图像和表格无关。

浮动对象的定义如下:

\begin{figure}[!htb]
    \centering 
    \includegraphics[width=0.80\textwidth]{./img/img1.jpg}
    \caption{cap1}
\end{figure}

\begin{figure}[!htb]
    \centering 
    \includegraphics[width=0.80\textwidth]{./img/img2.jpg}
    \caption{cap2}
\end{figure}
Run Code Online (Sandbox Code Playgroud)

....

我想我必须在每个浮动部分的第一行中调整 [!htb] 参数,但我不确定以哪种方式。任何人的想法?

text latex image

6
推荐指数
1
解决办法
1万
查看次数

如何从Eclipse导出Java jar并依赖其他jar?

我正在尝试从Eclipse项目创建一个自包含的.jar文件.通过"自包含",我的意思是该项目的所有依赖项(即其他jar)应该包含在生成的jar中.我想在另一个项目中使用导出的jar作为库.问题是我从依赖项中获取了一个类的NoClassDefFoundError.我已经尝试导出一个包含所有依赖项的runnable jar和一个"普通"jar.这些都不奏效.

清单看起来像这样:

Manifest-Version: 1.0
Main-Class: com.path.to.MyMainClass
Class-Path: lib/resolver.jar lib/xercesImpl.jar lib/xml-apis.jar lib/Mac-Cocoa64/swt.jar  
Run Code Online (Sandbox Code Playgroud)

.classpath看起来像这样:

<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
    <classpathentry kind="lib" path="lib/resolver.jar"/>
    <classpathentry kind="lib" path="lib/xercesImpl.jar"/>
    <classpathentry kind="lib" path="lib/xml-apis.jar"/>
    <classpathentry kind="lib" path="lib/Mac-Cocoa64/swt.jar"/>
    <classpathentry kind="output" path="bin"/>
</classpath>
Run Code Online (Sandbox Code Playgroud)

缺少的类def来自SWT.jar文件.知道什么可能是错的或我需要采取什么步骤才能成功导出这个jar,以便它可以包含在其他地方?

干杯,

马丁

java eclipse export jar noclassdeffounderror

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

从命令行运行程序时 C++ 错误“失败:语言环境::facet::_S_create_c_locale 名称无效”

我似乎对 C++ 中的语言环境有问题。当我从 Eclipse 中运行我的程序时,一切正常。但是,当我尝试从命令行运行时,我不断收到此错误:

失败:locale::facet::_S_create_c_locale 名称无效

这是触发错误的代码:

// Set up UTF8 file stream
string fileName = "./sz.txt";
wifstream inFileStream;

try {
    setlocale(LC_ALL, "");
    inFileStream.open(fileName.c_str());
    inFileStream.imbue(locale(""));
    if(!inFileStream) {
    return EXIT_FAILURE;
    }
}
catch (const std::exception &exc) {
    wcout << "Error while trying to create UTF8 file stream." << endl;
    std::cerr << exc.what() << endl;
    if( inFileStream.is_open() )
        inFileStream.close();

    return EXIT_FAILURE;
}
Run Code Online (Sandbox Code Playgroud)

“locale”的输出如下:

LANG="de_DE.UTF-8"
LC_COLLATE="de_DE.UTF-8"
LC_CTYPE="de_DE.UTF-8"
LC_MESSAGES="de_DE.UTF-8"
LC_MONETARY="de_DE.UTF-8"
LC_NUMERIC="de_DE.UTF-8"
LC_TIME="de_DE.UTF-8"
LC_ALL="de_DE.UTF-8"
Run Code Online (Sandbox Code Playgroud)

我还尝试使用“de_DE.UTF-8”作为语言环境字符串而不是“”(实际上应该是这样),但这给了我同样的错误。

奇怪的是,该程序在 Eclipse 中运行时运行良好。我正在使用 g++ 从命令行编译以下版本:

配置:--prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1 Apple LLVM …

c++ locale g++ utf-8 libstdc++

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

Xerces 中缺少 JAXP 1.5 支持 - 可能的解决方法?

我遇到了 Xerces 库的一些问题,我依赖的第三方库使用了它。

Xerces 尚不支持 JAXP 1.5,JAXP 1.5 包含在最新版本的 JDK 1.7 和 JDK 8 中。如果将 Xerces 用作 XML 解析器,这会导致一些问题,当系统知道多个 XML 解析器时可能会发生这种情况。删除xercesImpl-v2.9.0.jar立即解决了问题,但随后第 3 方库不再工作。

我可以看到该问题的两种解决方案:

  1. 似乎实际使用的 Xerces 库中唯一的位是org.apache.xerces.util.XMLCatalogResolver, 在CustomResolver.java. 目录解析器是否有其他选项而不是 Xerces 选项?

  2. 另一种选择似乎是在 JVM 启动时为 XML 解析显式设置系统属性。这样 JVM 就可以告诉要使用哪个 XML 解析器,并且它不会再选择 Xerces。

我发现了以下三个属性:

 -Djavax.xml.transform.TransformerFactory
 -Djavax.xml.parsers.SAXParserFactory
 -Djavax.xml.parsers.DocumentBuilderFactory
Run Code Online (Sandbox Code Playgroud)

不过,这会导致两个问题:

  • 这三个属性是唯一需要设置以便将 JVM 重定向到特定 XML 解析器的系统属性吗?
  • 明确设置属性会产生任何副作用吗?

java xml jaxp xerces

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

C ++如何在给定位置将wstring插入向量

我想知道,是否有人可以向我解释 vector.insert() 方法中的第二个参数:

迭代器插入(迭代器位置,const value_type& val);

例如,我有一个 wstring 类型的向量,我想在给定位置插入一个 wstring。我已经弄清楚如何使用迭代器设置位置:

wstring word = "test";
int insertion_pos = 3;
iterator it = words.begin();
words.insert( it + insertion_pos, word );
Run Code Online (Sandbox Code Playgroud)

但是第二个论点呢?如何将 wstring 对象传递给 insert() 方法?非常感谢。

干杯,

马丁

完整示例:

#include <stdio.h>
#include <stdlib.h>
#include <string>
#include <wchar.h>
#include <vector>

using namespace std;

int main(void) {
    // Initialize the vecor with three words.
    vector<wstring> words;
    wstring word1 = "FirstWord"; // Error msg: no viable conversion from 'const char     [10]' to 'wstring' (aka 
                             //            'basic_string<wchar_t>') …
Run Code Online (Sandbox Code Playgroud)

c++ vector wstring

3
推荐指数
1
解决办法
4195
查看次数

标签 统计

c++ ×2

java ×2

eclipse ×1

export ×1

g++ ×1

image ×1

jar ×1

jaxp ×1

latex ×1

libstdc++ ×1

locale ×1

noclassdeffounderror ×1

text ×1

utf-8 ×1

vector ×1

wstring ×1

xerces ×1

xml ×1