英文学术论文的机器翻译

看英文文献对于英语基础薄弱的学生一直是一个恼火的问题,幸好现在机器翻译的水平越来越高了,虽然并不完美,但是作为参考是足够的。

最简单的方法:

1. 免费的在线文档翻译器https://www.onlinedoctranslator.com/zh-CN/

该网站使用谷歌翻译,还能够保留原文档的排版,亲测可用。


英文学术论文的机器翻译_第1张图片
image
英文学术论文的机器翻译_第2张图片
image
2. 谷歌翻译
(1)打开谷歌翻译https://translate.google.com.hk/
英文学术论文的机器翻译_第3张图片
image
(2)选择文件,翻译为中文
英文学术论文的机器翻译_第4张图片
image
(3)将翻译结果存储为word或者其他格式文件里面,与英文对照阅读。

以上两种方法存在的缺点

英文学术论文的机器翻译_第5张图片
image

如图所示,因为论文的排版,这两句话被拆分为3句,相应的翻译结果必定会打折扣。

利用c++对论文进行修改之后上传翻译

第一步:将PDF转为txt文件
英文学术论文的机器翻译_第6张图片
image
第二步:c++代码
#define LOCAL
#include 
#include 
#include 
#include 

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编码的字符。这时从源文件里面找到输出文件最后一个字符的下一个字符,将文件里面的该字符所有都替换为空。
英文学术论文的机器翻译_第7张图片
image

英文学术论文的机器翻译_第8张图片
image
第三步:翻译

使用以上的两个简单方法的任意一种,翻译程序输出的文件。与英文文档对照使用。

你可能感兴趣的:(英文学术论文的机器翻译)