看英文文献对于英语基础薄弱的学生一直是一个恼火的问题,幸好现在机器翻译的水平越来越高了,虽然并不完美,但是作为参考是足够的。
最简单的方法:
1. 免费的在线文档翻译器https://www.onlinedoctranslator.com/zh-CN/
该网站使用谷歌翻译,还能够保留原文档的排版,亲测可用。
image image
2. 谷歌翻译
(1)打开谷歌翻译https://translate.google.com.hk/
image(2)选择文件,翻译为中文
image(3)将翻译结果存储为word或者其他格式文件里面,与英文对照阅读。
以上两种方法存在的缺点
image如图所示,因为论文的排版,这两句话被拆分为3句,相应的翻译结果必定会打折扣。
利用c++对论文进行修改之后上传翻译
第一步:将PDF转为txt文件
image第二步:c++代码
#define LOCAL
#include <iostream>
#include <cstring>
#include <string>
#include <cstdio>
using namespace std;
int main()
{
#ifdef LOCAL
freopen("输入文件的路径,如C:\\Users\\dell\\Desktop\\cc.txt","r",stdin);//注意加转义字符
freopen("输出文件的路径,如C:\\Users\\dell\\Desktop\\alphago-master_out.txt","w",stdout);//注意加转义字符
#endif // LOCAL
string line1;
while(getline(cin , line1)){
if(line1[line1.length()-1] == '-'){//针对本行单词未写完的情况
line1 = line1.substr(0, line1.length()-1);
}else if(line1[line1.length()-1] != ' '){
line1.push_back(' ');
}
if(isupper(line1[0])){
cout << "\n" << " " << line1;
}else if(
(isdigit(line1[0]) && (line1[1]=='.' || line1[2]=='.'))//针对类似“2.3这样的小标题”
|| line1[0] == '['){
cout << "\n" << line1;
}else{
cout << line1;
}
}
return 0;
}
该步骤有可能出现转换不完全的情况,是由于出现类似“�”这样的不在C++ string编码的字符。这时从源文件里面找到输出文件最后一个字符的下一个字符,将文件里面的该字符所有都替换为空。
imageimage
第三步:翻译
使用以上的两个简单方法的任意一种,翻译程序输出的文件。与英文文档对照使用。
网友评论