Files
core/PdfWriter/test/test.cpp
2022-01-31 13:34:00 +03:00

47 lines
1.5 KiB
C++

#include "../PdfRenderer.h"
#include "../../PdfReader/PdfReader.h"
#include "../../DesktopEditor/common/File.h"
int main()
{
NSFonts::IApplicationFonts* pApplicationFonts = NSFonts::NSApplication::Create();
CPdfRenderer pdfWriter(pApplicationFonts, true);
pdfWriter.SetTempFolder(NSFile::GetProcessDirectory() + L"/wtemp");
PdfReader::CPdfReader* pReader = new PdfReader::CPdfReader(pApplicationFonts);
pReader->SetTempDirectory(NSFile::GetProcessDirectory() + L"/rtemp");
std::wstring sPassword = L"";
bool bResult = pReader->LoadFromFile(NSFile::GetProcessDirectory() + L"/test.pdf", L"", sPassword, sPassword);
if (bResult)
{
for (int i = 0, nPagesCount = pReader->GetPagesCount(); i < nPagesCount; ++i)
{
pdfWriter.NewPage();
pdfWriter.BeginCommand(c_nPageType);
double dPageDpiX, dPageDpiY;
double dWidth, dHeight;
pReader->GetPageInfo(i, &dWidth, &dHeight, &dPageDpiX, &dPageDpiY);
dWidth *= 25.4 / dPageDpiX;
dHeight *= 25.4 / dPageDpiY;
pdfWriter.put_Width(dWidth);
pdfWriter.put_Height(dHeight);
pReader->DrawPageOnRenderer(&pdfWriter, i, NULL);
pdfWriter.EndCommand(c_nPageType);
}
}
pReader->AddToPage(&pdfWriter, 0, L"");
//pdfWriter.AddToPage(0, NSFile::GetProcessDirectory() + L"/res.pdf");
//pdfWriter.SaveToFile(NSFile::GetProcessDirectory() + L"/res.pdf");
RELEASEOBJECT(pReader);
RELEASEOBJECT(pApplicationFonts);
return 0;
}