تحويل PS و EPS و XPS
أطلق العنان للإمكانيات الكاملة لتطبيقات C++ الخاصة بك من خلال حل واجهة برمجة التطبيقات متعدد الاستخدامات الخاص بنا! قم بتحويل ملفات PS و EPS و XPS بسلاسة إلى ملفات PDF عالية الجودة وصور مذهلة من خلال حل واجهة برمجة التطبيقات متعدد الاستخدامات لـ C++!
اكتشف الإمكانات الكاملة لتطبيقات C++ الخاصة بك من خلال حل واجهة برمجة التطبيقات الأصلي متعدد الاستخدامات! قم بتحويل ملفات PS و EPS و XPS إلى ملفات PDF عالية الجودة وصور مذهلة بسرعة وسهولة. سواء كنت بحاجة إلى تحويل مستندات دقيق أو محتوى مرئي مثالي، فإن واجهة برمجة التطبيقات الخاصة بنا تبسط العملية، مما يوفر لك الأدوات اللازمة لتحسين مشاريعك دون عناء. قم بتحسين إدارة المستندات الخاصة بك وبث حياة جديدة في مرئياتك. جرب سحر تحويل مستندات PostScript (PS) و Encapsulated PostScript (EPS) بالإضافة إلى مستندات XPS إلى PDF وصور من خلال واجهة برمجة تطبيقات C++ الخاصة بنا. هل أنت جاهز لتحويل مستنداتك؟ جرب الإصدار التجريبي المجاني أو قم بالشراء الآن وارتقِ بمحتواك اليوم!
يمكن للمبرمجين استخدامها بسهولة للمعالجة المجمعة لمستندات PostScript و XPS، وحتى معالجة اللوحات (canvases) والمسارات وعناصر الرموز (glyphs) والتعامل مع أشكال الرسومات المتجهة وسلاسل النصوص.
يتيح لك حل واجهة برمجة التطبيقات لـ C++ هنا تحويل ملفات تنسيقات PDL هذه مثل PS و EPS و XPS برمجياً، ولكن قد تجد أنه من المفيد رؤية وتجربة واجهات برمجة التطبيقات الأصلية هذه عبر الأنظمة الأساسية. إليك بعض سيناريوهات التحويل مثل EPS إلى صور، و EPS إلى PDF، و PostScript إلى PDF، و PostScript إلى صور، و XPS إلى صور، و XPS إلى PDF
تحويل PostScript (PS، EPS) إلى صور عبر C++.
تسمح مكتبة C++ بتحويل ملفات PostScript (PS) و Encapsulated PostScript (EPS) إلى صور على منصات Windows و Linux و macOS. العملية هي:
- قم بتحميل المستند باستخدام constructor الخاص بفئة PsDocument مع وجود دفق ملف إدخال أو اسم ملف كمعامل.
- قم بإنشاء كائن ImageSaveOptions Class وقم بتهيئته بالإعدادات المطلوبة. اتصل بـ set_ImageFormat لتعيين تنسيق الصورة كقيمة لـ ImageFormat .
- احفظ كل صفحة ملف إدخال في مصفوفة بايت من الصورة باستخدام SaveAsImage .
تعليمات برمجية C++ لتحويل EPS إلى صور
// The path to the documents directory.
System::String dataDir = RunExamples::GetDataDir_WorkingWithDocumentConversion();
// Initialize PsDocument with the name of PostScript file.
System::SharedPtr<PsDocument> document = System::MakeObject<PsDocument>(dataDir + u"inputForImage.ps");
// If you want to convert Postscript file despite of minor errors set this flag
bool suppressErrors = true;
//Initialize options object with necessary parameters.
System::SharedPtr<ImageSaveOptions> options = System::MakeObject<ImageSaveOptions>();
//Set output image format.
options->set_ImageFormat(Aspose::Page::Drawing::Imaging::ImageFormat::Png);
// If you want to add special folder where fonts are stored. Default fonts folder in OS is always included.
options->set_AdditionalFontsFolders(System::MakeArray<System::String>({u"{FONT_FOLDER}"}));
// Save PS document as array of image bytes, one bytes array for one page.
System::ArrayPtr<System::ArrayPtr<uint8_t>> imagesBytes = document->SaveAsImage(options);
//Save images bytes arrays as image files.
int32_t i = 0;
for (System::ArrayPtr<uint8_t> imageBytes : imagesBytes)
{
System::String imagePath = System::IO::Path::GetFullPath(dataDir + u"out_image" + System::Convert::ToString(i) + u"." + System::ObjectExt::ToString(options->get_ImageFormat()).ToLower());
{
System::SharedPtr<System::IO::FileStream> fs = System::MakeObject<System::IO::FileStream>(imagePath, System::IO::FileMode::Create, System::IO::FileAccess::Write);
// Clearing resources under 'using' statement
System::Details::DisposeGuard<1> __dispose_guard_0({ fs});
// ------------------------------------------
try
{
fs->Write(imageBytes, 0, imageBytes->get_Length());
}
catch(...)
{
__dispose_guard_0.SetCurrentException(std::current_exception());
}
}
i++;
}
//Review errors
if (suppressErrors)
{
for (auto&& ex : System::IterateOver(options->get_Exceptions()))
{
System::Console::WriteLine(ex->get_Message());
}
}
تحويل PostScript إلى PDF عبر C++.
عملية تحويل PostScript إلى PDF بسيطة مثل تحويل PostScript إلى صور:
- قم بتحميل المستند باستخدام constructor الخاص بفئة PsDocument مع وجود دفق ملف إدخال أو اسم ملف كمعامل.
- قم بإنشاء كائن من PdfSaveOptions Class لتحديد إعدادات إضافية مثل AdditionalFontsFolder وقيمة SuppressError وما إلى ذلك.
- استدعِ طريقة SaveAsPdf لتحويل ملف PDF.
تعليمات برمجية C++ لتحويل PostScript إلى PDF
// The path to the documents directory.
System::String dataDir = RunExamples::GetDataDir_WorkingWithDocumentConversion();
// Initialize PsDocument with the name of PostScript file.
System::SharedPtr<PsDocument> document = System::MakeObject<PsDocument>(dataDir + u"input.ps");
// If you want to convert Postscript file despite of minor errors set this flag
bool suppressErrors = true;
//Initialize options object with necessary parameters.
System::SharedPtr<PdfSaveOptions> options = System::MakeObject<PdfSaveOptions>(suppressErrors);
// If you want to add special folder where fonts are stored. Default fonts folder in OS is always included.
options->set_AdditionalFontsFolders(System::MakeArray<System::String>({u"{FONT_FOLDER}"}));
// Default page size is 595x842 and it is not mandatory to set it in PdfSaveOptions
// But if you need to specify sizeuse following line
//PdfSaveOptions options = new PdfSaveOptions(suppressErrorsnew, Aspose.Page.Drawing.Size(595x842));
// or
//saveOptions.Size = new Aspose.Page.Drawing.Size(595x842);
// Save document as PDF
document->SaveAsPdf(dataDir + u"outputPDF_out.pdf", options);
//Review errors
if (suppressErrors)
{
for (auto&& ex : System::IterateOver(options->get_Exceptions()))
{
System::Console::WriteLine(ex->get_Message());
}
}تحويل XPS إلى صور عبر C++.
تتعامل واجهة برمجة تطبيقات معالجة C++ XPS مع تحويل XPS إلى صور بما في ذلك BMP و JPG و TIFF و PNG وغيرها، بالإضافة إلى تحويل XPS إلى PDF على الأنظمة المستندة إلى Windows و Linux. عملية تحويل XPS إلى صورة هي:
- قم بإنشاء مثيل لـ XpsDocument Class مع اسم ملف الإدخال و XpsLoadOptions كمعاملات المنشئ.
- قم بإنشاء خيار الحفظ كمثيل لفئة واحدة من Aspose::Page::XPS::Presentation::Image .
- استدعِ طريقة SaveAsImage لمستند XPS لحفظ كل صفحة مستند في مصفوفة بايت من الصورة.
تعليمات برمجية C++ لتحويل XPS إلى صور
// The path to the documents directory.
System::String dataDir = RunExamples::GetDataDir_WorkingWithDocumentConversion();
//Outut file
System::String outputFileName = dataDir + u"XPStoImage_out.bmp";
// Load XPS document form the XPS file
System::SharedPtr<XpsDocument> document = System::MakeObject<XpsDocument>(dataDir + u"input.xps", System::MakeObject<XpsLoadOptions>());
// Initialize options object with necessary parameters.
System::SharedPtr<BmpSaveOptions> options = System::MakeObject<BmpSaveOptions>();
options->set_SmoothingMode(System::Drawing::Drawing2D::SmoothingMode::HighQuality);
options->set_Resolution(300);
options->set_PageNumbers(System::MakeArray<int32_t>({1, 2, 6}));
// Save XPS document to the images byte arrays. The first dimension is for inner documents
// and the second one is for pages within inner documents.
System::ArrayPtr<System::ArrayPtr<System::ArrayPtr<uint8_t>>> imagesBytes = document->SaveAsImage(options);
// Iterate through document partitions (fixed documents, in XPS terms)
for (int32_t i = 0; i < imagesBytes->get_Length(); i++)
{
// Iterate through partition pages
for (int32_t j = 0; j < imagesBytes[i]->get_Length(); j++)
{
// Initialize image output stream
{
System::SharedPtr<System::IO::Stream> imageStream = System::IO::File::Open(System::IO::Path::GetDirectoryName(outputFileName) + System::IO::Path::DirectorySeparatorChar + System::IO::Path::GetFileNameWithoutExtension(outputFileName) + u"_" + (i + 1) + u"_" + (j + 1) + System::IO::Path::GetExtension(outputFileName), System::IO::FileMode::Create, System::IO::FileAccess::Write);
// Clearing resources under 'using' statement
System::Details::DisposeGuard<1> __dispose_guard_0({ imageStream});
// ------------------------------------------
try
{
imageStream->Write(imagesBytes[i][j], 0, imagesBytes[i][j]->get_Length());
}
catch(...)
{
__dispose_guard_0.SetCurrentException(std::current_exception());
}
}
}
}
تحويل XPS إلى PDF عبر C++.
تتعامل واجهة برمجة تطبيقات معالجة C++ XPS مع تحويل XPS إلى صور بما في ذلك BMP و JPG و TIFF و PNG وغيرها، بالإضافة إلى تحويل XPS إلى PDF على الأنظمة المستندة إلى Windows و Linux. عملية تحويل XPS إلى PDF هي:
- حدد دفق الإخراج لمخرجات PDF.
- قم بإنشاء مثيل لـ XpsDocument Class مع اسم ملف الإدخال و XpsLoadOptions كمعاملات المنشئ.
- حدد خيارات الحفظ الخاصة بـ PDF مثل TextCompression و ImageCompression و JpegQualityLevel باستخدام PdfSaveOptions .
- أخيراً قم بتحويل مستند XPS إلى PDF باستخدام أي من طرق SaveAsPdf .
تعليمات برمجية C++ لتحويل XPS إلى PDF
// The path to the documents directory.
System::String dataDir = RunExamples::GetDataDir_WorkingWithDocumentConversion();
// Initialize PDF output stream
{
System::SharedPtr<System::IO::Stream> pdfStream = System::IO::File::Open(dataDir + u"XPStoPDF_out.pdf", System::IO::FileMode::OpenOrCreate, System::IO::FileAccess::Write);
// Clearing resources under 'using' statement
System::Details::DisposeGuard<1> __dispose_guard_0({ pdfStream});
// ------------------------------------------
try
{
// Load XPS document form the XPS file
System::SharedPtr<XpsDocument> document = System::MakeObject<XpsDocument>(dataDir + u"input.xps", System::MakeObject<XpsLoadOptions>());
// Initialize options object with necessary parameters.
System::SharedPtr<Aspose::Page::XPS::Presentation::Pdf::PdfSaveOptions> options = System::MakeObject<Aspose::Page::XPS::Presentation::Pdf::PdfSaveOptions>();
options->set_JpegQualityLevel(100);
options->set_ImageCompression(Aspose::Page::XPS::Presentation::Pdf::PdfImageCompression::Jpeg);
options->set_TextCompression(Aspose::Page::XPS::Presentation::Pdf::PdfTextCompression::Flate);
options->set_PageNumbers(System::MakeArray<int32_t>({1, 2, 6}));
document->SaveAsPdf(pdfStream, options);
}
catch(...)
{
__dispose_guard_0.SetCurrentException(std::current_exception());
}
}FAQ
1. هل يمكنني تحويل Postscript باستخدام حل API هذا؟
Aspose.Page لديه وظيفة تسمح لك بتحويل ملفات PS و XPS و EPS إلى تنسيقات أخرى عبر الإنترنت أو برمجيًا. إذا كنت بحاجة إلى تحويل ملفاتك فورًا عبر الإنترنت ، فقد ترغب في استخدام تطبيق متعدد الأنظمة الأساسية محول ملفات تنسيق لغة وصف الصفحة .
2. ما هي اللغات التي يدعمها المحول لوصف الصفحة؟
تدعم وظيفة التحويل هذه الملفات ذات الامتدادات .ps و .eps و. xps. يتم تمثيل PDLs الشهيرة مثل PDF و SVG كحلول منفصلة في Aspose.products
3. هل الوظيفة مجانية؟
تعد المحولات متعددة الأنظمة الأساسية مجانية ، عندما يمكنك الحصول على نسخة تجريبية مجانية من حل API ثم شراء المنتج إذا لزم الأمر.
Support and Learning Resources
- مصادر التعلم
- توثيق
- مصدر الرمز
- مراجع API
- دعم المنتج
- دعم مجاني
- دعم مدفوع
- مقالات
- Release Notes
- لماذا Aspose.Page لـ C++؟
- قائمة العملاء
- قصص نجاح