Konwertuj PDF na CSV i CSV na PDF za pomocą C++

Pliki PDF to standardowy format wymiany dokumentów przez Internet. Mogą zaistnieć sytuacje, w których trzeba przetworzyć dane w pliku PDF i dodać je do bazy danych. W takich sytuacjach pomocne może być przekonwertowanie dokumentu PDF do formatu CSV. Z drugiej strony możesz mieć dane tabelaryczne w formacie CSV, które chcesz udostępnić komuś w trybie tylko do odczytu. Możesz to osiągnąć, konwertując pliki CSV do formatu PDF. W tym artykule dowiesz się, jak programowo konwertować pliki PDF i CSV za pomocą C++.

C ++ API do konwersji CSV do formatu PDF i PDF do formatu CSV

Aby osiągnąć te konwersje, potrzebujesz interfejsów API Aspose.Cells for C++ i Aspose.PDF for C++. Pierwsza to biblioteka C++ do tworzenia, odczytywania i modyfikowania plików Excel, druga to API do pracy z plikami PDF. Użyjemy Aspose.Cells for C++ API do konwersji plików CSV do formatu PDF oraz Aspose.PDF for C++ API do konwersji plików PDF do formatu CSV. Możesz zainstalować interfejsy API przez NuGet lub pobrać je bezpośrednio z sekcji Downloads.

PM> Install-Package Aspose.Cells.Cpp
PM> Install-Package Aspose.PDF.Cpp

Konwertuj pliki CSV do formatu PDF

Poniżej przedstawiono kroki konwersji plików CSV do formatu PDF.

Poniżej znajduje się przykładowy kod do konwersji plików CSV do formatu PDF przy użyciu języka C++.

// Ścieżka katalogu źródłowego.
StringPtr srcDir = new String("SourceDirectory\\");

// Ścieżka katalogu wyjściowego.
StringPtr outDir = new String("OutputDirectory\\");

// Utwórz obiekt CSV LoadOptions
intrusive_ptr<ILoadOptions> loadOptions = Factory::CreateILoadOptions(LoadFormat_CSV);

// Załaduj wejściowy plik Excel
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Sample1.csv")), loadOptions);

// Zapisz jako plik PDF
workbook->Save(outDir->StringAppend(new String("Sample1_out.pdf")), SaveFormat_Pdf);

Konwersja pliku PDF do formatu CSV

Poniżej przedstawiono kroki konwersji pliku PDF do formatu CSV.

Poniżej znajduje się przykładowy kod służący do konwersji pliku PDF do formatu CSV przy użyciu języka C++.

// Załaduj plik PDF
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample2_csv.pdf");

// Zainicjuj obiekt klasy ExcelSaveOptions
auto options = MakeObject<ExcelSaveOptions>();
options->ConversionEngine = ExcelSaveOptions::ConversionEngines::NewEngine;

// Ustaw format zapisu jako CSV
options->set_Format(ExcelSaveOptions::ExcelFormat::CSV);

// Zapisz jako plik CSV
pdfDocument->Save(u"OutputDirectory\\Sample2_csv_out.csv", options);

Konwertuj wybrane strony PDF na plik CSV

Aspose.PDF for C++ zapewnia również możliwość dołączania określonych stron PDF do przekonwertowanego pliku CSV. Aby to osiągnąć, możesz wykonać następujące kroki.

Poniżej znajduje się przykładowy kod dołączający wybrane strony PDF do pliku CSV.

// Załaduj plik PDF
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample2_csv.pdf");

// Zainicjuj obiekt klasy ExcelSaveOptions
auto options = MakeObject<ExcelSaveOptions>();
options->ConversionEngine = ExcelSaveOptions::ConversionEngines::NewEngine;

// Ustaw format zapisu jako CSV
options->set_Format(ExcelSaveOptions::ExcelFormat::CSV);

// Utwórz instancję klasy Document, która będzie reprezentować plik CSV.
auto newPdfDocument = MakeObject<Document>();

for (int i = 1; i <= pdfDocument->get_Pages()->get_Count(); i++)
{
	// Pobierz pierwsze 2 strony
	if (i <= 2)
	{
		// Dodaj stronę do nowej instancji Document
		newPdfDocument->get_Pages()->Add(pdfDocument->get_Pages()->idx_get(i));
	}
}

// Zapisz jako plik CSV
newPdfDocument->Save(u"OutputDirectory\\Sample2_csv_out.csv", options);

Konwertowanie stron PDF na pojedyncze pliki CSV

Dzięki Aspose.PDF for C++ możesz także konwertować strony PDF na pojedyncze pliki CSV. Aby to osiągnąć, możesz wykonać następujące kroki.

Poniżej znajduje się przykładowy kod do konwersji stron PDF na pojedyncze pliki CSV przy użyciu języka C++.

// Załaduj plik PDF
auto pdfDocument = MakeObject<Document>(u"SourceDirectory\\Sample2_csv.pdf");

// Zainicjuj obiekt klasy ExcelSaveOptions
auto options = MakeObject<ExcelSaveOptions>();
options->ConversionEngine = ExcelSaveOptions::ConversionEngines::NewEngine;

// Ustaw format zapisu jako CSV
options->set_Format(ExcelSaveOptions::ExcelFormat::CSV);

for (int i = 1; i <= pdfDocument->get_Pages()->get_Count(); i++)
{
	// Utwórz instancję klasy Document, która będzie reprezentować plik CSV.
	auto newPdfDocument = MakeObject<Document>();

	// Dodaj stronę do nowej instancji Document
	newPdfDocument->get_Pages()->Add(pdfDocument->get_Pages()->idx_get(i));

	// Zapisz jako plik CSV
	newPdfDocument->Save(u"OutputDirectory\\Sample2_csv_out_" + System::Convert::ToString(i) + u".csv", options);
}

Uzyskaj bezpłatną licencję

Możesz wypróbować interfejs API bez ograniczeń ewaluacyjnych, prosząc o bezpłatną licencję tymczasową.

Wniosek

W tym artykule nauczyłeś się konwertować pliki CSV do formatu PDF i PDF do formatu CSV. Ponadto widziałeś, jak dodać określone strony do wygenerowanego pliku CSV lub przekonwertować strony PDF do pojedynczych plików CSV. Aspose.Cells for C++ i Aspose.PDF for C++ to potężne interfejsy API do pracy odpowiednio z plikami Excel i PDF. Możesz szczegółowo zapoznać się z interfejsami API, odwiedzając ich oficjalną dokumentację. W przypadku jakichkolwiek pytań prosimy o kontakt na naszym bezpłatnym forum pomocy technicznej.

Zobacz też