Πώς να μετατρέψετε το EPS σε TIFF χρησιμοποιώντας C++

Σε αυτό το θέμα, θα διερευνήσουμε πώς να μετατρέψετε το EPS σε TIFF χρησιμοποιώντας C++. Θα παρατηρήσετε πώς να φορτώσετε το αρχείο εισόδου EPS και να το μετατρέψετε σε εικόνα στη C++ χρησιμοποιώντας απλές κλήσεις API.

Βήματα για τη μετατροπή EPS σε TIFF χρησιμοποιώντας C++

  1. Εγκαταστήστε το Aspose.Page for C++ από το Εργαλείο διαχείρισης πακέτων NuGet
  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++.

 Ελληνικά