Hi,
I am using the function DrawToDC but it is taking too long to print the vector pages. Even on the text pages it takes upto 2-5 seconds per page to draw that page. Is there any sample that I can see that prints a simple file (a pdf) using this method so that I can follow the code?
I am currently using VB6 but am open to C# as well.
Regards,
M
DrawToDC method
Moderators: TrackerSupp-Daniel, Tracker Support, Vasyl-Tracker Dev Team, Chris - Tracker Supp, Sean - Tracker, Tracker Supp-Stefan
Forum rules
DO NOT post your license/serial key, or your activation code - these forums, and all posts within, are public and we will be forced to immediately deactivate your license.
When experiencing some errors, use the IAUX_Inst::FormatHRESULT method to see their description and include it in your post along with the error code.
DO NOT post your license/serial key, or your activation code - these forums, and all posts within, are public and we will be forced to immediately deactivate your license.
When experiencing some errors, use the IAUX_Inst::FormatHRESULT method to see their description and include it in your post along with the error code.
-
- User
- Posts: 5522
- Joined: Fri Nov 21, 2014 8:27 am
Re: DrawToDC method
Hello mmasood,
Please check out this topic, probably it should help:
https://forum.pdf-xchange.com/ ... 66&t=27826
If not, please provide a small sample with the code that you are using, so that we can look whether it can be optimized in your case.
Cheers,
Alex
Please check out this topic, probably it should help:
https://forum.pdf-xchange.com/ ... 66&t=27826
If not, please provide a small sample with the code that you are using, so that we can look whether it can be optimized in your case.
Cheers,
Alex
Subscribe at:
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
-
- User
- Posts: 269
- Joined: Tue Jul 07, 2015 3:30 pm
Re: DrawToDC method
Hi Alex -
The post you refer to talks about DrawToIXCPage.
If mmassod is trying to print directly to a printer is DrawToIXCPage still a viable (and faster) option?
Or is the original DrawToDC still the proper way?
Also, I have noticed delays of up to 30 seconds when trying to print a vector page.
So when I'm printing a PDF of a few pages it's not too noticeable, but when I try to print a PDF of 20+ pages,
the delays add up to several minutes. A 60 page document can take 15 minutes or more to print !
I tried using a bitmap option but the resulting printed output was not very good, regardless of my resolution.
Only vector output will work for me.
I will try to get some sample code and a document for you to review, but my clients documents all require NDAs.
I will probably have to make one up that has the same issue.
-Wayne
The post you refer to talks about DrawToIXCPage.
If mmassod is trying to print directly to a printer is DrawToIXCPage still a viable (and faster) option?
Or is the original DrawToDC still the proper way?
Also, I have noticed delays of up to 30 seconds when trying to print a vector page.
So when I'm printing a PDF of a few pages it's not too noticeable, but when I try to print a PDF of 20+ pages,
the delays add up to several minutes. A 60 page document can take 15 minutes or more to print !
I tried using a bitmap option but the resulting printed output was not very good, regardless of my resolution.
Only vector output will work for me.
I will try to get some sample code and a document for you to review, but my clients documents all require NDAs.
I will probably have to make one up that has the same issue.
-Wayne
-
- User
- Posts: 5522
- Joined: Fri Nov 21, 2014 8:27 am
Re: DrawToDC method
Hello whoit,
The correct method is to use the IPXC_Page::DrawToDevice method with the DDF_AsVector flag (if you want to print the vector pages that is) and omit using the IIXC_Page.
Cheers,
Alex
The correct method is to use the IPXC_Page::DrawToDevice method with the DDF_AsVector flag (if you want to print the vector pages that is) and omit using the IIXC_Page.
Cheers,
Alex
Subscribe at:
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
-
- User
- Posts: 101
- Joined: Fri Sep 18, 2015 9:49 pm
Re: DrawToDC method
Hi Alex,
I am using the following code to print out a 8.5 x 11 page:
The output is just a thumbnail. I have attached the file with the post.
What should I be doing to get the output page to be resized correctly?
Regards,
M
I am using the following code to print out a 8.5 x 11 page:
Code: Select all
Dim oPage As IPXC_Page
Set oPage = pDoc.Pages.Item(l_currentPage)
Dim oMatrix As PXC_Matrix
oMatrix.a = 1
oMatrix.b = 1
oMatrix.c = 1
oMatrix.d = 1
oMatrix.e = 1
oMatrix.f = 1
renderRect.Top = 0
renderRect.Left = 0
renderRect.bottom = 6120 '7920 '6120 '850 '612
renderRect.Right = 7920 '6120 '7920 '1100 '792
Dim oParams As IPXC_PageRenderParams
Set oParams = Form1.pInst.CreateRenderParams
oParams.PageViewBox = PBox_MediaBox
oParams.RenderFlags = RF_DisplayLargeImages & RF_SmoothImages
oParams.TextSmoothMode = TSM_ClearType
Dim oContext As IPXC_OCContext
Set oContext = Form1.pInst.CreateStdOCCtx
oContext.RenderType = RenderType_ModePrint
oContext.Resolution = 300
oContext.PrintContentFlags = CF_SETACTIVATEDEFAULT
oContext.ZoomLevel = 100
oPage.DrawToDevice Form1.clP.hdc, renderRect, oMatrix, DDF_AsVector, oParams, oContext
What should I be doing to get the output page to be resized correctly?
Regards,
M
You do not have the required permissions to view the files attached to this post.
-
- User
- Posts: 5522
- Joined: Fri Nov 21, 2014 8:27 am
Re: DrawToDC method
Hello mmasood,
Well, you will need to specify a correct transformation matrix. Here's a big topic and a post that starts the discussion about matrices:
https://forum.pdf-xchange.com/ ... 68#p112077
Cheers,
Alex
Well, you will need to specify a correct transformation matrix. Here's a big topic and a post that starts the discussion about matrices:
https://forum.pdf-xchange.com/ ... 68#p112077
Cheers,
Alex
Subscribe at:
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
-
- User
- Posts: 101
- Joined: Fri Sep 18, 2015 9:49 pm
Re: DrawToDC method
Hi Alex,
Can you please describe or provide a link where the description of how the matrix is constructed? I have went through the link that you provided and could not find it there.
I am using the Core Api if that makes any difference.
Regards,
M
Can you please describe or provide a link where the description of how the matrix is constructed? I have went through the link that you provided and could not find it there.
I am using the Core Api if that makes any difference.
Regards,
M
-
- User
- Posts: 5522
- Joined: Fri Nov 21, 2014 8:27 am
Re: DrawToDC method
Hello mmasood,
Well, the link I gave you implies that you will need to construct the matrix for yourself as it's a part of the PDF Specification, not the SDK. Also in that topic there is a pointer to the PDF Specification:
Alex
Well, the link I gave you implies that you will need to construct the matrix for yourself as it's a part of the PDF Specification, not the SDK. Also in that topic there is a pointer to the PDF Specification:
Cheers,You can read the PDF Specification to understand the matrices more:
8.3 Coordinate systems
8.9 Images
Alex
Subscribe at:
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
-
- User
- Posts: 101
- Joined: Fri Sep 18, 2015 9:49 pm
Re: DrawToDC method
Hi Alex,
I am still not able to figure out the matrix. Can you provide a sample matrix and render rectangle so that I can print a Letter size Portrait pdf onto a Letter size Portrait paper at 300 DPI?
Regards,
M
I am still not able to figure out the matrix. Can you provide a sample matrix and render rectangle so that I can print a Letter size Portrait pdf onto a Letter size Portrait paper at 300 DPI?
Regards,
M
-
- User
- Posts: 5522
- Joined: Fri Nov 21, 2014 8:27 am
Re: DrawToDC method
Hello mmasood,
Writing custom code is not a part of the SDK support. Though I have a sample that you might want to check out:
https://gist.github.com/Polaringu/0c7a1191ec1ff1e38176
Also, searching through forums (both Core and Editor) might be helpful.
PS: The methods used with matrices in the sample I gave are now a part of the SDK, though their naming is slightly modified - search the sdkhelp wiki for those.
Cheers,
Alex
Writing custom code is not a part of the SDK support. Though I have a sample that you might want to check out:
https://gist.github.com/Polaringu/0c7a1191ec1ff1e38176
Also, searching through forums (both Core and Editor) might be helpful.
PS: The methods used with matrices in the sample I gave are now a part of the SDK, though their naming is slightly modified - search the sdkhelp wiki for those.
Cheers,
Alex
Subscribe at:
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ
https://www.youtube.com/channel/UC-TwAMNi1haxJ1FX3LvB4CQ