Paint.setTypeface不适用于斜体或我正在以错误的方式做某事.我可以创建普通,粗体,等宽和衬线文本,但我不能创建斜体文本.它总是看起来很正常(或者在粗体斜体的情况下,它看起来很大胆).
//This will appear monospace
paint.setTypeface(Typeface.MONOSPACE);
canvas.drawText("foo", 10, 10, paint);
//This will appear serif
paint.setTypeface(Typeface.SERIF);
canvas.drawText("foo", 10, 10, paint);
//This will appear bold
paint.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));
canvas.drawText("foo", 10, 10, paint);
//This will NOT appear italic <=== PROBLEM
paint.setTypeface(Typeface.defaultFromStyle(Typeface.ITALIC));
canvas.drawText("foo", 10, 10, paint);
// This isn't working either <=== PROBLEM
paint.setTypeface(Typeface.create(Typeface.SANS_SERIF, Typeface.ITALIC));
Run Code Online (Sandbox Code Playgroud)
所以现在问题是:有一个已知的解决方法吗?我的简单目标是用斜体绘制一些单词......
Sonar在我们的Java项目中指出了这个错误.欢迎任何安全编程的建议!
URL url = getClass().getResource("/myWonderfulResource.txt");
if (url == null) {
throw new IllegalStateException("File not found: /myWonderfulResource.txt");
}
Run Code Online (Sandbox Code Playgroud) 为什么 base64Decode 无法解码由 base64Encode 编码的内容?
function test_base64encoding_decoding() {
var file = DriveApp.getFileById("<google drive png file id>");
// Encode file bytes as a string
var base64EncodedBytes = Utilities.base64Encode(file.getBlob().getBytes(), Utilities.Charset.UTF_8);
// Decode string
var bytes = Utilities.base64Decode(base64EncodedBytes, Utilities.Charset.UTF_8);
// create new file
var blob = Utilities.newBlob(bytes, file.getMimeType(), file.getName() + ".copy.png");
file.getParents().next().createFile(blob);
}
Run Code Online (Sandbox Code Playgroud)
此 google 应用程序脚本从现有的 google 驱动器源文件中检索字节,并将这些字节转换为 base64 编码字符串 (base64EncodedBytes)。然后它将字符串转换回普通的字节数组,并在同一文件夹中创建一个全新的文件。
现在,如果我们查看 Google Drive 中的最终结果,我们可以看到复制的文件(带有后缀“.copy.png”的文件)大小不同并且已损坏。
这种编码/解码 API 用法有什么问题?
可以设置范围边框样式和颜色。现在的问题是:如何获得编程风格的边框样式?
我正在寻找类似的东西:
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var b2 = sheet.getRange("B2");
var border = b2.getBorder(); // does not exists but b2.setBorder does :-/Run Code Online (Sandbox Code Playgroud)