PS, EPS és XPS konvertálása
Szabadítsa fel C++ alkalmazásaiban rejlő teljes potenciált sokoldalú API megoldásunkkal! Konvertálja zökkenőmentesen a PS, EPS és XPS fájlokat kiváló minőségű PDF dokumentumokká és lenyűgöző képekké sokoldalú C++ API megoldásunkkal!
Fedezze fel C++ alkalmazásaiban rejlő teljes potenciált sokoldalú natív API megoldásunkkal! Konvertálja a PS, EPS és XPS fájlokat kiváló minőségű PDF-ekké és lenyűgöző képekké gyorsan és egyszerűen. Legyen szó precíz dokumentumátalakításról vagy tökéletes vizuális tartalomról, API-nk leegyszerűsíti a folyamatot, és eszközöket biztosít projektjei erőfeszítés nélküli fejlesztéséhez. Javítsa dokumentumkezelését, és leheljen új életet vizuális tartalmaiba. Tapasztalja meg a PostScript (PS) és az Encapsulated PostScript (EPS), valamint az XPS dokumentumok PDF-be és képekké történő konvertálásának varázsát C++ API-nk segítségével. Készen áll dokumentumai átalakítására? Próbálja ki ingyenes próbaverziónkat, vagy vásárolja meg most, és emelje tartalmait új szintre még ma!
A programozók könnyen használhatják PostScript és XPS dokumentumok kötegelt feldolgozására, akár a vásznak (canvases), útvonalak (paths) és glifák (glyphs) elemeinek manipulálására, valamint vektorgrafikus alakzatok és szöveges karakterláncok kezelésére is.
Az itt található C++ API megoldás lehetővé teszi a PDL formátumú fájlok, például PS, EPS és XPS programozott konvertálását. Hasznosnak találhatja továbbá, ha megtekinti és kipróbálja az ezekre a natív API-kra épülő platformfüggetlen megoldásokat. Íme néhány konverziós forgatókönyv, mint például az EPS képekké, az EPS PDF-be, a PostScript PDF-be, a PostScript képekké, az XPS képekké és az XPS PDF-be történő konvertálása.
PostScript (PS, EPS) konvertálása képekké C++ használatával.
A C++ könyvtár lehetővé teszi a PostScript (PS) és az Encapsulated PostScript (EPS) fájlok képekké konvertálását Windows, Linux és macOS platformokon. A folyamat a következő:
- Töltse be a dokumentumot a PsDocument osztály konstruktorával , paraméterként megadva a bemeneti fájlfolyamot vagy a fájlnevet.
- Hozzon létre egy ImageSaveOptions Class objektumot, és inicializálja a szükséges beállításokkal. Hívja meg a set_ImageFormat metódust a képformátum beállításához az ImageFormat értékeként.
- Mentse a bemeneti fájl minden oldalát egy kép bájt-tömbjébe a SaveAsImage metódussal.
C++ kód EPS-ből képpé történő konverzióhoz
// 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 konvertálása PDF-be C++ használatával.
A PostScript PDF-be konvertálásának folyamata ugyanolyan egyszerű, mint a PostScript képekké konvertálása:
- Töltse be a dokumentumot a PsDocument osztály konstruktorával , paraméterként megadva a bemeneti fájlfolyamot vagy a fájlnevet.
- Hozzon létre egy objektumot a PdfSaveOptions Class osztályból a további beállítások, például az AdditionalFontsFolder és a SuppressError értékének meghatározásához.
- Hívja meg a SaveAsPdf metódust a PDF-fájlba történő konvertáláshoz.
C++ kód PostScript-ből PDF-be történő konverzióhoz
// 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 konvertálása képekké C++ használatával.
A C++ XPS feldolgozó API kezeli az XPS képekké (többek között BMP, JPG, TIFF, PNG) történő konvertálását, valamint az XPS PDF-be történő konvertálását Windows és Linux alapú rendszereken. Az XPS képpé konvertálásának folyamata a következő:
- Hozza létre az XpsDocument Class példányát a bemeneti fájlnévvel és az XpsLoadOptions beállításokkal mint konstruktor paraméterekkel.
- Hozza létre a mentési opciót az Aspose::Page::XPS::Presentation::Image osztály egyik példányaként.
- Hívja meg az XPS dokumentum SaveAsImage metódusát minden egyes dokumentumoldal kép bájt-tömbbe történő mentéséhez.
C++ kód XPS-ből képpé történő konverzióhoz
// 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 konvertálása PDF-be C++ használatával.
A C++ XPS feldolgozó API kezeli az XPS képekké (többek között BMP, JPG, TIFF, PNG) történő konvertálását, valamint az XPS PDF-be történő konvertálását Windows és Linux alapú rendszereken. Az XPS PDF-be konvertálásának folyamata a következő:
- Határozza meg a kimeneti folyamot a PDF kimenethez.
- Hozza létre az XpsDocument Class példányát a bemeneti fájlnévvel és az XpsLoadOptions beállításokkal mint konstruktor paraméterekkel.
- Adja meg a PDF-specifikus mentési beállításokat, például a TextCompression, ImageCompression és JpegQualityLevel értékeket a PdfSaveOptions használatával.
- Végül konvertálja az XPS dokumentumot PDF-be a SaveAsPdf metódusok bármelyikével.
C++ kód XPS-ből PDF-be történő konverzióhoz
// 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. Konvertálhatom a Postscriptet ezzel az API-megoldással?
Az Aspose.Page olyan funkcióval rendelkezik, amely lehetővé teszi a PS-, XPS- és EPS-fájlok más formátumokba konvertálását online vagy programozottan. Ha azonnal online kell átalakítania fájljait, használhatja a Page Description Language format files Converter többplatformos alkalmazást.
2. Milyen oldalleírás nyelveket támogat a konverter?
Ez az átalakítási funkció támogatja a .ps, .eps és .xps kiterjesztésű fájlokat. Az olyan híres PDL-k, mint a PDF és az SVG, külön megoldásként jelennek meg az Aspose.products-ban
3. Ingyenes a funkcionalitás?
A platformok közötti konverterek ingyenesek, amikor az API-megoldáshoz ingyenes próbaverziót kaphat, majd szükség esetén megvásárolhatja a terméket.
Support and Learning Resources
- Tanulási források
- Dokumentáció
- Forráskód
- API referenciák
- Terméktámogatás
- Ingyenes támogatás
- Fizetett támogatás
- Blog
- Release Notes
- Miért az Aspose.Page C++-hoz?
- Ügyfelek listája
- Sikertörténetek