Преобразование CGM в EMF через C++

Преобразование CGM в EMF в C++. Программисты могут использовать пример кода API для пакетного преобразования CGM файлов в EMF с помощью VC++, GNU C++ в различных приложениях.

Преобразование CGM в EMF в C++

Как преобразовать CGM в EMF? Вы можете легко программно преобразовать документ из формата CGM в формат EMF с помощью современного C++ API обработки документов. Используйте всего несколько строк кода на языке C++ для высококачественного преобразования файлов. Библиотека Aspose.PDF позволит любому разработчику эффективно решать задачи преобразования CGM в EMF с помощью C++.

Более подробное описание фрагмента кода и других возможных форматов преобразования см. на страницах Документация. Кроме того, вы можете проверить другие конверсии форматов, которые поддерживаются нашей библиотекой.

Чтобы преобразовать CGM в EMF, мы будем использовать API Aspose.PDF для C++, который представляет собой многофункциональный, мощный и простой в использовании API преобразования для платформы C++. Ознакомьтесь с подробностями установки библиотеки на страницах Документация. Чтобы убедиться в преимуществах библиотеки, попробуйте использовать фрагмент кода, преобразованный CGM в EMF. Откройте диспетчер пакетов NuGet, найдите файл Aspose.PDF и установите его. Можно также использовать следующую команду из консоли диспетчера пакетов:

Package Manager Console

PM > Install-Package Aspose.PDF.Cpp

Как преобразовать CGM в EMF


Разработчики C++ могут легко загружать и конвертировать файлы CGM в EMF всего за несколько строк кода.

  1. Инициализация нового документа
  2. Создайте и установите экземпляр класса EMFDevice с помощью параметра «Размер и разрешение»
  3. Вызов метода emfDevice.process с указанием индекса страницы и пути к выходному файлу в качестве параметров
  4. Наконец, сохраните выходной файл EMF

Системные требования


Aspose.PDF для C++ поддерживается во всех основных операционных системах. Просто убедитесь, что у вас есть следующие предпосылки.

  • Microsoft Windows или совместимая ОС с средой выполнения C++ для 32-разрядной Windows, 64-разрядной Windows и 64-разрядной Linux.
  • Среда разработки, такая как Microsoft Visual Studio.
  • Aspose.PDF для библиотеки C++ DLL, на которую ссылается ваш проект.

Вот пример, демонстрирующий, как преобразовать CGM в EMF в C++. Чтобы преобразовать файл CGM в формат EMF, выполните следующие простые шаги. Сначала загрузите файл CGM, а затем просто сохраните его как файл EMF. Можно использовать полные имена файлов как для чтения CGM, так и для записи EMF. Выходное содержимое и форматирование EMF будут идентичны исходному документу CGM.

Пример: Преобразование CGM в EMF с помощью C++

Этот пример кода показывает преобразование CGM в EMF на C++

Input file:

File not added

Output format:

EMF

Output file:

void Convert_PDF_To_Images::ConvertPDFusingImageDevice()
{
    std::clog << __func__ << ": Start" << std::endl;

    // String for path name
    String _dataDir("C:\\Samples\\Conversion\\");

    // String for input file name
    String infilename("sample.cgm");
    
    // Open document
    auto document = MakeObject<Document>();

    // Add empty page in empty document
    auto page = document->get_Pages()->Add();
    auto image = MakeObject<Aspose::Pdf::Image>();
    image->set_File(_dataDir + infilename);

    // Add image on a page
    page->get_Paragraphs()->Add(image);

    // Create Resolution object            
    auto resolution = MakeObject<Aspose::Pdf::Devices::Resolution>(300); //300 dpi

    System::SmartPtr<Aspose::Pdf::Devices::ImageDevice>
    emfDevice = MakeObject<Aspose::Pdf::Devices::EmfDevice>(resolution);
    
    auto document = MakeObject<Document>(_dataDir + u"ConvertAllPagesToBmp.pdf");

    ConvertPDFtoImage(bmpDevice, u"emf", document);

    std::clog << __func__ << ": Finish" << std::endl;

}

void Convert_PDF_To_Images::ConvertPDFtoImage(
 System::SmartPtr<Aspose::Pdf::Devices::ImageDevice> imageDevice,
 String ext, System::SmartPtr<Document> document)
{
    // String for path name
    String _dataDir("C:\\Samples\\Conversion\\");

    for (int pageCount = 1; pageCount <= document->get_Pages()->get_Count(); pageCount++)
    {
    String outfilename = String::Format(u"{0}PageToBmp{1}_out.{2}",
    _dataDir, pageCount, ext);

    auto imageStream = System::IO::File::OpenWrite(outfilename);

    // Create Resolution object
    auto resolution = MakeObject<Aspose::Pdf::Devices::Resolution>(300);

    // Convert a particular page and save the image to stream
    imageDevice->Process(document->get_Pages()->idx_get(pageCount), imageStream);

    // Close stream
    imageStream->Close();
    }
}

Библиотека C++ для преобразования CGM в EMF

Aspose.PDF для C++ — это мощная библиотека обработки, которая позволяет разработчикам создавать, читать и обрабатывать PDF-документы без использования Adobe Acrobat. Он предоставляет широкий спектр функций, таких как создание форм, добавление/редактирование текста, управление страницами PDF, добавление аннотаций, обработка пользовательских шрифтов и многое другое.

Aspose.PDF для C++ — это библиотека, которая позволяет разработчикам добавлять возможности обработки PDF в свои приложения. API можно использовать для создания 32-разрядных и 64-разрядных приложений любого типа для создания, чтения, преобразования и обработки PDF-файлов без использования Adobe Acrobat.

Подробное объяснение и примеры для каждого класса и метода можно найти в Aspose.PDF для библиотеки C++ в справочнике по API. А также рекомендую посмотреть Документацию.