IRC Logs

Log of #ghostscript at

 <<<Back 1 day (to 2012/02/09)20120210 
sebras quit00:18.07 
sebras quits00:18.11 
Samae Hi mupdf devs, how hard would it be to implement the one missing (for me) option in mupdf ?12:23.13 
  This feature being some kind of automatic zoom in width12:23.43 
Robin_Watts The core is more than capable of it.12:25.11 
  It's just the (simple) viewer app that needs tweaks to do it.12:25.26 
  It should be relatively easy to do, but I doubt we'll get round to it any time soon - our focus is on the internals.12:25.54 
  IF you have a go at it, we'd love to see what you end up with.12:26.09 
Samae Robin_Watts: I can't do anything for now, but when I do get a shot at it, I'll keep you in the loop13:23.57 
kurmi hi13:51.05 
  I ve been redirected from here13:51.29 
kens By me :-)13:51.33 
kurmi I need a good pdf viewer api for android13:51.53 
kens tor8 and Robin_Watts are the main people you want, feel free to ask questions13:52.16 
kurmi does mupdf contain view capabilities?13:52.27 
kens It can render a PDF, is that what you mean ?13:52.44 
kurmi not just for rendering13:53.00 
  also for viewing13:53.03 
kens What do you mean by 'viewing' ?13:53.14 
Robin_Watts kurmi, we have such an android app.13:53.16 
kurmi well I have a pdf document and I need to view it in a drawable area13:53.46 
Robin_Watts It's brand new (to the stage where the sources are not yet in our main public repo)13:53.47 
kurmi may be a custom view13:53.50 
Robin_Watts but you can try it out. Let me find the URL.13:54.00 
kurmi I've looked your open source code library but it seems to be a very common library13:55.03 
  for example do you have a demo project created for android13:55.24 
  that also includes library13:55.33 
kens The android viewer is a demo which uses MuPDF13:55.40 
  THere's a link on the website13:55.48 
Robin_Watts <- uploading now13:55.51 
  Upload complete.13:58.11 
kurmi thanks I m trying now13:58.21 
  it worked perfectly14:03.12 
  how do I get this demo?14:03.23 
Robin_Watts Sorry?14:03.55 
kens The sourec ?14:03.59 
kurmi yes source?14:04.06 
Robin_Watts To source isn't public yet. Expect it to be so within a few days.14:04.28 
kurmi so how will you release it? I need it really14:06.14 
Robin_Watts kurmi: The android viewer was just substantially updated for us by a contractor.14:06.52 
  He's given us the source back, and we need to review it before publishing it in our repo. It will be released under the GNU GPL license. If you want to use it in your own app, then that may be a problem for you. We will also offer it for commercial licensing though, so if you're interested, we can put you in touch with Scott.14:08.23 
kurmi for commercial licensing would be better14:08.56 
  do you have any idea of price?14:09.51 
Robin_Watts Why don't you send me a quick email (robin.watts at with a quick rundown of what you want to do with it, and I'll put you in touch with Scott.14:10.05 
kens Never ask developers :-)14:10.05 
kurmi :) sure14:10.10 
Robin_Watts The developers stay out of the commercial discussions, but...14:10.16 
kurmi I m also a developer but need to find a reasonable one14:11.03 
Robin_Watts we found that the normal commercial license didn't fit well with app developers - so we have a new 'special' one for app developers.14:11.04 
kurmi ok well, actually I will wait for it14:11.51 
Robin_Watts It's designed to allow for people that want to ship apps very cheaply.14:11.54 
kurmi any idea how long will it take?14:12.06 
Robin_Watts Waiting for the source release will still leave you needing a license to use it in your own app.14:12.30 
  kurmi: No. I suspect a week or so.14:12.59 
kurmi actually I don't want to bother with licensing stuff, I just want a reliable framework that I can use in my app peacely14:13.49 
  thanks ,Robin14:13.59 
Robin_Watts Well, if you don't want to bother with licensing, then we aren't the people to talk to.14:14.15 
kurmi I mean I don t understand from licensing very well, but I know that the gpl requires your source to be open14:15.59 
Robin_Watts kurmi: The GPL is far more than that.14:16.13 
kurmi so I request for another option14:16.18 
Robin_Watts Right.14:16.23 
kurmi whih is commercial I think14:16.31 
Robin_Watts Essentially you have 3 choices:14:16.31 
  1) Use the GPL version; this requires that all your source be open.14:16.50 
  2) Use a commercial licensed version (your source can stay closed)14:17.14 
  3) Don't use MuPDF at all.14:17.18 
  Clearly, we'd like to avoid 3) :)14:17.27 
kurmi of course14:17.34 
  2 would be fine for me14:17.50 
Robin_Watts so under the 2) option, we have a our usual "commercial" license or we have a special "commercial app maker" license.14:18.33 
  I strongly suspect the "commercial app maker" license is the one you'll want.14:18.47 
