clipping in landscape mode
Posted: Fri Jul 06, 2012 3:07 pm
Hi,
I'm evaluating the novaPDF SDK and can't find a solution to the following problem: my application works fine when I use Portrait mode, however in Landscape - the right part of each page is "clipped" (blanked out) even though all the texts are there (easy to see in PDF Editor - the texts can be selected in the right (invisible) part of the page. It looks like the page is "clipped" to the width of the Portrait, even though it correctly shows in PDF Viewer as Landscape and all the layout is correctly uses the proportions of the Landscape layout... Here are some details, I'm using Delphi, and the code sequence is below.
Please help to figure out where this clipping is coming from and how to fix it.
PS. When I print from the same application directly to NovaPDF printer and select Landscape in Printer Dialog - everything works ok, as expected.
I'm evaluating the novaPDF SDK and can't find a solution to the following problem: my application works fine when I use Portrait mode, however in Landscape - the right part of each page is "clipped" (blanked out) even though all the texts are there (easy to see in PDF Editor - the texts can be selected in the right (invisible) part of the page. It looks like the page is "clipped" to the width of the Portrait, even though it correctly shows in PDF Viewer as Landscape and all the layout is correctly uses the proportions of the Landscape layout... Here are some details, I'm using Delphi, and the code sequence is below.
Please help to figure out where this clipping is coming from and how to fix it.
PS. When I print from the same application directly to NovaPDF printer and select Landscape in Printer Dialog - everything works ok, as expected.
Code: Select all
g_novaOptions : INovaPdfOptions;
...
hr := ActiveX.CoCreateInstance(CLASS_NovaPdfOptions, //CLSID_CNovaPdfSource,
nil,
CLSCTX_INPROC_SERVER,
IID_INovaPdfOptions,
g_novaOptions);
...
hr := g_novaOptions.Initialize2( NOVA_PRINTER_NAME, '', '', '' );
...
g_novaOptions.SetDefaultPrinter();
g_novaOptions.StartUpdateProfiles;
g_novaOptions.AddProfile2(NOVA_PROFILE, NOVA_PROFILE_IS_PUBLIC);
g_novaOptions.SetOptionLong2(NOVAPDF_PAPER_OVERRIDE, 1, NOVA_PROFILE, NOVA_PROFILE_IS_PUBLIC);
g_novaOptions.SetOptionString2(NOVAPDF_PAGE_FORM, 'Letter', NOVA_PROFILE, NOVA_PROFILE_IS_PUBLIC);
g_novaOptions.SetOptionLong2(NOVAPDF_PAGE_SIZE, DMPAPER_LETTER, NOVA_PROFILE, NOVA_PROFILE_IS_PUBLIC);
g_novaOptions.SetOptionLong2(NOVAPDF_PAGE_WIDTH, 215900, NOVA_PROFILE, NOVA_PROFILE_IS_PUBLIC);
g_novaOptions.SetOptionLong2(NOVAPDF_PAGE_HEIGHT, 279400, NOVA_PROFILE, NOVA_PROFILE_IS_PUBLIC);
g_novaOptions.SetOptionLong2(NOVAPDF_PAGE_ORIENTATION, 2, NOVA_PROFILE, NOVA_PROFILE_IS_PUBLIC)
g_novaOptions.SetOptionLong2(NOVAPDF_SAVE_PROMPT, 0, NOVA_PROFILE, NOVA_PROFILE_IS_PUBLIC);
g_novaOptions.EndUpdateProfiles;
strDefaultProfile := '';
g_novaOptions.GetActiveProfile2(strDefaultProfile, bPublicProfile);
g_novaOptions.SetActiveProfile2(NOVA_PROFILE, NOVA_PROFILE_IS_PUBLIC);
...
Printer.BeginDoc;
....
PageOut() // using Printer.Canvas to fill the page
....
Printer.EndDoc;
....