Print Preview issue in Android app

Hello,

Thank you for the quick answer. Sound good. Here are some more details, which I think shows the content’s “metadata” sent from Practiscore to PDF print is modified somehow, - and still just guessing spread through devices via sync, as explained how it started with 1 now all devices has the issue…

At the step before the screenshot I’ve shared, the content is good in Practiscore, magnify it and still ok. If we are going for the share option in Practiscore, which creates html output that way is fine -> later if I open the html in a browser on the same device and print it into PDF everything’s fine. The PDF printing is 100% the same used in the browser :slight_smile:

There must be something which causing this, as like 4-5 months ago none of them had this problem. There’s no PDF printer applications installed on Android, so it must be a default, system shipped service you are right. If I’m doing print from another app, this time it was Chrome, the print preview and the resulting PDF is flawless (attached). So, I still suspect the difference lays how the Practiscore content sent to the [PDF] printing service.

Thanks again,
Attis

If you really need technical details… Before printing results are scrollable and in most cases do not fit the screen width to be readable.

When preparing a report for printing the app changes report width to be 100% width of the paper. But then things get ugly if font sizes are too large for content to fit the paper page, so we also have to scale it down.

Now, if your match has 32 stages it needs to be scaled significantly more than a match that does have 4 stages and there isn’t really an easy way to automatically scale it to the right amount. Few months back I had to increase that scaling factor due to other users reporting that content doesn’t fit on the screen when printed.

The Chrome browser on desktop has an option in the print preview dialog to change the scale factor, so you could adjust content on the fly, but Android (which uses the same Chrome engine for printing) doesn’t provide such an option.

Hello Eugene,

Thanks for the info, that’s perfectly clear you need to work with the various different sized screens of the devices and the actual paper size to generate a proper layout for the paper. If you have changed the code because of that reported unfit content: please share, what was the version fit the changed scaling factor? I would test the pdf print with the version before to see if that makes any changes (that it would close out my initial thinking about the metadata way, which now seems silly)

Now we are getting into another subject - I’ve created separate topic to not mix things: a quick question: what do you say, would it be possible to generate a landscaped layout instead of portrait, or is it exist just I did not know how to do it? I’d like to put the content onto a big TV screen for competitors onsite during the matches - which are usually 16:9 wide screens - landscape. The base of the whole casting thing is to get the content formatted/shared/printed in landscape mode. It would be multiple pages of course. There are tools on Google Play, can convert PDFs to images, tested works ok.

Thanks,
Attis

I won’t be able to provide you the exact app version. Also note that Android devices are getting updates for the system web view that could affect printing and those are also outside of our control.

I already answered your other post. Generally the printing support from the app is an optional low priority feature provided on a best effort. If you want us to verify printing with your match results, please provide a link to the posted match results or email us the match export file *.psc at [email protected]

First time of this issue was around mid summer, so I’ve tried 1.6.45 and 1.6.43 no luck yet. I’ll try earlier versions later.
The Android OS update could be a factor, but there are at least two devices those are not getting auto updates at all and one of them get no google updates and practiscore installed manually. One is a new a Huawei tab with Android 10, other is a test device, right now with Android 5.

Thank you for your time. What’s the official way to get notified about version releases and version changes? At the blog found no RSS or other subscription kind stuff. Also, can you share how should I parameter the android app downloader android.php? Giving =1.6.45 format always gives the latest as =latest. If its to wide, I can contact you privately.

I’ll update this topic, if I found a version has no PDF preview/print issue on android (Or if not).

Thanks,
Attis

@Att_is we don’t have an option to download older app versions, and don’t provide support for these older app versions either.

Like I said, we can test printing of your match results for the future app release, but you need to share your match with us.

You can get notifications on the app updates from the Google or Amazon app stores (even if you have automatic updates turned off). Also, most of the updates for Android app are posted to the PractiScore scoring app for Android topic and the big ones are also posted at on the PractiScore page on Facebook.

You can get RSS feeds with updates for those (directly or indirectly).

I’ve got them from apkpure, and checked them with our malware tests just to be on the safe side.

In Practiscore.com, the last one we have this issue is:
“Match Name: 12. Metál Mánia”
“Match Date: 2020-11-15”

Thank you for your help

A couple of months ago I was able to print scores to a PDF file and email them out to shooters. Now when I try to do it the file is compressed and you can’t make out or see the scores. I thought it was on my end but, think something changed with the app. Is there a way to print scores off the app?

Known issue. Will try to address it in the future app update.

If you want your match tested for that provide link to results here or email it or the match export file to [email protected]

PS: merged this topic with a previous one on this issue

A couple of months ago I was able to print scores to a PDF file and email them out to shooters. Now when I try to do it the file is compressed and you can’t make out or see the scores. I thought it was on my end but, think something changed with the app. Is there a way to print scores off the app?

Hello Eugene,

In the past time I’ve raised this topic we had an IPSC competition and those results were good, no issue with the PDF print size and readability.

The weekend before last we had Steel Challenge: not just the PDF preview and its the final PDF, but the shared HTML is over compressed when you wanna print it - even in desktop PC with Chrome.

The HTML print only wrong if you use a Google product for print:

  • print the exported HTML from Chrome browser on desktop or from Android,
  • PDF print from Practiscore directly with its PDF printing option
  • NOT all competition results are wrong, in our case only the Steel Challenges, IPSC ones are good.

There’s a value, which changes the sizes of the print, which really low. I’ll do a quick fix in the app and test it.

Thanks,
Attis

Hello Chad,

A manual fix worked for us, while Eugene make a fix, share we this value stored in the app itself: share the competition results with some way you have on your smartdevice(s): e-mail, file, chat, etc. The result will be a HTML file. Open that HTML in and editor, in Windows there’s “notepad” for example.

