📜  谷歌翻译 (1)

📅  最后修改于: 2023-12-03 15:41:49.029000             🧑  作者: Mango

谷歌翻译

简介

谷歌翻译是谷歌公司创建的一项在线翻译服务,可以将文本、语音、图片翻译成不同语言。

功能
文本翻译

用户可以在谷歌翻译网站或应用程序上输入要翻译的文本,选择从哪种语言翻译成另一种语言。

<form>
  <textarea name="text" placeholder="请输入要翻译的文本"></textarea>
  <div class="dropdown-container">
    <select name="source">
      <option value="auto">自动检测语言</option>
      <option value="en">英语</option>
      <option value="zh-CN">中文</option>
    </select>
    <i class="arrow"></i>
  </div>
  <div class="dropdown-container">
    <select name="target">
      <option value="zh-CN">中文</option>
      <option value="en">英语</option>
      <option value="fr">法语</option>
    </select>
    <i class="arrow"></i>
  </div>
  <button type="submit">翻译</button>
</form>
语音翻译

用户可以在谷歌翻译移动应用程序上使用语音输入功能翻译文本,或者调用语音翻译API。

const recognition = new window.webkitSpeechRecognition();
recognition.lang = 'zh-CN';
recognition.start();
recognition.onresult = function(event) {
  const text = event.results[0][0].transcript;
  const xhr = new XMLHttpRequest();
  xhr.open('POST', '/translate', true);
  xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
  xhr.onreadystatechange = function() {
    if (xhr.readyState === 4 && xhr.status === 200) {
      const translation = JSON.parse(xhr.responseText);
      console.log(translation);
    }    
  };
  xhr.send(`text=${text}&source=zh-CN&target=en`);
};
图片翻译

用户可以在谷歌翻译移动应用程序上使用拍照翻译功能翻译图片上的文本,或者调用OCR API。

const canvas = document.createElement('canvas');
const ctx = canvas.getContext('2d');
const img = new Image();
img.src = '/image.jpg';
img.onload = function() {
  canvas.width = img.width;
  canvas.height = img.height;
  ctx.drawImage(img, 0, 0);
  const dataURL = canvas.toDataURL('image/jpeg');
  const xhr = new XMLHttpRequest();
  xhr.open('POST', '/ocr', true);
  xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
  xhr.onreadystatechange = function() {
    if (xhr.readyState === 4 && xhr.status === 200) {
      const text = JSON.parse(xhr.responseText);
      console.log(text);
    }    
  };
  xhr.send(`image=${dataURL}`)
};
限制

谷歌翻译有每天5000个字符的限制,超过部分需要付费。此外,自动翻译不一定完全正确,特别是在语言结构、词义等方面。

结论

谷歌翻译是一项强大的在线翻译服务,可以帮助用户用不同的语言进行交流。作为程序员,也可以使用它的API进行开发,实现更多的自然语言处理功能。