早上好,兩種不同的條件自動黏合文本字段
首先,在此先感謝任何幫助,您可以提供
我會明確地試圖解釋自己儘可能:
我有一些30ish相等的文本字段,在窗體中有一個不可修改的寬度和高度。輸入到文本字段時,用戶將有兩種選擇:
一)字類型字
b)由另一烴源文本塊複製並粘貼到文本字段。
現在,我想要的是有兩個不同的選項來自動選項卡到下一個文本字段,如果第一個已被填寫。
這些都是我曾嘗試到現在的兩個選項,這兩個工作對自己使用時,但不會一起工作:
一)自定義按鍵腳本,讓說,Field.0:
if (event.fieldFull) {
this.getField("Field.1").setFocus();
}
二)自定義的模糊腳本Field.0:
var temp = new Array();
temp = this.getField("Field.0").value.split(' ');
var rest = "";
ini = temp[0] + ' ';
var charsRead = temp[0].length + 1;
var index = 1;
while ((charsRead + temp[index].length) < 110){
ini = ini + temp[index] + ' ';
index++;
charsRead = charsRead + temp[index].length + 1;
}
for (var i=index ; i < temp.length-1 ; i++){
rest = rest + temp[i] + ' ';
}
this.getField("Field.0").value = ini;
this.getField("Field.1").value = rest;
this.getField("Field.1").setFocus();
你可能可能已經注意到,我不是專家(甚至還沒有接近一個......)的編劇,所以該代碼可能效率低下或重複。
腳本的作用是:將粘貼到數組中的單詞存儲到數組中(以便不將單詞分隔在單詞的中間),並將第一個擬合單詞複製到110個字符(任意數字有時太少,有時太多),然後將數組中剩餘的單詞粘貼到下一個字段中。
當用戶退出Field.0時,焦點被設置爲Field.1。如果文本仍然太長,那麼當他選中Field.1時,焦點將設置爲Field.2,並將第二個剩餘文本粘貼到該文本中。所以,他所要做的就是按Ctrl + V和TAB,TAB,TAB,直到所有文本都佔用必要的字段。
現在,爲了解決方法指向a),必須禁用滾動長文本,但是,用於解決問題b)的腳本是必需的。
我正在尋找的是一種獨立於用戶如何輸入文本的方式來自動選項卡,當字段已滿。我的意思是,文本已經達到了可視區域的盡頭。當輸入文本(我想它必須是按鍵腳本)或者粘貼一個長詞組(因爲按鍵在這裏不起作用)時或者當粘貼一個長詞組時,或者當粘貼一個長詞組時,或者當粘貼一個長詞組時
對不起,很長的文章,並再次感謝您的幫助。
BTW:使用Adobe Acrobat X Pro。
首先,感謝您的響應
chunk()
功能。但是,最好不要使用等寬字體。這是由於與使用非等寬字體的PDF文檔的其餘部分的同質性。 最糟糕的是,我最終會使用一個,但現在我想避免它。我剛剛看到,在Acrobat 8.0中,在文本字段選項中有一個「複選框」,您可以將大小限制爲可見區域。我想知道勾選複選框時會調用哪個函數。這可能被證明是一個可行的解決方案。 –恐怕我無法幫助您使用Acrobat特定的函數,也不知道有什麼方法可以檢測字符串是否溢出它的字段(以及在哪個索引處)。 – Cerbrus
恩,謝謝:) –