2012-04-12 9 views
5

Tôi đang tạo một tập lệnh Javascript để sử dụng với Indesign Server (CS3).Indesign Server Scripting Textarea.Contents

Cố gắng tìm tất cả các văn bản trong tài liệu và tìm nội dung của chúng.

Tôi có thể dễ dàng lặp qua tất cả các văn bản, sử dụng các chức năng do Adobe cung cấp.

Tuy nhiên, khi tôi cố gắng lấy nội dung của TextArea, tôi chỉ nhận được nội dung hiển thị trong vùng văn bản đó chứ không phải văn bản cổng ngoài.

document.TextAreas[0].contents 

Nói cách khác, nếu tài liệu Indesign có chứa văn bản, nhưng không khớp, thì tập lệnh của tôi không trả về văn bản ẩn.

Hoặc, để đặt lại một từ khác. Tôi có thể lấy toàn bộ nội dung khi thuộc tính 'tràn' của 'textarea' là sai;

Toàn mã:

function FindAllTextBoxes(){ 
     var alertMessage; 
     for (var myCounter = myDoc.textFrames.length-1; myCounter >= 0; myCounter--) { 
     var myTextFrame = myDoc.textFrames[myCounter]; 
      alertMessage += "\nTextbox content: " + myTextFrame.contents; 
      alertMessage += "\nOverflow:" + myTextFrame.overflows; 
      alert(alertMessage); 
     } 
} 

Làm thế nào tôi có thể đọc toàn bộ nội dung của Textarea?

+0

Không thực sự là câu trả lời tôi đang tìm kiếm, nhưng tôi đã tìm thấy cách giải quyết khác. Về cơ bản, trước khi đọc nội dung, tôi thay đổi kích thước phông chữ thành một cái gì đó thực sự nhỏ (1pt). 'myTextFrame.paragraphs [0] .pointSize = 1; ' –

Trả lời

3

Một chút muộn, nhưng chỉ cần đi qua này. Đây là thử nghiệm với InDesign CS5 - dòng sau sẽ nhận được tất cả các văn bản tràn từ một TextFrame:

var content = myTextFrame.parentStory.contents; 

Hope this helps!