kurmi what app maker means?14:19.44 
Robin_Watts It's a commercial license, but tailored towards the kind of people that are making apps.14:20.10 
  (i.e. you!)14:20.21 
kurmi yes I think that would be the choice14:21.41 
  I would need the library and a demo application built by the library14:22.09 
  which I think is in package14:22.24 
Robin_Watts Right, so send me an email and I'll put you in touch with Scott. There is no obligation here - he'll talk to you and ask some questions, and try to come up with a solution that everyone is happy with.14:22.30 
kurmi ceikbal@gmail.com14:22.44 
  or ikbal.kaya@tekhnelogos.com14:22.56 
Robin_Watts kurmi: Right. And we'll get that to you as soon as possible - probably within a week (or 2 at most)14:23.03 
kurmi ok thank you14:23.21 
sebras Robin_Watts: maybe we could add a static constant string that is present when customers buy a commercial license to make it easier to see if an app or firmware contains GPLed or commercially licensed code.14:45.58 
  Robin_watts: granted, text strings are easy to forge, but hey it's just an aid in finding out anyway.14:46.35 
Robin_Watts sebras: The question is, how do we find out if someone is using GPL mupdf in a commercial app?14:47.45 
  After proguard and judicious renaming, it's not trivial to spot.14:48.40 
henrys I am sure tor or one of you know something peculiar that would identify mupdf - I used an easter egg in PCL for years but I removed it because there are plenty of identifying quirks. In gs we have the non supported operators.14:54.20 
Robin_Watts henrys: You mean, a rendering quirk we could tickle?14:56.30 
henrys right14:57.02 
Robin_Watts a) I don't know of anything offhand, and b) even if I did, how would that help us if someone packaged mupdf so it could only view a certain set of inbuilt files ?14:57.15 
  or files with a particular DRM system?14:57.29 
henrys Yes I am assuming we can use the program without restriction.14:58.39 
  having been through this - for cases that matter there are usually lawyers and a delivery of the code and certain things we're allowed not allowed to do (disassemble etc.)15:00.04 
  I know for example tor checked out fox pro for violations I am not sure what sort of analysis he did though.15:02.42 
  BTW are we on schedule for a march release date, I know Robin_Watts has been dragged back into gs.15:04.37 
Robin_Watts I think we want to move "mupdf" to be "muview" - but that's not hard.15:05.26 
  We may want to merge "mupdfdraw" and "muxpsdraw" to be "mudraw"15:05.40 
  but that's not hard.15:05.44 
  We (Tor) needs to review Pauls android code.15:06.01 
henrys Robin_Watts:you are happy with Paul's code?15:06.23 
Robin_Watts I haven't looked in detail.15:07.02 
  I'm sure I will be.15:07.09 
  (at least, I'll be as happy as it's possible for me to be with java code)15:08.15 
  Plus there was 1 mupdf task left in our original list; something about the fz_text stuff ?15:10.55 
henrys I don't mind java just not on a phone or a tablet - a word processor on a desktop - fine.15:11.00 
  well it sounds like the march date is still reasonable.15:13.46 
Robin_Watts actually, this is the first day I haven't been hassled by the mupdf customer for a while. I hope that's a good sign that the locking stuff sorted their multi-threaded problems.15:14.43 
henrys thank god you pushed for the multi-threaded stuff. We'd be in trouble on a couple of front without that.15:16.27 
Robin_Watts henrys: (or others) sanity check please?15:28.43 
  I thought map_rgb_color routines were supposed to take 3 components, always ?15:29.23 
  Specifically, I'm seeing: gx_devn_reduce_colored_halftone call c0 = dev_proc(dev, encode_color)(dev, v);15:31.15 
  Which maps to gx_backwards_compatible_gray_encode, which takes the cv[0] and copies it into rgb_cv[0], [1] and [2] and then calls (*dev_proc(dev, map_rgb_color))(dev, rgb_cv)15:32.21 
