IRC Logs

Log of #ghostscript at irc.freenode.net.

Search:
 <<<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 devices08: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 Hello09: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 files09: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 files09: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 code09: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 width09: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 conversion09: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 posted09: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 Fance10: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 worry10: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 terms10: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 apply10: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.html10:15.27 
M2X I actually read this page10: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 features10: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 that10: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 you10: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 exeprt10:35.53 
  But no, I don';t know any PostScript programmers in France10:36.15 
  I'm sure there must be some left still10: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 expired10:37.04 
  But it shows the task can be done10:37.16 
M2X in our case, both pages are the same size in height and width so I think it's can be great10: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-mupdf11: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 one14:00.46 
  WHen it goes to the win32 applicaton wizerd, press the 'next' button14:01.07 
  THen you get a dialog that allows you to select a static library14:01.21 
tor8 aha!14:01.41 
  thanks.14:01.42 
kens NP14: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 earlier14:55.17 
Robin_Watts Ah, cool.14:55.21 
fredross-perry im just getting up, coffee, then i’ll take a look14: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 right14: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 yes15: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 3015: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 morning16:11.54 
kens Morning16:12.06 
fredross-perry henrys: robin_watts: new android version at http://ghostscript.com/~fred/gsproof-dev.apk this one handles multiple pages. Thanks Robin16: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_private17:16.07 
fredross-perry s’cool17: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 oh17:53.05 
  I dont know if I can be much help wrt that17:53.16 
  hold on17:53.23 
  Robin_Watts: actually I should just look at the code first before asking you18: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/off18:08.36 
  but let me review the code first to understand what the api to mupdf is for this18:09.17 
rayjj fredross-perry: just an example of one with three spot colors is tests_private/comparefiles/425919.pdf18:10.04 
  and tests_private/comparefiles/Bug690206.pdf has 10 spot colors18: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, AFAIK18:13.29 
  fredross-perry: I can get you set up on peeves using ssh (I'll copy your public keys from casper18:14.10 
  just a sec18:14.14 
fredross-perry thanks18: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 ok18:16.11 
henrys I can't find rayjj test file on the web or locally on henrysx618:17.31 
fredross-perry that’s cool. Can’t find 425919.pdf (but did find the other)18:17.47 
mvrhel_laptop brb18: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 you18:26.11 
fredross-perry yes I can, thanks18:27.28 
rayjj tests_private/comparefiles/Bug692961.pdf has 14 spot colors18: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 do18: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 now19:24.18 
 Forward 1 day (to 2015/08/21)>>> 
ghostscript.com
Search: