| <<<Back 1 day (to 2015/08/19) | 20150820 |
kens | rayjj your suggestoin of ignoring AlphaBits doesn't make sense. THe pdfwrite devcie already ignores them, the problem arises when a path through the graphcis library ends up trying to use the device's get_bits() method. Since there is no canvas we cannot return anything meaningful. Returning NULL causes a crash. The only sensible thing we could do in pdfwrite et al is flag up a warning and tell people not to use those. | 07:12.38 |
Robin_Watts | kens: Could the vector devices check for TextAlphaBits/GraphicsAlphaBits, and if found, print a warning/reset them? | 08:22.27 |
| Or (better), could the graphics lib have a mechanism for asking the device if it should ignore text/graphicsalphabits? Maybe a dso? | 08:23.25 |
kens | Robin_Watts : I'm looking into overriding the settings in the vecor devices | 08:42.50 |
| The latest problem is nothing to do with TextAlphaBits (or at least, not direclty) | 08:43.11 |
| By the time we get to the graphics library, the use of get_bits causes the warning and an error, so its entirely safe. | 08:44.11 |
| The text problem is due to the font code assuming that what is passed in as a text enumerator is actually a show enumerator, whch it isn't when using teh vector devices. THat's normally not a problem, but in the case of TextAlphaBits it takes a path which does cause trouble. | 08:45.37 |
M2X | Hello | 09:43.34 |
ghostbot | Welcome to #ghostscript, the channel for Ghostscript and MuPDF. If you have a question, please ask it, don't ask to ask it. Do be prepared to wait for a reply as devs will check the logs and reply when they come on line. | 09:43.34 |
M2X | I need to create a double page (pdf) and I need to keep vectorial forms with GS like http://nsa38.casimages.com/img/2015/08/20/150820114916561967.png with to separated pdf files | 09:46.33 |
| with two separated pdf files* | 09:46.53 |
Robin_Watts | M2X: Sorry, you'll have to be clearer. What is the input to your process? PS or PDF? | 09:47.40 |
kens | The simple asnwer there is 'you can't do that' | 09:47.55 |
M2X | My input is two separated pdf files | 09:48.18 |
kens | In practice it can be done , but you will have to alter teh PDF interpreter to do so, whcih means you need to understand and write some PostScript code | 09:48.37 |
Robin_Watts | M2X: So you want to take 2 input PDFs, and merge them into 1 output PDF file that has both input pages on the same output page? | 09:49.05 |
M2X | Robin_Watts: Yes, is that, my output page width is equal to 2* my input page width | 09:50.00 |
kens | depending on the nature of the PDF fiels, you could convert them to PostScript, use one fo the 'n up' PostScript imposition tools, and then convert back to PDF, but there is the possibility of loss of fidelity. | 09:50.12 |
Robin_Watts | M2X: That's the kind of thing that could be done using the new operator filter stuff in MuPDF. | 09:50.36 |
M2X | kens: I don't understand exactly what you said. | 09:50.36 |
Robin_Watts | But it requires programming at the C level currently. | 09:50.46 |
M2X | Robin_Watts: For that, I need to use MuPDF? | 09:51.00 |
kens | Looking at the .png that's way too complex, it looks to me likely that ths wil involve transparecny, CIDFonts and other elements which won't wokr well with a PostScript conversion | 09:51.20 |
| M2X : whatever you do will require programming, neither tool will do thsi 'out of the box' | 09:51.43 |
| However if you Google for PDF imposition you will probably find tools which will do it. | 09:52.01 |
M2X | Because for now, I use "podofoimpose" to do that and I have some troubles with that.. Like transparency fails, Font lost.. etc.. | 09:52.06 |
Robin_Watts | M2X, yes. | 09:52.48 |
kens | Sounds like its converting to PostScript, imposing the two, and then converting back to PDF, that's exactly the sort of problem I would expect form the file you posted | 09:53.03 |
Robin_Watts | M2X: gs (when outputting PDF) always works by converting the PDF operations to marking ops, then converts those marking ops back to make a new PDF file. | 09:53.45 |
| It does the best job it can to preserve everything, but it's not perfect (blame the PDF spec). | 09:54.12 |
M2X | kens: I know that. Actually GS works with like 1.000.000 pdf per year. And It look like a great pdf tool, but make a double page is always a problem.. | 09:54.38 |
Robin_Watts | Working at the MuPDF level, it's technically feasible to do the imposition by manipulating the stream of PDF operators directly. | 09:54.55 |
| hence it's more lossless. | 09:55.14 |
kens | M2X it can be done, but like I said, you would need to modify the PDF interpreter, whcih is written in the PostScript programmign language. | 09:55.20 |
M2X | I think use MuPDF is the most for me. I go to look on this way.. | 09:55.41 |
Robin_Watts | M2X: It's very new. There are no google results to help you yet. | 09:56.18 |
M2X | Robin_Watts: Yes, I know.. But if it's the best, my dev's can be a lot on programming to use this API.. | 09:57.05 |
Robin_Watts | Cool. | 09:57.22 |
M2X | Slowly we migrate our infrastructure; and we want to use only linux environment for our servers | 09:59.13 |
Robin_Watts | M2X: Who are 'you' if you don't mind me asking? It's always nice to know where our software is used. | 10:00.31 |
M2X | Reymann Communication, from Fance | 10:01.35 |
| France* | 10:01.37 |
Robin_Watts | If you are using gs (or MuPDF) as part of your infrastructure, then you should possibly consider a support license from Artifex. | 10:02.41 |
| And you should certainly be aware of the license terms; they are both dual licensed under the GNU AGPL and commercially by Artifex. | 10:03.20 |
M2X | Yes, It can be possible. But for now, I want to use it for developement, and I want to be totally sure for use it definitely | 10:04.19 |
Robin_Watts | The GNU AGPL is like the GNU GPL, but with an additional clause that says that if you use them on a server that's accessible to anyone outside your company and make any changes to them, you need to release the changes under the same terms. | 10:04.21 |
| Sure, not trying for a hard sell here, just making sure you're aware of the issues :) | 10:04.40 |
| The commercial license from Artifex removes all those issues. | 10:05.00 |
M2X | I don't understand exactly what you mean, my english is a little rusty.. | 10:07.05 |
Robin_Watts | M2X: OK. I'll try again more simply. My french is not good enough to translate for you :) | 10:07.55 |
| You can use GS or MuPDF if you follow the terms of the GNU AGPL. | 10:08.42 |
M2X | Robin_Watts: Okay I understand :) | 10:09.00 |
Robin_Watts | If you cannot follow the terms of the GNU AGPL, then you can get a commercial license from Artifex, which removes all the tricky conditions. | 10:09.22 |
| If you can't follow the GNU AGPL, and you won't get a commercial license, you can't use the software. | 10:09.46 |
M2X | Use gs for us, is only in internal no worry | 10:10.04 |
Robin_Watts | The GNU AGPL is like the GNU GPL, but with additional clauses about using it on a server. | 10:10.24 |
M2X | Yes, I understand. I go to read the GNU AGPL terms | 10:10.27 |
Robin_Watts | With the GNU GPL, if you use it on a server, it doesn't count as 'distribution'. With the GNU AGPL it effectively does. | 10:11.36 |
| Hence if you have a server where customers submit jobs, and that server uses gs, the conditions of the GNU AGPL apply | 10:12.24 |
M2X | Have you any link to the licensing information? | 10:13.55 |
Robin_Watts | M2X: It's supplied in every copy of the source :) | 10:15.02 |
| and with every copy of the binaries. | 10:15.10 |
| http://artifex.com/page/licensing-information.html | 10:15.27 |
M2X | I actually read this page | 10:15.46 |
| I don't really understand the part of the licensing and distribution. In our case, we don't licensing any application, on api, on nothing. | 10:20.05 |
Robin_Watts | M2X: You say you run gs on a server. | 10:20.55 |
| Who uses that server? customers, or just people within your own company ? | 10:21.10 |
M2X | We have a Indesign server who generate 300dpi pdf, and gs is on a server who actually convert the 300dpi to 150 dpi automatically. Just that for now. But I look for some other features | 10:22.14 |
Robin_Watts | M2X: If it's just used by people within your company, then there is no problem. | 10:22.43 |
M2X | It's exactly that | 10:23.15 |
Robin_Watts | Then, as I understand it, you are fine. | 10:23.30 |
| (But I am not a lawyer, so this does not constitute legal advice :) ) | 10:23.49 |
M2X | yes, it's totally normal. So I think when we do more with gs I contact Artiflex to have more informations about licensing? | 10:25.00 |
| You think it's the best way? | 10:26.26 |
Robin_Watts | M2X: Sounds good to me. | 10:32.55 |
M2X | I have one more question for you | 10:33.37 |
| Do you know any ghostscript expert who is based in France to help up with if we want to do more? | 10:34.29 |
kens2 | You need someone who is a *PostScript* programmer, not a Ghostscript exeprt | 10:35.53 |
| But no, I don';t know any PostScript programmers in France | 10:36.15 |
| I'm sure there must be some left still | 10:36.24 |
M2X | Thanks for your help :) | 10:37.03 |
kens2 | FWIW I did write a 2-up imposition program for PDF files, whcih worked when both pages were in the same file, however I've since lost it, and the pastebin where I had shared it has expired | 10:37.04 |
| But it shows the task can be done | 10:37.16 |
M2X | in our case, both pages are the same size in height and width so I think it's can be great | 10:38.25 |
| so bad.. :( | 10:38.40 |
Robin_Watts | fredross-perry: (For the logs) There is a commit on robin/master to fix the multipage issues with Android MuPDF/GProof. | 11:44.14 |
| I believe you can get the current pagenumber within MuPDFActivity by using mDocView.getDisplayedViewIndex() | 11:45.28 |
kens2 | Robin_Watts : is that in answer ot the queston on Stack Overflow ? | 11:55.29 |
Robin_Watts | kens2: No, that was to fredross-perry. | 11:55.59 |
| What's the SO question? | 11:56.03 |
kens2 | http://stackoverflow.com/questions/31762019/how-to-get-current-page-in-mupdf | 11:56.15 |
Robin_Watts | Ah. Let me confirm the answer with Paul, and I'll stick a reply up. Thanks. | 11:57.12 |
kens2 | NP I've been ignoring it, since I had no clue.... | 11:57.26 |
tor8 | Robin_Watts: kens: help! how do I create a new static library project in visual studio? | 13:59.51 |
kens | Umm, no idea.... | 14:00.19 |
| new win32 projhect perhaps ? | 14:00.29 |
tor8 | I tried adding an empty project, and it defaulted to trying to compile an executable... | 14:00.45 |
kens | Yeah that one | 14:00.46 |
| WHen it goes to the win32 applicaton wizerd, press the 'next' button | 14:01.07 |
| THen you get a dialog that allows you to select a static library | 14:01.21 |
tor8 | aha! | 14:01.41 |
| thanks. | 14:01.42 |
kens | NP | 14:01.45 |
Robin_Watts | fredross-perry: Morning. | 14:55.01 |
| Didn't see you arrive, sorry. | 14:55.14 |
fredross-perry | howdy. saw your note in the log earlier | 14:55.17 |
Robin_Watts | Ah, cool. | 14:55.21 |
fredross-perry | im just getting up, coffee, then iâll take a look | 14:55.41 |
Robin_Watts | I noticed your mIsProofing thing earlier... I'm not sure that's right. | 14:55.46 |
| We can talk when you're caffienated :) | 14:56.17 |
fredross-perry | iâm just trying to track when weâre in a proofing version of the activity, and when not. | 14:56.36 |
Robin_Watts | yeah, but the mechanism you are using there is bad, I think. | 14:57.32 |
| It only works because you have mIsProofing as static. | 14:58.29 |
| because it will be set/cleared in the calling instance, rather than the proofing instance. | 14:58.45 |
| And given that we can have several instances running, that can mean that it'll be set in some instances when it shouldn't be. | 14:59.07 |
fredross-perry | thanks, iâll look at that. youâre probably right | 14:59.09 |
Robin_Watts | We should come up with a better test. | 14:59.18 |
| (what you have will do for a demo, probably) | 14:59.33 |
fredross-perry | maybe if the current instanceâs file is a gproof file. | 14:59.57 |
Robin_Watts | fredross-perry: That would be the right test. The question is how to do that :) | 15:00.11 |
fredross-perry | yes | 15:00.40 |
Robin_Watts | We know 'pdf or not' by calling pdf_specifics. | 15:01.18 |
fredross-perry | is there an instance of core for every activity instance? We can hold it there. | 15:01.26 |
Robin_Watts | We possibly need a gprf_specifics call. | 15:01.33 |
| fredross-perry: Holding it in the core is the right thing to do. Just not as a static. | 15:01.51 |
fredross-perry | iâll do that then. back in 30 | 15:02.05 |
Robin_Watts | I'm not sure how you'd know what to set the flag in the core to though. | 15:02.43 |
Robin_Watts | does the mvrhel summoning dance. | 15:03.05 |
fredross-perry | Robin_Watts: easier yet: the acivity is started with a request code of PROOF_REQUEST. Just need to retrieve that when we need it. No core involvement required. | 16:05.46 |
mvrhel_laptop | morning | 16:11.54 |
kens | Morning | 16:12.06 |
fredross-perry | henrys: robin_watts: new android version at http://ghostscript.com/~fred/gsproof-dev.apk this one handles multiple pages. Thanks Robin | 16:31.07 |
| The separation values checked are per-page. So if I disable a separation on page 1, itâs still enabled on page 2. | 16:31.58 |
| Do we have any docs that will produce separations other than CMYK? | 16:58.53 |
rayjj | fredross-perry: I know we do. Just wait a bit and I'll make a list from tests and tests_private | 17:16.07 |
fredross-perry | sâcool | 17:43.48 |
Robin_Watts | mvrhel_laptop: Hey. You about ? | 17:50.14 |
mvrhel_laptop | Hi Robin_Watts | 17:52.18 |
| I am | 17:52.22 |
| actually I was going to ping you in a bit. | 17:52.42 |
Robin_Watts | Actually, we should do this in on skype as it's SOT. | 17:52.59 |
mvrhel_laptop | uh oh | 17:53.05 |
| I dont know if I can be much help wrt that | 17:53.16 |
| hold on | 17:53.23 |
| Robin_Watts: actually I should just look at the code first before asking you | 18:08.06 |
| I am just at the point where I need to get the sep color information and to be able to do a call to render with various seps on/off | 18:08.36 |
| but let me review the code first to understand what the api to mupdf is for this | 18:09.17 |
rayjj | fredross-perry: just an example of one with three spot colors is tests_private/comparefiles/425919.pdf | 18:10.04 |
| and tests_private/comparefiles/Bug690206.pdf has 10 spot colors | 18:11.39 |
fredross-perry | where is tests_private? | 18:12.02 |
rayjj | I don't know where you have access to -- I get them from one of the regression nodes. They originate in svn-private on casper, but they aren't in raw form there, AFAIK | 18:13.29 |
| fredross-perry: I can get you set up on peeves using ssh (I'll copy your public keys from casper | 18:14.10 |
| just a sec | 18:14.14 |
fredross-perry | thanks | 18:14.20 |
Robin_Watts | fredross-perry: If you just want a single file, easiest to get it via the web. | 18:15.37 |
| Go to the regression dashboard (http://ghostscript.com/regression) and follow the "Fetch test files" link. | 18:16.03 |
fredross-perry | ok | 18:16.11 |
henrys | I can't find rayjj test file on the web or locally on henrysx6 | 18:17.31 |
fredross-perry | thatâs cool. Canât find 425919.pdf (but did find the other) | 18:17.47 |
mvrhel_laptop | brb | 18:21.12 |
rayjj | fredross-perry: you should be able to get them now from fred@peeves.ghostscript.com:/home/marcos/cluster/tests_private/ | 18:23.17 |
| henrys: the 425919.pdf may just be in my local copies but /home/marcos/cluster/tests_private/comparefiles/Bug690206.pdf is there. | 18:25.29 |
| fredross-perry: please try ssh to peeves.ghostcript.com and let me know if it works for you | 18:26.11 |
fredross-perry | yes I can, thanks | 18:27.28 |
rayjj | tests_private/comparefiles/Bug692961.pdf has 14 spot colors | 18:27.30 |
| fredross-perry: OK. | 18:27.35 |
| I'm still scanning the list... | 18:27.53 |
mvrhel_laptop | The altona file would be a good one to do | 18:29.41 |
Robin_Watts | Yeah, Altona is a standard test that printers use, so it would be good to demo. | 18:33.13 |
| fredross-perry: In the android app, in your menu of separations, would it be possible for there to be a swatch of the equivalent color in the menu? | 18:33.52 |
fredross-perry | I am hoping so, but that proved not simple a couple of days ago. But yes. | 18:34.22 |
| I am also hitting something interesting with one of the bug files. It has 14 separations. The 13th one is called âCopy Limitâ, with cmyk=0 and rgba=-1. When I try to get the 14the separation, I get a crash in core. | 18:35.54 |
Robin_Watts | fredross-perry: ooh. Mail me details if you don't solve it and I'll look tomorrow. | 18:38.29 |
fredross-perry | will do. | 18:39.07 |
mvrhel_laptop | Robin_Watts: looks straight forward. working on getting the sep control working in gsview now | 19:24.18 |
| Forward 1 day (to 2015/08/21)>>> | |