// Create a new workbook Workbook workbook = new Workbook(); // Please uncomment the following code and ensure you fill in the correct API Endpoint, API Key, and Model Name. // Workbook.setAIModelRequestHandler(new OpenAIModelRequestHandler(apiEndpoint, apiKey, modelName)); IWorksheet sheet = workbook.getWorksheets().get(0); sheet.setName("AI Translate Demo"); sheet.getColumns().get(0).setColumnWidth(40); sheet.getColumns().get(1).setColumnWidth(20); sheet.getColumns().get(2).setColumnWidth(45); // ============ Example 1: Single Text Translation ============ sheet.getRange("A1:C1").merge(); sheet.getRange("A1").setValue("Example 1: Single Text Translation"); sheet.getRange("A1").getFont().setBold(true); sheet.getRange("A1").getFont().setSize(14); sheet.getRange("A1").getFont().setColor(Color.GetWhite()); sheet.getRange("A1").getInterior().setColor(Color.FromArgb(90, 126, 158)); // Blue background sheet.getRange("A1").setHorizontalAlignment(HorizontalAlignment.Center); sheet.getRange("A1").setVerticalAlignment(VerticalAlignment.Center); sheet.getRange("A1").setRowHeight(30); sheet.getRange("A3").setValue("Formula:"); sheet.getRange("A3").getFont().setBold(true); sheet.getRange("A3").getFont().setSize(11); sheet.getRange("A3").getInterior().setColor(Color.FromArgb(217, 225, 242)); sheet.getRange("B3:C3").merge(); sheet.getRange("B3").setValue("=AI.TRANSLATE(A6, B6)"); sheet.getRange("B3").getFont().setItalic(true); sheet.getRange("B3").getFont().setColor(Color.FromArgb(68, 114, 196)); sheet.getRange("A5:C5").setValue(new Object[][] { { "Source Text (English)", "Target Lang", "AI Translation" } }); sheet.getRange("A5:C5").getFont().setBold(true); sheet.getRange("A5:C5").getInterior().setColor(Color.FromArgb(155, 194, 230)); sheet.getRange("A5:C5").setHorizontalAlignment(HorizontalAlignment.Center); sheet.getRange("A6").setValue("Hello, how are you today?"); sheet.getRange("B6").setValue("zh-CN"); sheet.getRange("B6").getFont().setBold(true); sheet.getRange("B6").setHorizontalAlignment(HorizontalAlignment.Center); sheet.getRange("C6").setFormula2("=AI.TRANSLATE(A6, B6)"); sheet.getRange("C6").getFont().setItalic(true); sheet.getRange("C6").getFont().setSize(11); sheet.getRange("A6:C6").getBorders().setLineStyle(BorderLineStyle.Thin); sheet.getRange("A6:C6").getBorders().setColor(Color.FromArgb(200, 200, 200)); // ============ Example 2: Batch Translation ============ sheet.getRange("A9:C9").merge(); sheet.getRange("A9").setValue("Example 2: Batch Translation (English → Japanese)"); sheet.getRange("A9").getFont().setBold(true); sheet.getRange("A9").getFont().setSize(14); sheet.getRange("A9").getFont().setColor(Color.GetWhite()); sheet.getRange("A9").getInterior().setColor(Color.FromArgb(90, 126, 158)); // Green background sheet.getRange("A9").setHorizontalAlignment(HorizontalAlignment.Center); sheet.getRange("A9").setVerticalAlignment(VerticalAlignment.Center); sheet.getRange("A9").setRowHeight(30); sheet.getRange("A11").setValue("Formula:"); sheet.getRange("A11").getFont().setBold(true); sheet.getRange("A11").getFont().setSize(11); sheet.getRange("A11").getInterior().setColor(Color.FromArgb(217, 225, 242)); sheet.getRange("B11:C11").merge(); sheet.getRange("B11").setValue("=AI.TRANSLATE(A14:A18, B14)"); sheet.getRange("B11").getFont().setItalic(true); sheet.getRange("B11").getFont().setColor(Color.FromArgb(68, 114, 196)); sheet.getRange("A13:C13").setValue(new Object[][] { { "Source Text (English)", "Target Lang", "AI Translation (Japanese)" } }); sheet.getRange("A13:C13").getFont().setBold(true); sheet.getRange("A13:C13").getInterior().setColor(Color.FromArgb(155, 194, 230)); sheet.getRange("A13:C13").setHorizontalAlignment(HorizontalAlignment.Center); sheet.getRange("A14:A18").setValue(new Object[][] { { "Good morning!" }, { "Thank you very much." }, { "How much does this cost?" }, { "Where is the nearest restaurant?" }, { "Have a nice day!" } }); sheet.getRange("A14:C18").getBorders().setLineStyle(BorderLineStyle.Thin); sheet.getRange("A14:C18").getBorders().setColor(Color.FromArgb(200, 200, 200)); sheet.getRange("B14").setValue("ja-JP"); sheet.getRange("B14:B18").merge(); sheet.getRange("B14").getFont().setBold(true); sheet.getRange("B14").getFont().setSize(12); sheet.getRange("B14").setHorizontalAlignment(HorizontalAlignment.Center); sheet.getRange("B14").setVerticalAlignment(VerticalAlignment.Center); sheet.getRange("B14:B18").getBorders().setLineStyle(BorderLineStyle.Thin); sheet.getRange("B14:B18").getBorders().setColor(Color.FromArgb(200, 200, 200)); sheet.getRange("C14").setFormula2("=AI.TRANSLATE(A14:A18, B14)"); sheet.getRange("C14:C18").getFont().setItalic(true); // Add section separators sheet.getRange("A1:C7").getBorders().get(BordersIndex.EdgeBottom).setLineStyle(BorderLineStyle.Double); sheet.getRange("A1:C7").getBorders().get(BordersIndex.EdgeBottom).setColor(Color.FromArgb(142, 172, 219)); workbook.calculate(); // As AI functions operate on an asynchronous computation function, // it is necessary to await the completion of their calculation processes. workbook.waitForCalculationToFinish(); // Set print settings sheet.getPageSetup().setFitToPagesTall(1); sheet.getPageSetup().setFitToPagesWide(1); sheet.getPageSetup().setIsPercentScale(false); sheet.getPageSetup().setOrientation(PageOrientation.Landscape); // Save to a pdf file workbook.save("Translate.pdf");
// Create a new workbook var workbook = Workbook() // Please uncomment the following code and ensure you fill in the correct API Endpoint, API Key, and Model Name. // Workbook.setAIModelRequestHandler(OpenAIModelRequestHandler(apiEndpoint, apiKey, modelName)) val sheet = workbook.worksheets[0] sheet.name = "AI Translate Demo" sheet.columns[0].columnWidth = 40.0 sheet.columns[1].columnWidth = 20.0 sheet.columns[2].columnWidth = 45.0 // ============ Example 1: Single Text Translation ============ sheet.getRange("A1:C1").merge() sheet.getRange("A1").value = "Example 1: Single Text Translation" sheet.getRange("A1").font.bold = true sheet.getRange("A1").font.size = 14.0 sheet.getRange("A1").font.color = Color.GetWhite() sheet.getRange("A1").interior.color = Color.FromArgb(90, 126, 158) // Blue background sheet.getRange("A1").horizontalAlignment = HorizontalAlignment.Center sheet.getRange("A1").verticalAlignment = VerticalAlignment.Center sheet.getRange("A1").rowHeight = 30.0 sheet.getRange("A3").value = "Formula:" sheet.getRange("A3").font.bold = true sheet.getRange("A3").font.size = 11.0 sheet.getRange("A3").interior.color = Color.FromArgb(217, 225, 242) sheet.getRange("B3:C3").merge() sheet.getRange("B3").value = "=AI.TRANSLATE(A6, B6)" sheet.getRange("B3").font.italic = true sheet.getRange("B3").font.color = Color.FromArgb(68, 114, 196) sheet.getRange("A5:C5").value = arrayOf( arrayOf("Source Text (English)", "Target Lang", "AI Translation") ) sheet.getRange("A5:C5").font.bold = true sheet.getRange("A5:C5").interior.color = Color.FromArgb(155, 194, 230) sheet.getRange("A5:C5").horizontalAlignment = HorizontalAlignment.Center sheet.getRange("A6").value = "Hello, how are you today?" sheet.getRange("B6").value = "zh-CN" sheet.getRange("B6").font.bold = true sheet.getRange("B6").horizontalAlignment = HorizontalAlignment.Center sheet.getRange("C6").formula2 = "=AI.TRANSLATE(A6, B6)" sheet.getRange("C6").font.italic = true sheet.getRange("C6").font.size = 11.0 sheet.getRange("A6:C6").borders.lineStyle = BorderLineStyle.Thin sheet.getRange("A6:C6").borders.color = Color.FromArgb(200, 200, 200) // ============ Example 2: Batch Translation ============ sheet.getRange("A9:C9").merge() sheet.getRange("A9").value = "Example 2: Batch Translation (English → Japanese)" sheet.getRange("A9").font.bold = true sheet.getRange("A9").font.size = 14.0 sheet.getRange("A9").font.color = Color.GetWhite() sheet.getRange("A9").interior.color = Color.FromArgb(90, 126, 158) // Green background sheet.getRange("A9").horizontalAlignment = HorizontalAlignment.Center sheet.getRange("A9").verticalAlignment = VerticalAlignment.Center sheet.getRange("A9").rowHeight = 30.0 sheet.getRange("A11").value = "Formula:" sheet.getRange("A11").font.bold = true sheet.getRange("A11").font.size = 11.0 sheet.getRange("A11").interior.color = Color.FromArgb(217, 225, 242) sheet.getRange("B11:C11").merge() sheet.getRange("B11").value = "=AI.TRANSLATE(A14:A18, B14)" sheet.getRange("B11").font.italic = true sheet.getRange("B11").font.color = Color.FromArgb(68, 114, 196) sheet.getRange("A13:C13").value = arrayOf( arrayOf("Source Text (English)", "Target Lang", "AI Translation (Japanese)") ) sheet.getRange("A13:C13").font.bold = true sheet.getRange("A13:C13").interior.color = Color.FromArgb(155, 194, 230) sheet.getRange("A13:C13").horizontalAlignment = HorizontalAlignment.Center sheet.getRange("A14:A18").value = arrayOf>( arrayOf("Good morning!"), arrayOf("Thank you very much."), arrayOf("How much does this cost?"), arrayOf("Where is the nearest restaurant?"), arrayOf("Have a nice day!") ) sheet.getRange("A14:C18").borders.lineStyle = BorderLineStyle.Thin sheet.getRange("A14:C18").borders.color = Color.FromArgb(200, 200, 200) sheet.getRange("B14").value = "ja-JP" sheet.getRange("B14:B18").merge() sheet.getRange("B14").font.bold = true sheet.getRange("B14").font.size = 12.0 sheet.getRange("B14").horizontalAlignment = HorizontalAlignment.Center sheet.getRange("B14").verticalAlignment = VerticalAlignment.Center sheet.getRange("B14:B18").borders.lineStyle = BorderLineStyle.Thin sheet.getRange("B14:B18").borders.color = Color.FromArgb(200, 200, 200) sheet.getRange("C14").formula2 = "=AI.TRANSLATE(A14:A18, B14)" sheet.getRange("C14:C18").font.italic = true // Add section separators sheet.getRange("A1:C7").borders[BordersIndex.EdgeBottom].lineStyle = BorderLineStyle.Double sheet.getRange("A1:C7").borders[BordersIndex.EdgeBottom].color = Color.FromArgb(142, 172, 219) workbook.calculate() // As AI functions operate on an asynchronous computation function, // it is necessary to await the completion of their calculation processes. workbook.waitForCalculationToFinish() // Set print settings sheet.pageSetup.fitToPagesTall = 1 sheet.pageSetup.fitToPagesWide = 1 sheet.pageSetup.isPercentScale = false sheet.pageSetup.orientation = PageOrientation.Landscape // Save to a pdf file workbook.save("Translate.pdf")