Referensi API Terjemahan

Transliterasi sederhana

Metode berikut memungkinkan Anda melakukan transliterasi sederhana tanpa UI dengan memanipulasi JavaScript.

Metode Deskripsi

google.language.transliterate(wordsArray, srcLang, destLang, callback)

google.language.transliterate(wordsArray, srcLang, destLang, callback) adalah metode global yang mentransliterasi teks tertentu dari bahasa sumber ke bahasa tujuan. API menampilkan hasil secara asinkron ke fungsi callback yang ditentukan sebagai objek result. Parameter untuk metode ini adalah:

  • wordsArray menyediakan teks untuk ditransliterasikan sebagai array.
  • srcLang menyediakan bahasa sumber sebagai kode bahasa. Lihat enum LanguageCode untuk mengetahui contohnya.
  • destLang menyediakan bahasa tujuan sebagai kode bahasa. Lihat enum LanguageCode untuk mengetahui contohnya.
  • callback adalah fungsi callback yang menerima result.

google.language.transliterate() tidak memiliki nilai kembalian.

Metode sederhana untuk transliterasi ini menggunakan namespace google.language.transliterate (dan bukan google.elements.transliteration, yang merupakan namespace untuk setiap metode lain di API Translliter).

google.language.transliterate() menghasilkan objek result.

Objek hasil dibuat menggunakan encoding JSON permintaan server. Akibatnya, kita telah memilih untuk tidak menerapkan objek JavaScript formal, dan membuat objek result dari bentuk serialnya secara dinamis.

Meskipun tidak ada implementasi formal objek, objek tersebut ada dan kami mendokumentasikannya seolah-olah ada implementasi JavaScript pendukung. Dampak dari semua hal ini minimal. Artinya, tidak ada konstruktor bernama. Untuk setiap hasil, seolah-olah sistem memanggil Object() baru dan kemudian menetapkan properti formal pada objek tersebut. Properti tersebut ada di bawah ini.

  • <result>
    • error?
      Ada jika terjadi error dalam transliterasi.
    • transliterations
      Array ukuran yang sama dengan ukuran input wordsArray.
      • transliteratedWords
        Array ukuran maksimum 5, dengan transliterasi untuk kata yang sesuai dalam wordsArray.

Referensi JavaScript kontrol Transliterasi

Konstruktor dan metode berikut memungkinkan Anda melakukan transliterasi dalam UI yang disediakan oleh API.

Konstruktor - google.elements.transliteration.TransliterationControl(options)

Konstruktor Deskripsi

google.elements.transliteration.
TransliterationControl(options)

.TransliterationControl(options) memungkinkan transliterasi pada kumpulan elemen DOM HTML yang dapat diedit dan menyediakan sejumlah metode yang memungkinkan Anda mengontrol transliterasi dalam elemen tersebut. Argumen options dapat memiliki kolom berikut:

  • sourceLanguage adalah string wajib yang menentukan bahasa sumber menggunakan enum LanguageCode (seperti di google.elements.transliteration.ENGLISH). Saat ini, bahasa Inggris adalah satu-satunya bahasa sumber yang didukung.
  • destinationLanguage adalah array wajib yang menentukan bahasa tujuan menggunakan enum LanguageCode LanguageCode seperti pada (seperti google.elements.transliteration.HINDI ).

    Di UI, bahasa tujuan yang tersedia muncul dalam menu, dengan bahasa pertama dalam array dipilih secara default. Lihat getDestinationLanguage untuk detail selengkapnya tentang bahasa tujuan yang valid untuk bahasa sumber tertentu.
  • transliterationEnabled adalah kolom opsional yang menentukan apakah akan mengaktifkan transliterasi secara default. Jika Anda ingin mengaktifkan transliterasi secara default, tentukan kolom ini dengan nilai true. Nilai defaultnya adalah false.
  • shortcutKey adalah kolom string opsional yang menentukan tombol pintasan untuk mengaktifkan atau menonaktifkan transliterasi. Untuk menentukan tombol pintasan, tentukan string yang berisi pengubah seperti 'Ctrl', 'Alt' atau 'Shift' beserta huruf alfabet. Misalnya, 'Ctrl+g' dan 'Ctrl+Shift+a' keduanya merupakan kombinasi tombol pintasan yang valid.

    Catatan: Anda tidak dapat menggunakan Shift sebagai satu-satunya pengubah; namun, Anda dapat menggunakannya bersamaan dengan Alt atau Kontrol.

Metode ini membuat pengecualian dalam situasi berikut:

  • sourceLanguage atau destinationLanguage tidak valid
  • Bahasa yang tidak didukung di pasangan bahasa sourceLangauge dan destinationLanguage
  • Kombinasi shortcutsKey tidak valid