kens Sorry, no idea :-(15:32.56 
Robin_Watts dev_proc(dev, map_rgb_color) in this case is gx_default_b_w_map_rgb_color and that just looks at the first entry.15:33.00 
henrys earlier gs's explicitly took 3 parameters then it was changed to an array.15:33.22 
kens Oh but this is mono to gray ?15:33.26 
Robin_Watts It's not harmful, but I suspect that something here could be optimised.15:33.30 
kens sorry, mono to RGB ?15:33.35 
Robin_Watts No, it's grayscale components to a 'color index'.15:34.12 
kens Pass then15:34.23 
Robin_Watts grayscale components to a mono 'color index', even.15:34.36 
aditsu hi, I'm having a problem: I have a 2-page landscape pdf, I separated the first page and I'm joining it with another file for the 2nd page15:34.59 
Robin_Watts and my understanding of the intent is that it's expanding the grayscale to rgb then collapsing it back to mono.15:35.07 
henrys the default routing looks at number of components of the device I suspect the old code passed 3 of the same rgb values.15:35.16 
aditsu I made the 2nd file landscape too, but when I join them, the 2nd page turns out portrait15:35.17 
  I also tried making the 2nd file portrait, same result15:35.31 
  how can I make it turn out landscape?15:36.02 
chrisl Robin_Watts: I don't understand what you mean by gx_default_b_w_map_rgb_color just looking at the first entry - there's a look on ncomps15:36.49 
aditsu I'm using ghostscript 9.0415:37.02 
Robin_Watts And ncomps is 1 in this case.15:37.07 
kens -dAutoRotatePages=false15:37.14 
aditsu kens: thanks a lot, that did it :)15:37.54 
kens NP15:37.57 
chrisl Robin_Watts: oh, sounds like it shouldn't be using the RGB variant, then - maybe it's just doing it for convenience?15:37.58 
aditsu I wasn't aware it had a default autorotate function15:38.14 
kens Yes, rotates so text runs to left->right top->bottom15:38.35 
henrys well I have the unix PCL shared library build working now I have to do windows - this ought a piss me off completely.15:38.56 
Robin_Watts The problem is that map_rgb_color got munged to make it be like encode_color.15:38.56 
  No one is supposed to be calling map_rgb_color any more, but we still do in various places.15:39.19 
  and because map_rgb_color is used as a default for encode_color, things get confused when it works the wrong way for either one.15:39.47 
henrys we really should make a project of cleaning this up and using encode/decode. It is very confusing as it is now.15:40.32 
Robin_Watts yes :)15:40.42 
henrys it goes on the agenda15:41.02 
Robin_Watts I suspect the best fix in this case is going to be to actually implement encode_color for 532s device.15:42.37 
aditsu how can I change the title of a pdf?18:41.52 
chrisl aditsu: See the PDFmarks section on this page: 
aditsu chrisl: it involves a "" file, not sure what that's all about.. I think I found another way with pdftk18:50.48 
chrisl aditsu: that "" is the source file - assumed you were using Ghostscript and pdfwrite18:52.47 
aditsu oh18:53.33 
  ok, I'll try18:53.41 
chrisl The point is that shows how you can control a bunch of meta data in the pdfwrite output using "pdfmark"18:54.52 
aditsu yay it worked :)18:56.03 
henrys marcosw_:did you want to have a meeting?19:24.45 
zsw Is there a nice way to send the file mupdf has opened to lpr?19:33.04 
marcosw_ henrys: I just got back in, we can have a quick meeting if you still have time.20:04.34 
mvrhel bbiaw21:13.05 
henrys marcosw_:sorry I was away from IRC still here?21:37.34 
marcosw_ I am now.21:49.36 
henrys okay let me get the report21:50.01 
marcosw_ me too21:50.51 
henrys anything from alexcher on the P1 issue?21:51.13 
marcosw_ Not since yesterday morning when he said he'd commit a quick patch.21:51.42 
henrys 692836 to start?21:52.29 
  I'm up to 3921:53.20 
marcosw_ yes. but that one seems god as is.21:53.23 
  you didn't want discuss 837 :-)21:53.44 
henrys right21:53.45 
  ah finally 40 something to do.21:53.52 
marcosw_ I can see run it through acrobat and see how long it takes.21:54.28 
henrys a regression check is useful with those also.21:54.43 
  you want to reassign it?21:54.59 
marcosw_ sure. I'll take it.21:55.04 
  is 843 still a problem or did the recent renaming of mupdf executables include pdfinfo?21:56.22 
henrys 846 to michael21:56.40 
  oh hang on.21:56.44 
  I thing Robin_Watts was thinking about muinfo - if it is going to be consistent with the rest but no I don't think that is done yet.21:57.53 
  I reassigned 84621:58.35 
marcosw_ I'm running a mupdf compile, which is taking longer than I expected.21:58.41 
  14048 -rwxr-xr-x 1 marcos staff 7191844 Feb 10 13:58 build/debug/mupdfinfo*21:59.16 
  so that seems to be done.21:59.24 
henrys oh I was talking to with Robin_Watts about name changes this morning but that is about something else.22:00.48 
marcosw_ I think we are done, the rest are all assigned correctly.22:01.19 
  do you want to ping alexcher re. the P1 issue? I think I've done all I can.22:01.39 
henrys okay not much to do this week.22:01.40 
  alexcher are you around?22:02.08 
  yeah I'll send him mail.22:02.16 
  have a nice weekend.22:02.52 
marcosw_ btw, I've modified the crontab so that the bug report will go out on Friday instead of Thursday starting next week.22:02.53 
henrys okay22:03.04 
sebras somehow I feel that this comic is for you: 
 Forward 1 day (to 2012/02/11)>>>