InDesign डॉक्यूमेंट में अधूरे पन्नों को छुपाना


9

मैं अक्सर इनडिज़ाइन दस्तावेज़ों पर काम करता हूं जिनमें ऐसे खंड होते हैं जो पूर्ण होते हैं और मैं एक ग्राहक के साथ साझा करने के लिए पीडीएफ को निर्यात करना चाहता हूं लेकिन अन्य अनुभाग या पृष्ठ हैं जो कार्य-प्रगति में हैं जिन्हें मैं छिपाना पसंद करूंगा।

मेरा प्रश्न यह है कि क्या InDesign के भीतर पृष्ठों को "स्किप-फॉर-एक्सपोर्ट" के रूप में चिह्नित करने का एक तरीका है, ताकि मुझे अपना पूरा करने के बाद उन पृष्ठों को मैन्युअल रूप से हटाना न पड़े (और पृष्ठ संख्या क्रम से बाहर हो) निर्यात?

अग्रिम धन्यवाद, माइकल

जवाबों:


4

पृष्ठ संख्या के कारण, यह एक सही समाधान नहीं हो सकता है। लेकिन यहाँ मैं स्क्रिप्टिंग का उपयोग करके क्या समाधान आया:

इस डाउनलोड नमूना फ़ाइल और अपने सिस्टम को बचाने के लिए। यह CS5 से IDML है, इसलिए इसे CS4 + से काम करना चाहिए।

आप पेज 3 और 4 पर ध्यान देंगे कि पाठ का एक बड़ा गुलाबी ब्लॉक है जो DRAFT कहता है:

DRAFT स्क्रीनशॉट

आप ऊपर खींचने तो Script Labelपैनल ( Window> Utilities> Script Label), आप देखेंगे कि यह "DRAFT_LABEL" लेबल है।

अब, निम्नलिखित स्क्रिप्ट को कॉपी करें, एक टेक्स्ट एडिटर में कॉपी / पेस्ट करें, और इसे अपनी लिपियों की निर्देशिका (as .js या .jsx फ़ाइल में, कोई फर्क नहीं पड़ता) में सहेजें:

try // to get the path of the file that's active when you run the script.
{
    var OpenFilePath = app.documents.item(0).fullName; // Declare a variable representing the open document.
    var OpenFile = app.open(File(OpenFilePath), true, 1332757360); // Create a duplicate to work with. In Adobe's world, "1332757360" means "open a copy".
}
catch (err)
{
    var OpenFile = "error";
    alert("Please save this file before using the script.");
}

var OpenFileLength = OpenFile.pages.length; // Get number of pages of open document and master file.

// These help make the array that stores master markers.
var ArrayCounter = 0;
var FindTheMarkers = new Array();

for (var i=0; i<OpenFileLength; i++) // Loop through every page.
{
    ItemsOnPage = OpenFile.pages.item(i).pageItems.length; // Get the number of items on the page.

    for (var j=0; j<ItemsOnPage; j++) // Loop through every item.
    {
        var ScriptLabel = OpenFile.pages.item(i).pageItems.item(j).label;   

        if (ScriptLabel != "" && ScriptLabel.indexOf("DRAFT_LABEL") == 0) // If the item has a label and it equals what we want it to,
        {
            FindTheMarkers[ArrayCounter] = i; // Put the page number in the array.
            ArrayCounter++; // Advance the counter for next time!
        }
    }
}

var numberToSubtract = 0; // This compensates for screwing up the page counter when you remove a page.

for (i=0; i<FindTheMarkers.length; i++) // Loop through the array and remove pages!
{
    OpenFile.pages.item(FindTheMarkers[i] - numberToSubtract).remove();
    numberToSubtract++;
}

इससे पहले कि आप स्क्रिप्ट को चलाएं, दस्तावेज़ को सहेजें । फिर इसे चलाएं!

