تقنية

كيفية استخراج الصور من مستندات جوجل وشرائح جوجل


تعرف على كيفية استخراج جميع الصور المضمنة من مستند Google أو عرض شرائح Google وحفظها كملفات فردية في مجلد محدد في Google Drive.

تخيل أنك تعمل على مستند Google طويل، أو عرض تقديمي من Google Slides، وتحتاج إلى استخراج جميع الصور المضمنة من النص وحفظها كملفات فردية.


الحل البسيط لمعالجة هذه المشكلة هو كما يلي: قم بتحويل مستند Google أو Google Slide إلى صفحة ويب. وإليك كيف يمكنك القيام بذلك:

انتقل إلى القائمة “ملف”. حدد القائمة الفرعية “مشاركة” ثم اختر “نشر على الويب”. سيتم إنشاء صفحة ويب عامة تحتوي على جميع الصور من المستند أو الشريحة الخاصة بك. يمكنك ببساطة النقر بزر الماوس الأيمن فوق الصورة الموجودة على الصفحة وتحديد خيار “حفظ الصورة” وتنزيلها على القرص المحلي لديك.

ما ناقشناه للتو هو عملية يدوية ولكن يمكننا بسهولة تشغيلها تلقائيًا بمساعدة Google Apps Script.

افتح مستند Google الذي يحتوي على الصور، وانتقل إلى قائمة الإضافات واختر Apps Script. انسخ وألصق الكود أدناه وقم بتشغيل saveGoogleDocsImages وظيفة تنزيل جميع الصور إلى مجلد معين في Google Drive.

يتم ترقيم الصور بشكل تسلسلي وامتداد الملف هو نفس امتداد الصورة المضمنة المضمنة.

function saveGoogleDocsImages() {
  
  const folderName = 'Document Images';

  
  const folders = DriveApp.getFoldersByName(folderName);

  
  const folder = folders.hasNext() ? folders.next() : DriveApp.createFolder(folderName);

  
  DocumentApp.getActiveDocument()
    .getBody()
    .getImages()
    .forEach((image, index) => {
      
      const blob = image.getBlob();

      
      const [, fileExtension] = blob.getContentType().split('/');

      
      const fileName = `Image #${index + 1}.${fileExtension}`;

      
      blob.setName(fileName);

      
      folder.createFile(blob);

      
      Logger.log(`Saved ${fileName}`);
    });
}

يشبه رمز Apps Script لتنزيل الصور من عرض تقديمي لـ Google Slides. تتكرر الوظيفة على الشرائح الموجودة في العرض التقديمي، ثم لكل شريحة، تتكرر الوظيفة على الصور الموجودة في تلك الشريحة.

function extractImagesFromSlides() {
  
  const folderName = 'Presentation Images';

  
  const folders = DriveApp.getFoldersByName(folderName);

  
  const folder = folders.hasNext() ? folders.next() : DriveApp.createFolder(folderName);

  
  SlidesApp.getActivePresentation()
    .getSlides()
    .forEach((slide, slideNumber) => {
      
      slide.getImages().forEach((image, index) => {
        
        const blob = image.getBlob();

        
        const fileExtension = blob.getContentType().split('/')[1];

        const fileName = `Slide${slideNumber + 1}_Image${index + 1}.${fileExtension}`;

        
        blob.setName(fileName);

        
        folder.createFile(blob);

        Logger.log(`Saved ${fileName}`);
      });
    });
}



Source link

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *

زر الذهاب إلى الأعلى