मैं विंडोज एपीआई में एक फ़ाइल का थंबनेल प्राप्त करने की कोशिश कर रहा हूं। मुझे एक रास्ता मिला, लेकिन कोड उदाहरण के लिए विंडोज संस्करण 8 न्यूनतम की आवश्यकता है, मैं कम से कम 7 या Vista में काम करता हूं, अधिमानतः एक्सपी में काम करता हूं। यदि थंबनेल प्राप्त करने का एक प्लेटफार्म स्वतंत्र तरीका है तो मैं ऐसा करना पसंद करूंगा, लेकिन मैं एक नहीं ढूंढ पा रहा हूं।विंडोज एपीआई का उपयोग कर फ़ाइल का थंबनेल कैसे प्राप्त करें?
उत्तर
एक 7 विन सिस्टम पर powershell का उपयोग करना:
PS> $myimage = [System.Drawing.Image]::FromFile("c:\image.jpg");
PS> $mythumb = $myimage.GetThumbnailImage(72, 72, $null, [intptr]::Zero);
PS> $mythumb.Save("c:\thumb.jpg")
ऐसा नहीं होगा क्योंकि यह पूरी छवि प्राप्त करता है, थंबनेल कैश वाला बिंदु ज्यादातर प्रदर्शन होता है। –
@DudeDawg [इस] के अनुसार (http://msdn.microsoft.com/en-us/library/system.drawing.image.getthumbnailimage।एएसपीएक्स), यदि यह मौजूद है तो यह थंबनेल प्राप्त करेगा: _ "यदि छवि में एक एम्बेडेड थंबनेल छवि है, तो यह विधि एम्बेडेड थंबनेल को पुनर्प्राप्त करती है और इसे अनुरोधित आकार में स्केल करती है। अगर छवि में एम्बेडेड थंबनेल छवि नहीं है, तो यह विधि मुख्य छवि को स्केल करके एक थंबनेल छवि बनाता है। "_ – David
यह सबसे अच्छा मैं ढूँढने में सक्षम था: http://msdn.microsoft.com/en-us/library/windows/desktop/bb774628(v=vs.85).aspx
गंभीरता से, इस पर कम से कम XP में उपलब्ध किया जाना चाहिए था, ओह अच्छी तरह से।
कोई भी एपीआई नहीं है जो सभी विंडोज संस्करणों पर काम करता है, क्योंकि माइक्रोसॉफ्ट एक विंडोज संस्करण से दूसरे संस्करण में थंबनेल एपीआई बदलता रहता है।
Win2k पर करने के लिए और विस्टा (बाद के संस्करणों के बारे में निश्चित नहीं) सहित अप, आप SHGetDesktopFolder()
और IShellFolder::ParseDisplayName()
(या SHParseDisplayName()
XP पर और बाद में) का उपयोग कर फ़ाइल के मूल फ़ोल्डर, तो IShellFolder::GetUIObjectOf()
का उपयोग वांछित बच्चे को पुनः प्राप्त करने के लिए एक IShellFolder
प्राप्त कर सकते हैं फ़ाइल का IExtractImage
इंटरफ़ेस, और उसके बाद वास्तविक छवि को पुनर्प्राप्त करने के लिए छवि आकार और Extract()
विधि सेट करने के लिए GetLocation()
विधि को कॉल करें।
1) IThumbnailProvider
का उपयोग करें:
Vista पर और बाद में, आप या तो कर सकते हैं। इसे IInitializeWith...
इंटरफ़ेस (IInitializeWithStream
, IInitializeWithItem
, या IInitializeWithFile
) में से एक के लिए पूछें, यह बताएं कि आप किस फ़ाइल में रूचि रखते हैं, और उसके बाद वास्तविक छवि प्राप्त करने के लिए GetThumbnail()
विधि को कॉल करें। वैकल्पिक रूप से, आप वांछित फ़ाइल के लिए IShellItem
प्राप्त कर सकते हैं और फिर फ़ाइल IThumbnailProvider
प्राप्त करने के लिए BindToHandler
विधि पर कॉल कर सकते हैं।
2) IThumbnailCache
का उपयोग करें। छवि प्राप्त करने के लिए IShellItem
वांछित फ़ाइल का प्रतिनिधित्व GetThumbnail()
विधि को पास करें।
3) IShellItemImageFactory
का उपयोग करें। किसी दिए गए फ़ाइल के लिए इस इंटरफ़ेस को प्राप्त करने के लिए SHCreateItemFrom...()
फ़ंक्शंस (SHCreateItemFromIDList()
, SHCreateItemFromParsingName()
, SHCreateItemFromRelativeName()
, SHCreateItemInKnownFolder()
, SHCreateItemWithParent()
) का उपयोग करें, फिर इसे GetImage()
विधि पर कॉल करें।
- 1. जावा: फ़ाइल से थंबनेल कैसे प्राप्त करें
- 2. विंडोज एपीआई का उपयोग कर सी ++ में कैसे खेलें?
- 3. लूपबैक एपीआई एक्सप्लोरर का उपयोग कर फ़ाइल कैसे अपलोड करें?
- 4. सी # में एक विंडो का थंबनेल कैसे प्राप्त करें?
- 5. एपीआई का उपयोग कर पेपैल सदस्यता का प्रबंधन कैसे करें?
- 6. छवियां थंबनेल फ़ाइल पथ प्राप्त करें
- 7. बीएमपी फ़ाइल का थंबनेल कैसे बनाएं?
- 8. विंडोज 8 में StreamWriter का उपयोग कर फ़ाइल कैसे लिखें?
- 9. गोलांग: विंडोज 10 एपीआई/यूडब्ल्यूपी/सिस्टम का उपयोग कर। WindowsRuntime?
- 10. डीएलएल का फ़ाइल नाम कैसे प्राप्त करें?
- 11. खुली फ़ाइल संवाद नियंत्रण का उपयोग कर फ़ाइल का चयनित पथ और नाम कैसे प्राप्त करें
- 12. आईओएस निजी एपीआई का उपयोग कैसे करें?
- 13. जावा एपीआई का उपयोग कैसे करें?
- 14. विंडोज कमांड प्रॉम्प्ट का उपयोग कर विंडोज सेवा स्थापित करें?
- 15. विंडोज पर पीपीपी का उपयोग कैसे करें?
- 16. एंड्रॉइड एपीआई का उपयोग कर एंड्रॉइड से वाईफाई नेटवर्क का नाम कैसे प्राप्त करें?
- 17. logging.conf फ़ाइल का उपयोग कर RotatingFileHandler का उपयोग कर फ़ाइल में सबकुछ लॉग कैसे करें?
- 18. Nuget.Core का उपयोग कर प्रीरलेज्ड पैकेज सूची कैसे प्राप्त करें?
- 19. विंडोज एपीआई का उपयोग कर स्क्रीन और माउस पॉइंटर कैप्चर कैसे करें?
- 20. वेबसाइट का थंबनेल जेनरेट करें?
- 21. PHP और वीडियो में पीडीएफ फ़ाइल का थंबनेल स्नैपशॉट कैसे प्राप्त करें
- 22. Guzzle 6 का उपयोग करके फ़ाइल अपलोड करें एपीआई एंडपॉइंट
- 23. पीआईपी का उपयोग कर विंडोज पर पिल्लो कैसे स्थापित करें?
- 24. क्यूटी का उपयोग कर विंडोज सेवा कैसे स्थापित करें?
- 25. आरईएसटी एपीआई का उपयोग कर आरक्यूएम में कैसे लॉगिन करें?
- 26. विंडोज में RMySQL का उपयोग कैसे करें?
- 27. वेबसाइट का थंबनेल कैसे बनाएं?
- 28. "System.Drawing.Image" का फ़ाइल आकार कैसे प्राप्त करें
- 29. CURL का उपयोग कर गिटलैब समस्याओं का उपयोग कैसे करें?
- 30. मुख्यालय यूट्यूब थंबनेल कैसे प्राप्त करें?
संभावित डुप्लिकेट [सी # विंडोज एपीआई के माध्यम से फ़ाइल से थंबनेल प्राप्त करें] (http://stackoverflow.com/questions/1439719/c-sharp-get-thumbnail-from-file-via-windows-api) – SLaks
नहीं, यह एक डुप्लिकेट नहीं है, मैं विंडोज एपीआई के बारे में एक सवाल पूछ रहा हूं, नहीं .net api। या आप मुझे बता रहे हैं कि मैं सामान्य विंडोज क्लाइंट प्रोग्राम से .NET एपीआई का उपयोग कर सकता हूं, उस मामले में बताएं कि कैसे। –
वह .NET API अंतर्निहित विंडोज एपीआई के चारों ओर एक रैपर है। – SLaks