كيفية تحويل EPS إلى TIFF باستخدام C ++

في هذا الموضوع ، سوف نستكشف كيفية ** تحويل EPS إلى TIFF باستخدام C ++ **. ستلاحظ كيفية تحميل ملف EPS المدخل وتحويله إلى صورة في C ++ باستخدام استدعاءات API بسيطة.

خطوات تحويل EPS إلى TIFF باستخدام C ++

  1. قم بتثبيت Aspose.Page for C++ من NuGet package Manager Tool
  2. أضف مرجعًا إلى مساحة الاسم Aspose::Page
  3. حدد ImageFormat الناتج وقم بتهيئة تدفق الإدخال
  4. تحميل ملف EPS الإدخال باستخدام كائن فئة PsDocument
  5. قم بتعيين خصائص ImageSaveOptions وحفظ ملف TIFF الناتج

يمكنك * تصدير EPS إلى TIFF باستخدام C ++ * باستخدام استدعاءات API بسيطة مع بضعة أسطر من التعليمات البرمجية. ما عليك سوى تحميل ملف EPS المُدخل وتعيين خصائص مختلفة وفقًا لمتطلباتك ، ثم تحويل الملف باستخدام PsDocument class باستخدام C ++.

كود لتحويل EPS إلى TIFF باستخدام C ++

#pragma once
#include <stdio.h>
#include <tchar.h>
#include <cstdint>
#include <Aspose.Page.Cpp/eps/src_eps/PsDocument.h>
#include <Aspose.Page.Cpp/eps/src_eps/PsConverterException.h>
#include <Aspose.Page.Cpp/eps/src_eps/Device/ImageSaveOptions.h>
#include <Aspose.Page.Cpp/eps/src_eps/Device/ImageDevice.h>
#include <Aspose.Page.Cpp/eps/src_eps/Device/PdfDevice.h>
#include <Aspose.Page.Cpp/eps/src_eps/Device/PdfSaveOptions.h>
#include <Aspose.Page.Cpp/License.h>
#include "system/enum.h"
#include "system/object.h"
#include "system/scope_guard.h"
#include "system/special_casts.h"
#include "system/type_info.h"
#include "system/details/dispose_guard.h"
#include "system/io/directory.h"
#include "system/io/directory_info.h"
#include "system/io/file.h"
#include "system/io/file_mode.h"
#include "system/io/memory_stream.h"
#include "system/io/stream.h"
#include "system/io/stream_reader.h"
#include "system/io/seekorigin.h"
#include "system/reflection/assembly.h"
#include "system/text/unicode_encoding.h"
#include "drawing/rectangle.h"
#include "drawing/bitmap.h"
#include "drawing/graphics.h"
#include <system/object.h>
#include <system/array.h>
#include <system/string.h>
#include <system/int32.h>
#include <system/shared_ptr.h>
#include <system/object_ext.h>
#include <system/exceptions.h>
#include <system/environment.h>
#include <system/diagnostics/trace.h>
#include <system/console.h>
using namespace Aspose::Page;
using namespace Aspose::Page::EPS;
using namespace Aspose::Page::EPS::Device;
using namespace System;
class EpsToTiffConverter {
public:
static void ConvertEPStoTIFF()
{
// Set the license for Aspose.Page for CPP to Convert EPS File
SharedPtr<License> EPStoTIFFlicense = System::MakeObject<License>();
EPStoTIFFlicense->SetLicense(u"Aspose.Total.NET.lic");
// Specify the output TIFF image format
System::SharedPtr<System::Drawing::Imaging::ImageFormat> imageFormat = System::Drawing::Imaging::ImageFormat::get_Tiff();
// Initialize PostScript input stream
System::SharedPtr<System::IO::FileStream> psStream = System::MakeObject<System::IO::FileStream>
(u"Input.eps", System::IO::FileMode::Open, System::IO::FileAccess::Read);
System::SharedPtr<PsDocument> document = System::MakeObject<PsDocument>(psStream);
// Set this flag if you want to convert EPS file ignoring minor errors
bool suppressErrors = true;
//Initialize ImageSaveOptions object with required parameters.
System::SharedPtr<ImageSaveOptions> options = System::MakeObject<ImageSaveOptions>(suppressErrors);
System::SharedPtr<ImageDevice> device = System::MakeObject<ImageDevice>(imageFormat);
{
auto __finally_guard_0 = ::System::MakeScopeGuard([&psStream]()
{
psStream->Close();
});
try
{
document->Save(device, options);
}
catch (...)
{
throw;
}
}
System::ArrayPtr<System::ArrayPtr<uint8_t>> imagesBytes = device->get_ImagesBytes();
int32_t i = 0;
{
for (System::ArrayPtr<uint8_t> imageBytes : imagesBytes)
{
System::String imagePath = System::IO::Path::GetFullPath(System::String(u"out_image") + System::Convert::ToString(i)
+ u"." + System::ObjectExt::ToString(imageFormat).ToLower());
{
System::SharedPtr<System::IO::FileStream> fs = System::MakeObject<System::IO::FileStream>(imagePath,
System::IO::FileMode::Create, System::IO::FileAccess::Write);
System::Details::DisposeGuard<1> __dispose_guard_1({ fs });
// ------------------------------------------
try
{
fs->Write(imageBytes, 0, imageBytes->get_Length());
}
catch (...)
{
__dispose_guard_1.SetCurrentException(std::current_exception());
}
}
i++;
}
}
}
};

في السابق ، اكتشفنا كيفية استخراج البيانات الوصفية لملف Microsoft Project باستخدام C ++. ومع ذلك ، في هذا الموضوع قمنا بتنفيذ كيفية * إنشاء TIFF من EPS باستخدام C ++ *.

 عربي