0

我有一个“数据”字段,其中包含正确显示的 Unicode 文本。我想复制其中的一部分并将其放入另一个名为“someData”的字段中。

我在一个按钮中尝试了以下脚本

on mouseUp
  put word 2 of line 1 of the unicodeText of field "data" into t
  set the unicodeText of field "someData" to t
end mouseUp

非 Unicode 文本在“someData”字段中显示良好,但 Unicode 文本则不能。

4

4 回答 4

1

您可能会使用 UTF8 编码然后解析然后重新编码

on mouseUp
    put word 2 of line 1 of uniDecode(the unicodeText of field "data","UTF8") into t
    set the unicodeText of field "someData" to uniEncode(t,"UTF8")
end mouseUp
于 2013-04-20T03:32:05.730 回答
1
on mouseUp
   put unicode the unicodeText of word 2 of field "data" into field "someData"
end mouseUp

应该管用。

马立克

于 2013-04-20T21:48:19.160 回答
0

我不是 unicode 方面的专家,但可能有线索表明 LC 将大多数 unicode 内容视为属性。因此,可以设置一个字段的 uniCodeText:

set the unicodeText of fld 1 to "U+400"

但是不能在变量中设置该属性或任何属性。考虑以下两个处理程序。假设存在两个字段,“fld 1”和“fld 2”。

on mouseUp
   set the useUnicode to "true"
   set the unicodeText of fld 1 to "U+400" -- an example
   set the unicodeText of fld "f2" to the uniCodeText of fld 1
end mouseUp

on mouseUp
   set the useUnicode to "true"
   set the unicodeText of fld 1 to "U+400"
   put fld 1 into temp
   set the unicodeText of fld "f2" to temp
end mouseUp

第一个有效,第二个无效。在您的示例中,您尝试将显示的 uniCode 放入变量中。我不认为你可以“放”那种东西。你必须设置一个属性。

话虽如此,请查看“put uniCode”命令。这可能会绕过财产问题。如果有,请回信。

克雷格纽曼

于 2013-04-20T03:13:41.997 回答
0

这是您可以测试的另一种单线:

set the unicodeText of field 2 to the unicodeText of word 2 of field 1
于 2013-04-22T09:00:33.923 回答