2014-09-23 9 views
5

के साथ पीडीएफ के थंबनेल कैसे बना सकता हूं, मैं उल्का (जिसे नोड पर बनाया गया है) और कलेक्शनसीएफएस (जो मुझे अंगूठे के लिए जीएम [ग्राफिक्स मैगिक] का उपयोग करने की अनुमति देता है) का उपयोग कर रहा हूं।मैं node.js और gm

मैं इसे स्वत: अपलोड किए गए चित्रों के थंबनेल बनाने के लिए निम्न कार्य करें:

new FS.Store.FileSystem("thumbs", { 
     transformWrite: function(fileObj, readStream, writeStream) { 
     gm(readStream, fileObj.name()).resize('100', '100').stream().pipe(writeStream); 
     }, 
     path: "/Volumes/Public/Thumbs", 
    }) 

transformWrite समारोह readStream (मूल छवि), यह और पाइप writeStream के परिणाम को संशोधित करता है प्राप्त करता है। मैं इसे पीडीएफ के थंबनेल कैसे बना सकता हूं?

+0

क्या आपने इस कोड को पीडीएफ फ़ाइल के साथ करने का प्रयास किया था? जहां तक ​​मैं कह सकता हूं, इसे काम करना चाहिए। शायद स्ट्रीम करने के लिए तर्क के रूप में "png" जोड़ें() – gpothier

उत्तर

1

यदि आप सिर्फ पीडीएफ के पहले पृष्ठ को थंबनेल के रूप में चाहते हैं। निम्न कार्य करें:

new FS.Store.FileSystem("thumbs", { 
    transformWrite: function(fileObj, readStream, writeStream) { 
    gm(readStream, fileObj.name() + '[0]').resize('100', '100').stream('png').pipe(writeStream); 
    }, 
    beforeWrite: function (fileObj) { 
    return { 
     extension: 'png', 
     type: 'image/png' 
    }; 
    }, 
    path: "/Volumes/Public/Thumbs", 
}) 
+0

इस प्रश्न पर काम करने के लिए बहुत बहुत धन्यवाद। मैं इसे आजमाने के लिए बहुत उत्साहित था! यह समाधान पूरी तरह से थंबनेल बनाता है, लेकिन किसी कारण से यूआरएल कभी काम नहीं कर रहा है। क्या आप fileObj.name() + '[0]' भाग के बारे में निश्चित हैं? –

+0

मैंने fileObj.name की कोशिश की, और slugify (fileObj.name) और मैंने इस तर्क को पहले इस तरह लिखने की कोशिश की: नाम: slugify (fileObj.name), लेकिन इसमें से कोई भी काम नहीं करता है। फ़ाइल वहां है, लेकिन उत्पन्न यूआरएल –

+0

से मेल नहीं खा रहा है, मुझे लगता है कि यह गलत है। छवियां ड्रॉपबॉक्स में ठीक दिखती हैं (मैं cfs: ड्रॉपबॉक्स का उपयोग कर रहा हूं) लेकिन जब मैं उन्हें डाउनलोड करता हूं, तो वे दूषित हो जाते हैं। मैंने देखा कि अगर मैं एक छवि अपलोड करता हूं, तो थंबनेल बनाया जाता है और सही तरीके से प्रदर्शित होता है। तो स्पष्ट रूप से पीडीएफ का थंबनेल बिल्कुल सही नहीं है। –