After you opened in your favorite editor search for this “body { zoom”. Change the % to something between 50-100 from the value you have, and save it. Open it in a browser on your PC, phone, tablet and print to PDF or paper -> what you need.

Attis

@Att_is you kinda mixing up cause and effect. The app puts zoom 3% for printing in order to get results fit to paper (someone reported issue with a really large match in the past). The more stages match has - the wider report gets, but the app doesn’t know when they fit and when don’t, so I had to guess. For the new release I changed it to like 30%, that should be enough to fit 30ish stages (less for Steel Challenge).

The desktop browser has the zoom setting in the printing dialog, so you can change it before printing, but mobile browser and printing preview on Android don’t have such setting.

Hi Eugene,

Its possible, but based on the tests I believe not. :slight_smile:

Saying in the CSS “body {zoom: 5%}” means you have decreased the size of the content with 95% → result non readable output, this is what we have now. I’ve checked what the CSS "standard’ says, and tested it with 15%,30%,50%,80%,100%. From 50% it was readable.

IF you use the number only, not with the percentage sign “body {zoom: 5}” means the content will be magnified by 5. Simple way how percentage and multiply works: → 500%

Based on your answer I guess you wanted to scale it by either

  • +5% or (zoom 105% or zoom:1.05)
  • +50% (zoom:150% or zoom: 1.5)

Please check the different ways, and what they cause. You can check it for example at css-tricks.com. Magnifing/transforming with +30% looks a bit big number, as I did checked the 50% 100% values and even the 50% was good, which actually shrined the text by half.

Thanks for the planned change (and fix at the same time) in the next release, sounds good!
An Idea: what if you set a default zoom value you choose, but let the user set it him/herself too? With that way this whole subject goes away…

Cheers,
Attis

@Att_is I wasn’t been able to come up with any universal number that works. So, there is a compromise.

If zoom is too large - the with is truncated and does not with to the page when printed.

Try to create two IDPA matches (that type is the worse out of all of them, timeplus and SASS are similar). One match with 3 stages and another one with 30 stages. Add a few shooters and scores and then try to print. You can also export/share html and play with different CSS settings.

I have no experience with IDPA yet at all, but you have so you have better overview on that side for sure.
I’ve learned checking you code, that the HTML output of the various types of matches are different: IPSC and SC are completely different in source (the latter is unreadable - have put into a code beautifier after seen the IPSC one to compare it). So IDPA can be total different again, there were 3 hits for the “zoom:5%” in the code, I guess one was the SC, the other two would be IDPA + one other. The IPSC HTML source had no zoom at all hence the were no issues there.

Sounds good! Would you share the actual universal number you have been figured out in the exact HTML/CSS code you want to use? In light of the actual shrinkage of SC in the published code - cause of the mixed use of zoom value w or w/o the % sign, its worth to have a second pair of eyes.

The quick&dirty fix I did into an apk works with zoom: 50% (eg. half sized) and another one with zoom: 100% (eg. normal size). But just tested with our previous SC results. The difference was the size of the texts (obviously) and the number of pages.

Worrying about the data gets truncated: I’ve not really got you on that. Just in case of any kind of high density data export(or print)/page which has lot of horizontal information a.k.a long rows, one can alway set either a bigger paper size or a landscape view on the same paper size. So manipulating the original size of content because of that seems to me asking for trouble/problems.

@Att_is you don’t need to be familiar with any match or even look in the code in order to try that.

Just create a match in the app, add stages, add shooters and enter some scores. Any scores really. Then try to print. 50% zoom may work for Steel challenge, mostly because there is only 8 stages.

If you want to invest some time into this, play with different match types and see how much stages you can fit on the paper when printing to pdf.

I understand you and I’m sure you are right about the IDPA. Also whatever transformation rate you are using in IDPA, it’s must not be the same for Steel Challenge at all. In your app there were 3 slightly different CSS with zoom: 5% already, so there must be different presentation for the different competition types.

In case of Steel Challenge I can tell you this: all the columns are fit in 50% and 100% zoom values both in case of Letter or A4 paper sizes with either portrait or landscape mode. In other words it works and readable even in its original size, there’s no need any shrinking at all at the first place. I can send you the modified samples of the HTML exports original or PDF printed, but some other channels: this forum only let pictures to attach. One thing is sure, below 50% or half of the original size the text are undreadable. Of course it can’t beat the 95% shrinkage how is right now, but still.

I just hope you are not so into hardwiring this, but please don’t put it under half of the original size in case of Steel Challenge competitions.

Cheers

@Att_is I can’t dedicate a lot of time for this pretty printing, so it on the best effort out of the box. Besides, you can post results to PractiScore web site and share a link with your competitors instead of all of that.

If you want to do your own research, I’d need more details and specifics. To make changes for any of the match types I need corresponding test data and visualization for all variants of match types (or for the worst ones). Unfortunately don’t really have time for doing such detailed testing right now.

Here is an example for Steel Challenge:

100% zoom - doesn’t fit paper

50% zoom - all fits (but not much room for adding more stages)

30% zoom - all fits (text is on a small-ish size, but still readable)

Thank you, I’m good: checked the HTML outputs and compared with the practiscore app and in three const-strings there were the zooms. With that provided you the root cause of the original problem and as a follow-up explained the zoom usage as well. :slight_smile:

Checked your screenshots thanks, uploaded the one I was played with in return. If the are not fit as yours shows, one can always choose to print in landscape mode.

You have put together a great app, lots of people use it weekly even daily. It’s not a rule that you have to solve everything within the app, let them use their everyday sense, and you’ll get a rid of the whole subject of print output resizing :smiley:
Even more, if you let them to set the zooming rate, the whole subject just disappear and you should never see it again, ever.

The attached the SC output I’ve been used for tests these are at 50% And it just 3 SC stages but in 50% it is quite roomy, can hold additional stages, and its cut out from a portrait mode PDF as screenshot. The others are the same they are good with 50% not truncate.