Cuplikan kode berikut menunjukkan cara membuat instance kontrol transliterasi:

function onLoad() {
  var options = {
    sourceLanguage: 'en',
    destinationLanguage: ['hi'],
    shortcutKey: 'ctrl+g',
    transliterationEnabled: true
  };

  // Create an instance on TransliterationControl with the required
  // options.
  var control = new google.elements.transliteration.TransliterationControl(options);
}

Metode kontrol Transliterasi

Metode berikut diimplementasikan pada namespace google.elements.transliteration.TransliterationControl.

Metode Deskripsi

.addEventListener(eventType, listener, opt_listenerScope)

.addEventListener(eventType, listener, opt_listenerScope) menambahkan pemroses ke kontrol transliterasi untuk jenis peristiwa yang ditentukan. Saat jenis peristiwa tertentu dipicu, pemroses akan dipanggil dengan objek peristiwa. Konten objek peristiwa bergantung pada jenis peristiwa. Parameter untuk metode ini adalah:

  • eventType adalah peristiwa yang akan ditambahkan pemroses. Argumen ini mengambil nilainya dari enum eventType (seperti google.elements.transliteration.TransliterationControl. EventType.STATE_CHANGED).
  • listener menyediakan fungsi pemroses untuk peristiwa.
  • opt_listenerScope memanggil pemroses dengan this yang disetel ke objek yang ditentukan dalam opt_listenerScope.

.addEventListener() tidak memiliki nilai kembalian.

.disableTransliteration()

.disableTransliteration() menonaktifkan transliterasi di kontrol transliterasi. Metode ini tidak memiliki argumen dan nilai pengembalian.

.enableTransliteration()

.enableTransliteration() memungkinkan transliterasi dalam kontrol transliterasi. Metode ini tidak memiliki argumen dan nilai pengembalian.

.isTransliterationEnabled()

.isTransliterationEnabled() tidak memiliki argumen dan menampilkan boolean yang menunjukkan apakah transliterasi diaktifkan pada kontrol transliterasi.

.makeTransliteratable(elementIds, opt_options)

.makeTransliteratable(elementIds, opt_options) memungkinkan transliterasi pada elemen HTML yang disediakan. Parameter untuk metode ini adalah:

  • elementIds adalah array yang berisi string ID elemen yang dapat diedit atau referensi elemen yang ingin Anda aktifkan transliterasi. Elemen yang dapat diedit dapat berupa:

    • Kolom teks
    • Area teks
    • A <div> dengan contentEditable="true"
    • <iframe> dengan designMode="on"
    • iFrame dengan isi contentEditable="true". Pastikan iFrame dimuat sebelum mengaktifkan transliterasi.
  • opt_options adalah argumen opsional yang menyediakan opsi yang diterapkan ke elemen ini. Argumen ini dapat berisi kolom berikut:
    • adjustElementStyle adalah kolom boolean opsional yang mengontrol apakah API menyesuaikan elemen dan ukuran font secara otomatis agar sesuai dengan karakter bahasa target. Nilai defaultnya adalah true. Opsi ini hanya memengaruhi elemen teks biasa.
    • adjustElementDirection adalah kolom boolean opsional yang mengontrol arah elemen yang dapat diedit, bergantung pada arah destinationLanguage. Nilai defaultnya adalah true.

Untuk sistem penulisan kanan ke kiri seperti bahasa Arab, API secara otomatis menyesuaikan arah elemen input, sesuai dengan arah skrip tertulis dan konten elemen input. Anda dapat menyetel arah teks dalam elemen input menggunakan HTML dan JavaScript dengan direction, yang dapat memiliki nilai 'ltr' (dari kiri ke kanan) atau 'rtl' (dari kanan ke kiri). Menggunakan metode ini akan memengaruhi kursor dan perataan teks di area input.

Anda dapat melihat contoh dukungan API untuk bahasa yang ditulis dari kanan ke kiri dalam contoh transliterasi Arab.

Metode ini membuat pengecualian jika salah satu dari elementIds yang ditentukan tidak valid.

.makeTransliteratable() tidak memiliki nilai kembalian.

.removeEventListener(eventType, listener, opt_listenerScope)

.removeEventListener(eventType, listener, opt_listenerScope) menghapus pemroses peristiwa dari kontrol transliterasi, dengan:

  • Argumen ini mengambil nilainya dari enum eventType (seperti google.elements.transliteration.TransliterationControl. EventType.STATE_CHANGED).
  • listener adalah fungsi untuk peristiwa yang perlu dihapus.
  • opt_listenerScope adalah cakupan tempat pemroses didaftarkan pada saat menambahkan pemroses.

.removeEventListener() tidak memiliki nilai kembalian.

.setLanguagePair(sourceLanguage, destinationLanguage)

