1


1

Flexの貼り付けとTextFlowへのインポート
  • Spark RichEditableText内で既存のtextFlowを使用し、これに新しいテキストを既存のテキスト形式で貼り付けたい(貼り付け形式を無視)*

2つの大きな問題があります*-形式*新しいテキストを貼り付けるとき、まったく同じ形式が必要で、テキストのない行で異なるフォントサイズが取得されます。

  • 改行*既存のtextFlowにインポートするときに問題が発生するため、 エクスポートして保存するには、改行を追加する必要があります。

Flash Builder 4、Actionscript 3、およびSparkコンポーネントを使用します。

最初にペーストテキストを取得し、textareaに配置します。

event.preventDefault();
event.stopPropagation();
event.stopImmediatePropagation();

var s : String = Clipboard.generalClipboard.getData( ClipboardFormats.TEXT_FORMAT, ClipboardTransferMode.CLONE_ONLY ) as String;
s = s.replace(new RegExp(String.fromCharCode(9),"gm")," ");
s = s.replace(new RegExp(String.fromCharCode(10),"gm"),"#break#");
s = s.replace(new RegExp(String.fromCharCode(11),"gm"),"#break#");
s = s.replace(new RegExp(String.fromCharCode(12),"gm"),"#break#");
s = s.replace(new RegExp(String.fromCharCode(13),"gm"),"#break#");
s = s.replace(new RegExp("#break#","gm"),"\n");

var pflow : TextFlow = TextConverter.importToFlow(s,TextConverter.PLAIN_TEXT_FORMAT);
var x : String = pflow.getText(0,pflow.textLength);
var mgr:EditManager = txtArea.textFlow.interactionManager as EditManager;
mgr.overwriteText( x );

保存するためにテキストを取得するとき、改行を変更する必要があります。それ以外の場合は、元に戻すときにエラーになります。

var text : String = TextConverter.export( txtArea.textFlow, TextConverter.TEXT_FIELD_HTML_FORMAT, ConversionType.STRING_TYPE ) as String;
text = text.replace(new RegExp("\n","gm"),"
");
SlideItemTextVO(_data).text = text;

0 Answer