number of papers to be used durin printing; a formula that I can't solve; using mspublisher pages

Im looking for a formula or math calculation of ms publisher pages

The default paper size is 8.5 x 11[in] or A4 (the paper to use in printing) I'm finding a way to retrieved how many papers to be used during printing with Microsoft publisher pages.

if the pagesize is tabloid(11x17[in]), what is the formula to result a 4pieces of default paper
if the pagesize is banner(60x8.5[in]), what is the formula to result a 6pieces of default paper

I have solve that but using different formulas, of which the code grows longer.

i got this for banner(60x8.5[in]), of which I'm not sure for other banner width and height to come

i got this for banner (24x72[in]), the result is 20 pages, which is 21pages(the correct)with A4

Dim formula1 As Integer = Convert.ToUInt32(aDoc.PageSetup.PageSize.PageWidth) + Convert.ToUInt32(aDoc.PageSetup.PageSize.PageHeight) Dim formula2 As Integer = formula1 / 792 Dim formula3 As Integer = formula1 / 612 Dim formula4 As Integer = formula2 + formula3 pagenum = formula4

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

You'll need to calculate the amount for height and the amount for width separately. For example, a 3x13 print size will need two pages, while 7x9 needs just one (with 8.5x11 paper), but if you add height and width together, each of them is a total of 16 inches, with no way to distinguish them.

Can you determine whether the printer is set for portrait or landscape mode? In other words, an 11x17 tabloid will be 2 pages if it's printed on 11x8.5 pages, but it'll be 4 pages if it's on 8.5x11 pages.

Assuming you can get printer output dimensions, which I'll call PrinterHeight and PrinterWidth, your formula would be:

Do you wonder if your IT business is truly profitable or if you should raise your prices? Learn how to calculate your overhead burden with our free interactive tool and use it to determine the right price for your IT services. Download your free eBook now!

>>Can you determine whether the printer is set for portrait or landscape mode?
No, but I can determine the page setting if is portrait or landscape

Dim PubApp As New Publisher.ApplicationDim aDoc As New Publisher.DocumentaDoc = PubApp.Open(PathnFileName, True, False, Publisher.PbSaveOptions.pbDoNotSaveChanges)aDoc.ActiveWindow.Visible = False''//This only counts the page number, But not the real count of pages to be printedDim pagenum as Integer = aDoc.Pages.CountIf aDoc.PageSetup.PageSize.Name.Contains("Portrait") Then''//ElseIf aDoc.PageSetup.PageSize.Name.Contains("Landscape") Then''//End If

>>In other words, an 11x17 tabloid will be 2 pages if it's printed on 11x8.5 pages, but it'll be 4 pages if it's on 8.5x11 pages.
Ok, here's some image,
>>Assuming you can get printer output dimensions, which I'll call PrinterHeight and PrinterWidth
I'll try
thANKS, ill be back

I'm actually not surprised. The printer hasn't been selected when you open the file; you're not in the middle of a print job. So I think what you'll have to do is either set a standard page size, or allow the user to select what page size he plans to use for printout (perhaps from a PrintDialog that would be in your app), and then calculate the number of pages accordingly.

Dim adocPageCount As Integer = aDoc.Pages.Count Dim formula2 As Integer = CInt((Convert.ToUInt32(aDoc.PageSetup.PageSize.PageHeight) / 792) + 0.999) Dim formula3 As Integer = CInt((Convert.ToUInt32(aDoc.PageSetup.PageSize.PageWidth) / 612) + 0.999) Dim formula4 As Integer = formula2 * formula3 * adocPageCount pagenum = formula4

OK, let's troubleshoot. What are the values of PageHeight and PageWidth that you're getting? What is the value of formula2, formula3, and adocPageCount? Where do 792 and 612 come from? (That's not the correct ratio for either letter or A4, whatever the unit of measure is.)

>>What are the values of PageHeight and PageWidth that you're getting?
Ok,
this is what I got:
aDoc.PageSetup.PageSize.PageHeight is 1224
aDoc.PageSetup.PageSize.PageWidth is 792 ( I guess this is the default width of tabloid portrait)

The aDoc.Pages.Count is 1(cause it's only 1 page of tabloid), if its 2 then we have to multiply it by 2

Also, I was mistaken in using CInt. CInt rounds on conversion; I meant to truncate the results of the calculation. It should be Int() instead. The purpose of adding .999 and then truncating is to make sure that the results are always rounded up to the next whole number. (We still need CInt, though, to convert to Integer form.)

With a document size of 1224 x 792, the formulas should be:

formula2 = 1224 / 792: round up to 2
formula3 = 792 / 612: round up to 2

1224 / 792 = 1.55; we added .999, which gave us 2.54. With proper truncation, the result is 2. Using CInt, which rounds, the result is 3, which multipled by formula3 (value: 2) gives us 6.

Note that if the page is reoriented in landscape mode, output should fit on two pages.

So the corrected formulas should be:

Dim adocPageCount As Integer = aDoc.Pages.Count Dim formula2 As Integer = CInt(Int(aDoc.PageSetup.PageSize.PageHeight / 792 + 0.999)) Dim formula3 As Integer = CInt(Int(aDoc.PageSetup.PageSize.PageWidth / 612 + 0.999)) Dim formula4 As Integer = formula2 * formula3 * adocPageCount pagenum = formula4

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

oh, in landscape its 6 pages, can't figure it out why

It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for freeEdge Out The Competitionfor your dream job with proven skills and certifications.Get started todayStand Outas the employee with proven skills.Start learning today for freeMove Your Career Forwardwith certification training in the latest technologies.Start your trial today

Can you determine whether the printer is set for portrait or landscape mode? In other words, an 11x17 tabloid will be 2 pages if it's printed on 11x8.5 pages, but it'll be 4 pages if it's on 8.5x11 pages.

Assuming you can get printer output dimensions, which I'll call PrinterHeight and PrinterWidth, your formula would be:

PageHeight = Math.Int(aDoc.PageSetup.Pa

PageWidth = Math.Int(aDoc.PageSetup.Pa

PagesUsed = PageHeight * PageWidth