मैं एक डिज़ाइनर हूं, जो स्क्रिप्ट करता है और आसपास दूसरा रास्ता नहीं है, इसलिए यह सबसे सुरुचिपूर्ण कोड नहीं हो सकता है। लेकिन जो यह कर रहा है वह आपके दस्तावेज़ के माध्यम से उन पृष्ठ आइटमों के लिए स्कैन कर रहा है जिनमें "DRAFT_LABEL" टैग है, फिर यह उस पृष्ठ संख्या को एक सरणी में संग्रहीत करता है। एक बार जब यह स्कैनिंग हो जाती है, तो यह उपयुक्त पृष्ठों को हटा देती है।

फिर आपको एक नई फ़ाइल के साथ छोड़ दिया जाता है जिसमें ड्राफ्ट पृष्ठ हटा दिए गए हैं!


1
उलझा हुआ। तकनीकी। लेकिन एक आकर्षण काम करता है।
डैन हैनली

1
+1 - अन्य निर्यात सेटिंग्स के लिए संग्रहित प्रीसेट का उपयोग करके पृष्ठ श्रेणियों को निर्यात करने के लिए निर्दिष्ट करने के लिए सरणी का उपयोग करने के लिए एक और दृष्टिकोण होगा। यह गैर-विनाशकारी होगा।
15

@ अनुपात - हाँ! मैं उस ओपी का उल्लेख करने जा रहा था जो एक संभव समाधान था, लेकिन तब मैंने ऐसा नहीं किया क्योंकि मुझे यकीन नहीं था; मैंने कभी इसे काम करने की कोशिश नहीं की। यह एक बढ़िया विकल्प है, खासकर यदि आप हर समय उसी तरह चीजों का निर्यात करते हैं। यदि आप निर्यात सेटिंग्स को नियंत्रित करना चाहते हैं जैसा कि आप आमतौर पर करते हैं, तो उपरोक्त समाधान बेहतर काम करता है। मुझे यह जोड़ने के लिए भी बाध्यता है कि यह एक गैर-विनाशकारी समाधान है ... पहली बात यह है कि एक प्रति खुली है ताकि मूल अछूता हो।
ब्रेंडन

2

आप निर्यात संवाद विंडो में पीडीएफ में निर्यात करने के लिए वांछित पृष्ठों को इनपुट कर सकते हैं ...

निर्यात

किसी श्रेणी के लिए संख्याओं के बीच हाइफ़न का उपयोग करें, और अलग-अलग पृष्ठ संख्याओं को अलग करने के लिए अल्पविराम।

उपरोक्त पेज 14 के माध्यम से 11 को छोड़कर, 16 को, फिर पृष्ठ 19 के बाद कुछ भी।

यदि आप पीडीएफ को निर्यात करना चाहते हैं जैसे कि वे पृष्ठ दस्तावेज़ में मौजूद नहीं थे इसलिए पृष्ठ संख्या निर्यात से मिलान करने के लिए फिर से आती है, तो नहीं । मुझे निर्यात किए गए पृष्ठों के आधार पर पृष्ठ क्रमांकन को रद्द करने का कोई तरीका नहीं पता है। आपको पहले Indesign डॉक्यूमेंट में पेजों को हटाना होगा।


1
हाय स्कॉट और उत्तर के लिए धन्यवाद। मुझे कुछ पृष्ठों को निर्यात करने की क्षमता के बारे में पता है लेकिन यह मेरे लिए इस पर नज़र रखता है कि दस्तावेज़ बढ़ता है और पृष्ठ संख्याओं का सिकुड़ना आदर्श नहीं है। मैं वास्तव में जिस चीज की तलाश कर रहा हूं, वह है कि मैं उस पर काम करते समय ड्राफ्ट के रूप में एक पेज बनाऊं और सभी गैर-ड्राफ्ट पृष्ठों के पीडीएफ को प्रकाशित कर सकूं।
माइकल

@ मिचेल मैं संभव नहीं है।
स्कॉट
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.