.setLanguagePair(sourceLanguage, destinationLanguage) memungkinkan Anda secara dinamis mengubah pasangan bahasa yang digunakan oleh kontrol transliterasi, dengan:

  • sourceLanguage menyediakan jenis bahasa yang akan ditransliterasi. Argumen ini mengambil nilainya dari enum LanguageCode (seperti google.elements.transliteration.TransliterationControl. LanguageCode.ENGLISH).
  • destinationLanguage menyediakan jenis bahasa untuk teks yang ditransliterasi.

.setLanguagePair() menampilkan boolean yang menunjukkan apakah tindakan setLanguage berhasil.

.showControl(divElement)

.showControl(divElement) menunjukkan kontrol transliterasi di DIV yang ditentukan, dengan divElement adalah ID DIV. Metode ini tidak memiliki nilai yang ditampilkan.

.toggleTransliteration()

.toggleTransliteration() mengaktifkan atau menonaktifkan transliterasi di kontrol transliterasi. Metode ini tidak memiliki argumen dan nilai pengembalian.

Metode statis

Metode statis berikut diimplementasikan pada namespace google.language.

Metode statis Deskripsi

.setOnLoadCallback(callback)

.setOnLoadCallback(callback) adalah fungsi statis yang mendaftarkan fungsi pengendali yang ditentukan untuk dipanggil setelah halaman yang berisi panggilan ini dimuat, dengan callback sebagai fungsi yang diperlukan yang dipanggil ketika dokumen yang memuatnya dimuat dan API siap untuk digunakan (misalnya setelah onLoad). Fungsi ini diterapkan pada namespace google (yaitu, google.setOnLoadCallback(callback);)

.setOnLoadCallback() tidak memiliki nilai kembalian.

Catatan: Dokumentasi sebelumnya direkomendasikan agar Anda menggunakan atribut onload elemen isi (<body onload="OnLoad()">). Meskipun ini adalah cara yang baik untuk melakukannya saat Anda memiliki kontrol penuh atas halaman dan semua kode yang dimuat oleh halaman, pendekatan ini dapat menyebabkan masalah pada beberapa runtime yang menghancurkan pengendali body.onload Anda. setOnLoadCallback() tidak memiliki masalah tersebut, dan oleh karena itu merupakan metode yang direkomendasikan untuk mendaftarkan callback yang memanggil kode Anda saat API telah dimuat sepenuhnya dan siap digunakan.

Metode statis berikut diimplementasikan pada namespace google.elements.transliteration.

Metode statis Deskripsi

.getDestinationLanguages(sourceLanguage)

.getDestinationLanguages(sourceLanguage) adalah metode global yang menampilkan peta bahasa tujuan yang didukung transliterasi untuk sourceLanguage tertentu. Peta yang ditampilkan berisi bahasa tujuan yang didukung, di mana kuncinya adalah nama bahasa dan nilainya adalah kode bahasa. Peta yang ditampilkan mirip dengan yang dijelaskan dalam enum LanguageCode.

Enumerasi

Enum EventType

Enumerasi google.elements.transliteration.TransliterationControl.EventType mencantumkan peristiwa yang mungkin selama transliterasi. Anda bisa menyediakan pengendali khusus untuk peristiwa ini dalam kode Anda.

var google.elements.transliteration.TransliterationControl.EventType = {
   STATE_CHANGED : 'state_changed',
   LANGUAGE_CHANGED : 'language_changed',
   SERVER_REACHABLE : 'server_reachable',
   SERVER_UNREACHABLE : 'server_unreachable'
};
  • google.elements.transliteration.TransliterationControl.EventType.STATE_CHANGED: Hasil saat transliterasi diaktifkan atau dinonaktifkan di kontrol transliterasi melalui:
    • Tombol pintasan
    • Metode enableTransliteration, disableTransliteration, atau toggleTransliteration
    • Klik mouse pada kontrol transliterasi yang digambar oleh metode showControl.
    Objek peristiwa yang diteruskan ke pemroses berisi kolom transliterationEnabled. Kolom ini benar jika transliterasi adalah 'on', jika tidak, kolom ini salah.
  • google.elements.transliteration.TransliterationControl.EventType.LANGUAGE_CHANGED: Hasil saat pasangan bahasa transliterasi diubah dalam kontrol transliterasi melalui:
    • Metode setLanguagePair
    • Kontrol transliterasi yang digambar oleh metode showControl
    Objek peristiwa yang diteruskan ke pemroses berisi kolom sourceLanguage dan destinationLanguage.
  • google.elements.transliteration.TransliterationControl.EventType.SERVER_REACHABLE: Hasil saat Anda berhasil menghubungi server untuk mentransliterasi teks.
  • google.elements.transliteration.TransliterationControl.EventType.SERVER_UNREACHABLE adalah hasil dari upaya yang gagal untuk menghubungi server guna mentransliterasi teks.

