تُستخدم ملفات Microsoft Publisher (PUB) لطباعة المعلومات أو نشرها. قد تكون هناك سيناريوهات تحتاج فيها إلى مشاركة هذه الملفات ، ولا يمتلك الطرف المتلقي حق الوصول إلى Microsoft Publisher. في مثل هذه الحالات ، يمكن أن يكون تحويل هذه الملفات إلى صور قبل مشاركتها مفيدًا. تحقيقًا لهذه الغاية ، ستعلمك هذه المقالة كيفية تحويل ملفات PUB إلى تنسيقات صور مختلفة باستخدام C ++.
- واجهات برمجة تطبيقات C ++ لتحويل ملفات PUB إلى تنسيق صورة
- قم بتحويل ملفات PUB إلى صور JPG باستخدام C ++
- قم بتحويل ملفات PUB إلى صور PNG باستخدام C ++
- تحويل ملفات PUB إلى صور TIFF باستخدام C ++
واجهات برمجة تطبيقات C ++ لتحويل ملفات PUB إلى تنسيق صورة
سنستخدم Aspose.PUB لـ C ++ و Aspose.PDF لـ C ++ APIs لإجراء هذا التحويل. الأول عبارة عن مكتبة للعمل مع ملفات Microsoft Publisher (PUB) ، بينما الثانية هي مكتبة لإنشاء ملفات PDF وقراءتها وتعديلها. سنستخدم Aspose.PUB لـ C ++ API لتحويل ملفات PUB إلى تنسيق PDF و Aspose.PDF لـ C ++ API لتحويل ملفات PDF التي تم إنشاؤها إلى تنسيق صورة. يمكنك إما تثبيت واجهات برمجة التطبيقات من خلال NuGet أو تنزيلها مباشرة من قسم التنزيلات.
PM> Install-Package Aspose.PUB.Cpp
PM> Install-Package Aspose.PDF.Cpp
قم بتحويل ملفات PUB إلى صور JPG باستخدام C ++
فيما يلي خطوات تحويل ملفات PUB إلى صور JPG.
- قم بتحميل ملف PUB باستخدام أسلوب PubFactory :: CreateParser (System :: String fileName).
- قم بتحويل ملف PUB إلى تنسيق PDF باستخدام [ConvertToPdf (System :: SharedPtr doc ، System :: String fileName)] طريقة 6.
- قم بتحميل ملف PDF الذي تم إنشاؤه باستخدام فئة Document.
- قم بالتكرار خلال صفحات ملف PDF.
- احصل على أبعاد صفحة PDF.
- قم بإنشاء مثيل لفئة Resolution.
- إنشاء فئة JpegDevice من خلال توفير العرض والارتفاع والدقة.
- قم بإنشاء مثيل لـ FileStream للصورة الناتجة.
- قم بتحويل صفحة PDF إلى صورة JPG باستخدام [JpegDevice-> Process (System :: SharedPtr page، System :: SharedPtr output)] طريقة 11.
- أغلق الدفق.
يوضح نموذج التعليمات البرمجية التالي كيفية تحويل ملفات PUB إلى صور JPG باستخدام C ++.
// مصدر PUB وإخراج مسارات ملفات PDF
System::String filePub = u"SourceDirectory\\1.pub";
System::String filePdf = u"OutputDirectory\\1.pdf";
// قم بتحميل ملف PUB
System::SharedPtr<IPubParser> parser = PubFactory::CreateParser(filePub);
System::SharedPtr<Aspose::Pub::Document> document = parser->Parse();
// قم بتحويل ملف PUB إلى PDF
PubFactory::CreatePdfConverter()->ConvertToPdf(document, filePdf);
// قم بتحميل ملف PDF الذي تم إنشاؤه
auto pdfDocument = MakeObject<Aspose::Pdf::Document>(filePdf);
auto info = MakeObject<Facades::PdfFileInfo>(pdfDocument);
// كرر من خلال صفحات PDF
for (auto page : pdfDocument->get_Pages())
{
// احصل على أبعاد صفحة PDF
int width = info->GetPageWidth(page->get_Number());
int height = info->GetPageHeight(page->get_Number());
// قم بإنشاء مثيل لفئة الدقة
auto resolution = MakeObject<Devices::Resolution>(300);
// قم بإنشاء جهاز JPEG بالعرض والارتفاع والدقة المحددين
auto device = MakeObject<Devices::JpegDevice>(width, height, resolution);
// قم بإنشاء دفق الملفات للصورة الناتجة
System::SharedPtr<System::IO::FileStream> imageStream = System::IO::File::Create(String::Format(u"OutputDirectory\\page_{0}.jpg", page->get_Number()));
// قم بتحويل صفحة PDF إلى صورة JPG
device->Process(page, imageStream);
// أغلق الدفق
imageStream->Close();
}
قم بتحويل ملفات PUB إلى صور PNG باستخدام C ++
لتحويل ملفات PUB إلى صور PNG ، اتبع الخطوات الموضحة أدناه.
- قم بتحميل ملف PUB باستخدام أسلوب PubFactory :: CreateParser (System :: String fileName).
- قم بتحويل ملف PUB إلى تنسيق PDF باستخدام ConvertToPdf (System :: SharedPtr doc ، System :: String fileName) طريقة.
- قم بتحميل ملف PDF الذي تم إنشاؤه باستخدام فئة المستند.
- قم بالتكرار خلال صفحات ملف PDF.
- احصل على أبعاد صفحة PDF.
- قم بإنشاء مثيل لفئة Resolution.
- قم بإنشاء فئة PngDevice من خلال توفير العرض والارتفاع والدقة.
- قم بإنشاء مثيل لـ FileStream للصورة الناتجة.
- قم بتحويل صفحة PDF إلى صورة PNG باستخدام PngDevice-> Process (System :: SharedPtr الصفحة ، النظام :: SharedPtrSystem::IO::Stream الإخراج) طريقة.
- أغلق الدفق.
يوضح نموذج التعليمات البرمجية التالي كيفية تحويل ملفات PUB إلى صور PNG باستخدام C ++.
// مصدر PUB وإخراج مسارات ملفات PDF
System::String filePub = u"SourceDirectory\\1.pub";
System::String filePdf = u"OutputDirectory\\1.pdf";
// قم بتحميل ملف PUB
System::SharedPtr<IPubParser> parser = PubFactory::CreateParser(filePub);
System::SharedPtr<Aspose::Pub::Document> document = parser->Parse();
// قم بتحويل ملف PUB إلى PDF
PubFactory::CreatePdfConverter()->ConvertToPdf(document, filePdf);
// قم بتحميل ملف PDF الذي تم إنشاؤه
auto pdfDocument = MakeObject<Aspose::Pdf::Document>(filePdf);
auto info = MakeObject<Facades::PdfFileInfo>(pdfDocument);
// كرر من خلال صفحات PDF
for (auto page : pdfDocument->get_Pages())
{
// احصل على أبعاد صفحة PDF
int width = info->GetPageWidth(page->get_Number());
int height = info->GetPageHeight(page->get_Number());
// قم بإنشاء مثيل لفئة الدقة
auto resolution = MakeObject<Devices::Resolution>(300);
// قم بإنشاء جهاز PNG بالعرض والارتفاع والدقة المحددين
auto device = MakeObject<Devices::PngDevice>(width, height, resolution);
// قم بإنشاء دفق الملفات للصورة الناتجة
System::SharedPtr<System::IO::FileStream> imageStream = System::IO::File::Create(String::Format(u"OutputDirectory\\page_{0}.png", page->get_Number()));
// قم بتحويل صفحة PDF إلى صورة PNG
device->Process(page, imageStream);
// أغلق الدفق
imageStream->Close();
}
تحويل ملفات PUB إلى صور TIFF باستخدام C ++
فيما يلي خطوات تحويل ملفات PUB إلى صور TIFF.
- قم بتحميل ملف PUB باستخدام أسلوب PubFactory :: CreateParser (System :: String fileName).
- قم بتحويل ملف PUB إلى تنسيق PDF باستخدام ConvertToPdf (System :: SharedPtr doc ، System :: String fileName) طريقة.
- قم بتحميل ملف PDF الذي تم إنشاؤه باستخدام فئة المستند.
- احصل على أبعاد صفحة PDF الأولى.
- قم بإنشاء مثيل لفئة Resolution.
- قم بإنشاء مثيل لفئة TiffSettings وضبط الإعدادات المطلوبة.
- إنشاء فئة TiffDevice من خلال توفير العرض والارتفاع والدقة و TiffSettings.
- قم بإنشاء مثيل لـ FileStream للصورة الناتجة.
- قم بتحويل ملف PDF إلى صورة TIFF باستخدام TiffDevice-> Process (System :: SharedPtrAspose::Pdf::Document المستند ، int32t fromPage ، int32t toPage ، System :: SharedPtrSystem::IO::Stream الإخراج) طريقة.
- أغلق الدفق.
يوضح نموذج التعليمات البرمجية التالي كيفية تحويل ملفات PUB إلى صور TIFF باستخدام C ++.
// مصدر PUB وإخراج مسارات ملفات PDF
System::String filePub = u"SourceDirectory\\1.pub";
System::String filePdf = u"OutputDirectory\\1.pdf";
// قم بتحميل ملف PUB
System::SharedPtr<IPubParser> parser = PubFactory::CreateParser(filePub);
System::SharedPtr<Aspose::Pub::Document> document = parser->Parse();
// قم بتحويل ملف PUB إلى PDF
PubFactory::CreatePdfConverter()->ConvertToPdf(document, filePdf);
// قم بتحميل ملف PDF الذي تم إنشاؤه
auto pdfDocument = MakeObject<Aspose::Pdf::Document>(filePdf);
auto info = MakeObject<Facades::PdfFileInfo>(pdfDocument);
// احصل على أبعاد أول صفحة PDF
int width = info->GetPageWidth(1);
int height = info->GetPageHeight(1);
// قم بإنشاء مثيل لفئة الدقة
auto resolution = MakeObject<Devices::Resolution>(300);
// قم بإنشاء مثيل لفئة TiffSettings وقم بتعيين الإعدادات المطلوبة
auto settings = MakeObject<Devices::TiffSettings>();
settings->set_Compression(Devices::CompressionType::None);
settings->set_Depth(Devices::ColorDepth::Default);
// قم بإنشاء جهاز TIFF بالعرض والارتفاع والدقة وإعدادات TiffSettings المحددة
auto device = MakeObject<Devices::TiffDevice>(width, height, resolution, settings);
// قم بإنشاء دفق الملفات للصورة الناتجة
System::SharedPtr<System::IO::FileStream> imageStream = System::IO::File::Create(u"OutputDirectory\\pdf.tiff");
// قم بتحويل ملف PDF إلى صورة TIFF
device->Process(pdfDocument, 1, 1, imageStream);
// أغلق الدفق
imageStream->Close();
احصل على رخصة مجانية
يمكنك تجربة واجهة برمجة التطبيقات بدون قيود التقييم من خلال طلب ترخيص مؤقت مجاني.
استنتاج
في هذه المقالة ، تعلمت كيفية تحويل ملفات Microsoft Publisher (PUB) إلى صور JPG و PNG و TIFF باستخدام C ++. استخدمنا Aspose.PUB لـ C ++ و Aspose.PDF لواجهات برمجة تطبيقات C ++ لتحقيق ذلك. يمكنك استكشاف واجهات برمجة التطبيقات هذه بالتفصيل من خلال زيارة الوثائق الرسمية الخاصة بهم. في حالة وجود أي أسئلة ، لا تتردد في الاتصال بنا على منتدى الدعم المجاني.