Enum LanguageCode

google.elements.transliteration.LanguageCode memetakan konstanta nama ke kode bahasa yang dapat Anda gunakan untuk menentukan bahasa sumber dan tujuan dalam metode transliterasi.

var google.elements.transliteration.LanguageCode = {
    ENGLISH: 'en',
    AMHARIC: 'am',
    ARABIC: 'ar',
    BENGALI: 'bn',
    CHINESE: 'zh',
    GREEK: 'el',
    GUJARATI: 'gu',
    HINDI: 'hi',
    KANNADA: 'kn',
    MALAYALAM: 'ml',
    MARATHI: 'mr',
    NEPALI: 'ne',
    ORIYA: 'or',
    PERSIAN: 'fa',
    PUNJABI: 'pa',
    RUSSIAN: 'ru',
    SANSKRIT: 'sa',
    SINHALESE: 'si',
    SERBIAN: 'sr',
    TAMIL: 'ta',
    TELUGU: 'te',
    TIGRINYA: 'ti',
    URDU: 'ur'
};

Enum DidukungBahasaBahasa

Enumerasi google.elements.transliteration.SupportedDestinationLanguages memetakan konstanta nama ke array kode bahasa yang dapat Anda gunakan untuk menentukan grup bahasa tujuan dalam kontrol transliterasi.

var google.elements.transliteration.SupportedDestinationLanguages = {
    // ALL includes all languages supported in the Transliterate API.
    // As support for more languages becomes available, this enum will be
    // automatically updated to include the new languages transparently.
    ALL: [
        google.elements.transliteration.LanguageCode.AMHARIC,
        google.elements.transliteration.LanguageCode.ARABIC,
        google.elements.transliteration.LanguageCode.BENGALI,
        google.elements.transliteration.LanguageCode.CHINESE,
        google.elements.transliteration.LanguageCode.GREEK,
        google.elements.transliteration.LanguageCode.GUJARATI,
        google.elements.transliteration.LanguageCode.HINDI,
        google.elements.transliteration.LanguageCode.KANNADA,
        google.elements.transliteration.LanguageCode.MALAYALAM,
        google.elements.transliteration.LanguageCode.MARATHI,
        google.elements.transliteration.LanguageCode.NEPALI,
        google.elements.transliteration.LanguageCode.ORIYA,
        google.elements.transliteration.LanguageCode.PERSIAN,
        google.elements.transliteration.LanguageCode.PUNJABI,
        google.elements.transliteration.LanguageCode.RUSSIAN,
        google.elements.transliteration.LanguageCode.SANSKRIT,
        google.elements.transliteration.LanguageCode.SERBIAN,
        google.elements.transliteration.LanguageCode.SINHALESE,
        google.elements.transliteration.LanguageCode.TAMIL,
        google.elements.transliteration.LanguageCode.TELUGU,
        google.elements.transliteration.LanguageCode.TIGRINYA,
        google.elements.transliteration.LanguageCode.URDU],
 
    // INDIC includes all Indic languages supported in the Transliterate API.
    // As support for more Indic languages becomes available, this enum will be
    // automatically updated to include the new languages transparently.
    INDIC: [
        google.elements.transliteration.LanguageCode.BENGALI,
        google.elements.transliteration.LanguageCode.GUJARATI,
        google.elements.transliteration.LanguageCode.HINDI,
        google.elements.transliteration.LanguageCode.KANNADA,
        google.elements.transliteration.LanguageCode.MALAYALAM,
        google.elements.transliteration.LanguageCode.MARATHI,
        google.elements.transliteration.LanguageCode.NEPALI,
        google.elements.transliteration.LanguageCode.ORIYA,
        google.elements.transliteration.LanguageCode.PUNJABI,
        google.elements.transliteration.LanguageCode.SANSKRIT,
        google.elements.transliteration.LanguageCode.SINHALESE,
        google.elements.transliteration.LanguageCode.TAMIL,
        google.elements.transliteration.LanguageCode.TELUGU,
        google.elements.transliteration.LanguageCode.URDU]
};

Pemecahan masalah

Jika Anda mengalami masalah:

  • Cari kesalahan ketik. Ingatlah, JavaScript adalah bahasa yang membedakan huruf besar dan kecil.
  • Gunakan debugger JavaScript. Google Chrome memiliki serangkaian alat developer lengkap. Di Firefox, Anda dapat menggunakan konsol JavaScript atau VideoObject. Di IE, Anda dapat menggunakan Microsoft Script Debugger.
  • Telusuri grup diskusi. Jika Anda tidak dapat menemukan postingan yang menjawab pertanyaan Anda, posting pertanyaan tersebut ke grup beserta link ke halaman web yang menunjukkan masalah tersebut.