| <<<Back 1 day (to 2013/11/25) | 2013/11/26 |
Robin_Watts | mvrhel_laptop: ping | 00:23.23 |
mvrhel_laptop | Robin_Watts: pong | 02:22.18 |
Robin_Watts | paulgardiner: or tor5: http://git.ghostscript.com/?p=user/robin/mupdf.git;a=commitdiff;h=6be1612dd916057317940962b39abd479ccfb564 | 11:07.10 |
paulgardiner | Robin_Watts: LGTM | 11:08.54 |
Robin_Watts | ta. | 11:10.09 |
Micha` | paulgardiner: Did you receive my messages on highlights annots? | 11:12.07 |
paulgardiner | Micha`: Yes. That would explain some strange results I saw with a file that had strikethrough with no appearance stream. I assume the file was wrongly created. | 11:14.39 |
tor5 | Robin_Watts: paulgardiner: a handful of commits on tor/master for review | 11:15.13 |
| paulgardiner: one of them should be of particular interest to you :) | 11:15.21 |
| Robin_Watts: my hope is to extend the error-document so that the 'null' document wrapper can catch and display page errors using the same functions | 11:17.05 |
paulgardiner | Micha`: although, I would have thought sticking with counter-clockwise and starting with upper right instead of bottom left would give the same line but drawn in the oppsite direction. | 11:17.09 |
tor5 | then we would get error messages for free on all viewers | 11:17.26 |
paulgardiner | Micha`: I seem to remember the strange file I saw zigzagged the coords | 11:17.36 |
tor5 | fz_open_document could also wrap up an error in an error-document | 11:17.55 |
| (also: I can't state enough how much love this chromebook pixel screen... now I want a 27" monitor with >200dpi) | 11:19.27 |
paulgardiner | tor5: yeah, .gitattributes change is fine | 11:21.35 |
| tor5: removing the sort looks fine. | 11:22.43 |
| tor5: font change looks fine | 11:26.43 |
| tor5: text-advance stuff looks okay, although I don't know how it fits in with pdf_text_stride. | 11:38.36 |
| tor5: consts look fine | 11:39.16 |
tor5 | paulgardiner: you might be able to reuse it (and not have to go digging through FT_Get_Advances yourself) | 11:39.17 |
paulgardiner | tor5: yeah, I was thinking just that | 11:39.32 |
tor5 | paulgardiner: there's an issue with pdfapp crashing if a pdf page fails to load (null dereferencing page->annots in event handling code) | 11:39.47 |
| paulgardiner: I'll look into finding the places where we can reuse it after lunch | 11:39.58 |
tor5 | lunches. | 11:40.25 |
Robin_Watts | Vision has gone. will look when I can see again. | 11:42.18 |
paulgardiner | tor5: error document stuff looks fine too | 11:42.29 |
| Robin_Watts: ah. Nasty. Hope it's a shortlived attack | 11:43.12 |
Robin_Watts | seems to be calming down. | 12:07.04 |
| if (font->ft_substitute... | 12:07.18 |
| I don't get the ft_substitute bit. | 12:07.33 |
| oh, we only make a width table if fz_substitute? | 12:08.54 |
| In fz_advance_t3_glyph we assume that font->r3widths is non NULL | 12:10.00 |
| but we aren't guaranteed that -we are guaranteed that font->t3procs | 12:10.31 |
| tor5: So the idea behind the error document is that when we get an error thrown, we make a new document that contains just the error message as a textual thing? | 12:16.38 |
| What if I have a 100 page document, and pages 1-99 work fine, but page 100 goes wrong? What do I see ? | 12:17.03 |
paulgardiner | tor5: some iOS 7 fixes on paul/master including a fix for the dancing page | 12:35.46 |
tor5 | Robin_Watts: t3widths is always set if t3procs exists | 12:36.33 |
| Robin_Watts: yeah, that's the case I'm still considering how to solve (one page broken, others work) | 12:36.52 |
| if load_page fails, we could set a flag, or make fz_page a real type that contains a flag | 12:37.37 |
| if run_page fails, maybe we should just ignore that case | 12:37.51 |
| fucking fantastic. anyone know how to sign out of a google account for real reals? | 12:42.15 |
| they've made it bloody impossible... | 12:42.22 |
| (pardon my french, but google's shenanigans really annoy me) | 12:42.52 |
chrisl | tor5: no need apologise for the language - you can be confident that google's "safe search" will hide it from sensitive souls! | 12:45.14 |
| tor5: doesn't the drop down menu from your user name give you the option to sign out? | 12:46.14 |
tor5 | chrisl: yeah, but then you try to sign in with another account and you have to "add account" to your existing not-quite-logged-out account and god knows what that will do | 12:46.45 |
| if I log out I want to be logged out for good, not in some stupid semi-logged-out-but-we-still-know-who-you-are state | 12:47.16 |
chrisl | Isn't that a cookies thing? | 12:47.33 |
charley__ | hi there! just a quick question... can I use ghostscript to convert PDF to multi-page TIFF in Mac OS ? | 12:47.56 |
tor5 | chrisl: I still need to log into gmail for some things, or I'd just permaban all cookies from *google.com | 12:48.06 |
chrisl | charley__: it should work, yes | 12:49.11 |
charley__ | thanks chris | 12:49.36 |
chrisl | something like "gs -sDEVICE=tiff24nc -o output.tiff input.pdf" | 12:49.58 |
charley__ | cool... will give it a try | 12:50.13 |
chrisl | tor5: yeh, google's monomania is getting out of hand :-( | 12:50.39 |
sebras | does anyone know about any opensource licensed chinese ming (serif) outline font? | 13:25.02 |
tor5 | sebras: I've looked through the arphic uming ttf | 13:30.46 |
chrisl | I'm not sure how "open" the "Arphic Public License" is | 13:31.22 |
tor5 | it's 20MB but I suspect that can be pruned quite heavily, since it's a TTC with CN, HK, TW, TW MBE variants and a lot of bitmaps | 13:31.34 |
| and you only care about the CN variant from what you told me | 13:31.46 |
| chrisl: it's free enough for debian :) | 13:32.59 |
chrisl | Ah, I'm looking at Ubuntu, so..... | 13:33.28 |
tor5 | http://www.gnu.org/licenses/license-list.html#Arphic | 13:33.46 |
chrisl | There does seem to be a CN only variant under the file name bsmi00lp.ttf | 13:34.01 |
| tor5: I lack the patience and the will to read about license compatibilities! | 13:34.56 |
sebras | tor5: I think the arphic license prevents you from making _any_ changes to the font file though. | 13:44.20 |
tor5 | sebras: you can change as much as you want, but you must rename | 13:44.47 |
sebras | also I found that arphic released some more fonts in 2010: http://www.arphic.com/tw/news/2010/20100420.html | 13:44.52 |
| tor5: oh, I didn't catch that from skimming the license. | 13:45.08 |
tor5 | sebras: anyway, fonts-arphic-gbsn00lp in debian has the font you probably want. 5M in size. | 13:45.19 |
sebras | tor5: do you think that one is better or worse than the baosong and mingu I just linked to? | 13:46.50 |
| tor5: crap, baosong and mingu are only for non-commerical use. :-P | 13:48.15 |
tor5 | sebras: not the same license? | 13:48.42 |
sebras | tor5: it _says_ arphic public license, but maybe the terms have changed. | 13:48.57 |
| tor5: apl doesn't seem to be versioned. | 13:49.19 |
tor5 | sebras: I can't unpack the rar files | 13:50.12 |
sebras | tor5: oh? 7z has no problems here... | 13:50.40 |
tor5 | "Unsupported method" | 13:50.47 |
sebras | tor5: are you using unrar? | 13:50.56 |
tor5 | maybe because you have non-free? | 13:51.02 |
sebras | tor5: no. 7z licensed the unrar 3.0 code from the rar dev. | 13:51.21 |
| tor5: but the code can only be legally used in 7z. | 13:51.33 |
| tor5: I have the p7zip-full package installed. | 13:51.43 |
| and p7zip-rar | 13:51.52 |
tor5 | sebras: then I guess my p7zip-full package is too old. | 13:51.53 |
sebras | tor5: I think you are missing the latter package. | 13:52.09 |
tor5 | ah, yes. the p7zip-rar appeared when I added non-free to the apt sources | 13:52.31 |
sebras | tor5: mmm. | 13:52.53 |
| tor5: how did you install the nvidia driver without non-free?! oh well... | 13:53.23 |
tor5 | sebras: on my laptop. | 13:53.45 |
| sebras: oh the sneaky bastards. yes, the new public_license.rar has "non-profit" wording where the original doesn't | 13:54.04 |
sebras | a drawback is that the 5Mbyte font bousung font "only" has 7k glyphs. who knows if this is enough or not. | 13:54.20 |
| tor5: indeed. | 13:54.24 |
| tor5: the new baosong font covers more characters. | 13:54.38 |
tor5 | sebras: I suggest you try it first. the new baosong is a no go unless you're willing to contact arphic for a commercial license. | 13:55.09 |
sebras | tor5: mmm, the bsmi00lp here though: http://ftp.gnu.org/gnu/non-gnu/chinese-fonts-truetype/ | 13:56.45 |
| chrisl: yes, chrisl, I _do_ read what you are writing. I'm just slow to process it. | 13:57.07 |
tor5 | sebras: bs* | 13:58.26 |
chrisl | sebras: I wouldn't bother - it's rarely worth reading..... ;-) | 13:58.39 |
tor5 | sebras: b* fonts are Big5, g* fonts are GB | 13:58.43 |
sebras | tor5: aha. ok, so that's why it adds another 7k characters. | 13:59.02 |
| tor5: agh, why haven't the unicode people sorted the chinese characters in simplified and traditional. :-/ | 14:18.47 |
tor5 | sebras: hello han unification :) | 14:21.57 |
| Robin_Watts: ugh, I want doc->ctx also in the fz_document superclass, and some way to separate pages from the specific fz_document... maybe have the bound_page/run_page functions in the fz_page object | 14:27.00 |
| struct fz_page { fz_document *owner; void (*run_page)(); void (*bound_page)(); void (*free_page)(); } | 14:28.01 |
| I'll think on this some more, so don't push the error_document stuff yet | 14:28.44 |
Micha` | paulgardiner: With strikethrough you say? I didn't look at that case, I'll have a look. | 14:30.26 |
| paulgardiner: Yup, I can see that TINWAD (This Is Not What Adobe Does). I have some useful test PDFs here, so I'll give it a shot. | 14:39.02 |
kens | Hmm spotting duplicate shadings has reduced my test file size by 41%, that's nice. | 14:57.13 |
paulgardiner | Micha`: I just tried creating a strikethrough annotation on the android version of Adobe Reader. The quadpoints seem to be ordered tl, tr, bl, br. A zigzag, rather than rotational order. | 15:14.59 |
Robin_Watts | tor5: I want doc->ctx too. | 15:29.16 |
| I need that for java bindings I think. | 15:29.31 |
tor5 | binding a fz_page to a ctx and doc (and dropping the doc argument to fz_xxx_page calls) sounds reasonable to me as well | 15:30.13 |
| and it should make it easier to do multiplexing input types (like the "all pdfs in a directory as one document" we keep getting asked about) | 15:30.51 |
Robin_Watts | tor5: Indeed. I don't think I'm averse to that either. | 15:31.22 |
tor5 | Robin_Watts: I'll have a stab at fixingt doc->ctx tomorrow, and see if I can clean up the fz_document constructors a bit. | 15:31.39 |
marcosw1 | mornig | 15:31.50 |
Robin_Watts | Meeting delayed by 45 minutes, right? | 15:31.57 |
| morning marcosw1 | 15:32.00 |
| How is psdcmykog behaving now ? | 15:32.08 |
marcosw1 | seems to be okay. there is an issue with very large output files, i.e. ones that are more than 50 pages. | 15:33.05 |
Robin_Watts | marcosw1: How so? 2 gig limit ? | 15:34.27 |
marcosw1 | yes, I think that's it. give me sec and I'lll give you a command line that fails. | 15:35.08 |
mvrhel_laptop | Robin_Watts: I did not think we were still having a meeting | 15:36.52 |
marcosw1 | bin/gs -o test.psd -dMaxBitmap=10000 -sDEVICE=psdcmykog -r600 ./tests/pdf/Bug6901014_SMP_Warwick_14.pdf | 15:37.07 |
kens | meeting optional | 15:37.30 |
Robin_Watts | mvrhel_laptop: optional meeting :) | 15:37.32 |
mvrhel_laptop | ok. Robin_Watts I may have some mupdf winrt things for you to review today. I have been beating on the surface and found a couple issues | 15:38.14 |
Robin_Watts | mvrhel_laptop: re meeting up on oahu - helen points out that we still be massively jetlagged on sunday night. Probably best to play it by ear. Will you have your mobile with you? | 15:38.33 |
mvrhel_laptop | Robin_Watts: yes. so we can def. play it by ear | 15:38.46 |
marcosw1 | Robin_Watts: thinking about it the problem may not be with the psdcmykog device, it might be with my tools that read psdcmyk files. i'll look into it. | 15:40.48 |
| yeah, that's it. so, never mind. | 15:42.21 |
Robin_Watts | marcosw1: Ah, phew. | 15:43.58 |
| marcosw1: Am I right in thinking that bugs have been opened for all the fuzzing/valgrind issues that we had reported to us in that big bunch ? | 15:45.01 |
| I mean "crashes/valgrind issues caused by fuzzing" | 15:45.40 |
marcosw1 | Robin_Watts: yes. | 15:49.15 |
Robin_Watts | marcosw1: Brilliant, so the claims I made last night in my email were true :) | 15:50.04 |
marcosw1 | if we wanted to double check to make sure they are all fixed I could run the files again. | 15:51.05 |
chrisl | marcosw1: did that paint pen I ordered arrive? | 15:53.05 |
Robin_Watts | chrisl: http://www.dansdata.com/gz143.htm | 15:53.19 |
marcosw1 | chrisl: a box came from you several weeks ago, I presume that's it. sorry that i forget to mention it. | 15:53.47 |
chrisl | marcosw1: no worries - it's for my Dad, and he's been asking every time I see him! | 15:54.16 |
| Robin_Watts: interesting - there was an interview with Neil Young doing the rounds a while back where he berated the hi-def audio formats as being useless and pointless | 15:54.53 |
henrys | sorry about messing up the meeting, I'm back now | 15:56.50 |
chrisl | Robin_Watts: that's an interesting article, with some truth in it - but also, I feel, some bias. There are plenty of documented "blind tests" out there that got a different result to the one he referenced in CD vs hi-res audio..... | 15:59.10 |
henrys | chrisl: ugh the ufst stuff - what an ordeal | 15:59.53 |
chrisl | henrys: one bit of information that neither Adrian nor I spotted as being important, and turned out to be the key - ho-hum..... | 16:00.47 |
Micha` | paulgardiner: How weird! Highlights are not properly zigzaged (properly in the sense of Adobe, not the standard though...) The quadpoints are computed by the app, though, not by the library. | 16:01.05 |
chrisl | henrys: anyway, I just pushed the fixes, so hopefully that's all okay. Custom FCOs - <sigh> really? | 16:02.12 |
paulgardiner | Micha`: yes quite. I was agreeing that MuPDF has it wrong, just not on in what way it is wrong. | 16:03.23 |
henrys | chrisl: yes just reading the changes | 16:03.42 |
paulgardiner | Both the library and apps need changing, because the library assume rotational order when generating the appearance stream | 16:04.05 |
henrys | chrisl: custom fco's sounds like a question for Dr. Doolittle | 16:05.06 |
chrisl | henrys: I was hoping to avoid getting involved - beyond telling them what to change..... | 16:05.43 |
ray_laptop | henrys: worked out great for me that you were late. I also had a minor car issue that kept me late today :-) | 16:05.44 |
Micha` | Right. I've done some work on the library, I'll submit an enhancement request on the bugtracker when I'm done. Right now, I'm trying to figure out how Adobe computes the thickness of the strikethrough... | 16:06.02 |
paulgardiner | Micha`: must be similar to MuPDF's I'd have thought, maybe with different constants. | 16:07.23 |
henrys | ray_laptop: hah | 16:07.55 |
ray_laptop | Robin_Watts: I'll take care of responding to cust 801 re the 'stat' job processing with a single gs process | 16:08.42 |
henrys | Robin_Watts: is the alignment thing all taken care of? | 16:09.05 |
Robin_Watts | henrys: I believe so. | 16:09.17 |
ray_laptop | hopes so | 16:09.17 |
Robin_Watts | The psdcmykog device uses the alignment thing and that's working. | 16:09.31 |
henrys | no I meant your mem_mono_copy_mono fix, there was a warning the #define you used was not seen by the compiler and we agreed to a cluster push with an assert. | 16:10.35 |
Robin_Watts | ray_laptop: You mean the "-dFirstPage" stuff? | 16:10.56 |
| Ah, stat as in "immediate" ? | 16:11.01 |
| henrys: oh, right, urm. I ran a test last night with the assert in. | 16:11.21 |
ray_laptop | Robin_Watts: yes, I'm still going through the emails, so if they sent another, I haven't seen it yet | 16:11.25 |
Robin_Watts | Let me check that. | 16:11.25 |
Micha` | paulgardiner: Well, there are quite a few differences, for instance when the stroke is not horizontal. A good indication that something may be missing is that qp[i+3] is never considered; but I'll have all that covered in my proposal, hopefully. | 16:11.43 |
Robin_Watts | henrys: yeah, my tests passed fine. | 16:11.48 |
paulgardiner | Micha`: it should work fine at any angle. | 16:12.52 |
Robin_Watts | henrys: The "big potential mupdf customer" got in touch again last night, asking about the fuzzing files. | 16:13.07 |
| We currently have 3 crashes left in the fuzzing files with MuPDF, one in jbig2, 2 in openjpeg. | 16:13.31 |
| Simon has looked at them and can't reproduce them on windows. | 16:13.51 |
| Can I prod shelly to look at them instead? | 16:13.59 |
| They are marked as bountiable. | 16:14.12 |
henrys | Robin_Watts: has marcosw reproduced them in current code? | 16:14.22 |
paulgardiner | Micha`: provided the quads define rectangles, it shouldn't matter what angle they are at. qp[i+3] is derivable from the others for a rectangle. | 16:14.23 |
ray_laptop | Robin_Watts: is that openjpeg or openjpeg2 ? | 16:14.23 |
Robin_Watts | henrys: I reproduced them all in current code last night. | 16:14.35 |
chrisl | Robin_Watts: Shelly might be busy at the moment - I'm having dinner with him tonight, so I can ask...... | 16:14.36 |
Robin_Watts | ray_laptop: Yes. | 16:14.40 |
| chrisl: ah, perfect. | 16:14.44 |
ray_laptop | Robin_Watts: good answer ;-) | 16:15.07 |
Robin_Watts | ray_laptop: openjpeg 2 I believe. | 16:15.14 |
Micha` | paulgardiner: Right, I'm considering non parallelograms. | 16:15.22 |
paulgardiner | Micha`: trapeziums maybe not, but rectangles should be fine. | 16:15.23 |
henrys | chrisl: great, which bugs I'll bump the priority | 16:15.24 |
| ? | 16:15.26 |
| Robin_Watts: ^^^ | 16:15.30 |
Robin_Watts | 69362/3/4 | 16:15.51 |
| 694362/3/4 | 16:15.58 |
| mvrhel_laptop: Do you need tea? | 16:29.46 |
ray_laptop | Robin_Watts: I was a bit surprised by cust 801's statement "Because in our next product, RAM capacity will be very small." Much of the performance with BGPrint and NumRenderingThreads will be lost if they don't have a fair amount of RAM to support the extra threads (and their buffers) | 16:36.46 |
| Robin_Watts: I was thinking more about their use, and if they use gp_check_interrupts to pause processing, this is polled (from the graphics lib) during page printing. I'm thinking that a switch *only* when parsing PS would be better. That way we know we are not printing (well, unless BGPrint is on, then we may be) | 16:40.23 |
mvrhel_laptop | Robin_Watts: I think we are fine tea wise thank you | 16:40.37 |
ray_laptop | I'll work on it some more, and let Robin_Watts and mvrhel_laptop chat. mention me and I *might* pay attention | 16:41.32 |
Robin_Watts | ray_laptop: Yes, "very small" memory is worrying. | 16:41.50 |
| but NRT can work with reasonably small memory if there is a backing store. | 16:42.12 |
| bg print with a backing store should be OK too, right? | 16:42.38 |
| ray_laptop: There is code in the ps interpreter that drops out of the interpretation loop every 'n' instructions already. | 16:45.24 |
ray_laptop | Robin_Watts: the BGPrint instance as well as each thread each have their own band buffer, which may be fairly large if 5 planes and BandHeight=128, 600 dpi (roughly 4Mb). It depends on what they consider "small" | 16:45.29 |
Robin_Watts | possibly for context switching? or for periodic gcs? | 16:45.58 |
ray_laptop | Robin_Watts: you mean 'ticks_left", set from i_ctx_p->time_slice_ticks, right ? | 16:47.13 |
Robin_Watts | ray_laptop: I've got my head in Mupdf at the moment, but that sounds right, yes. | 16:47.30 |
ray_laptop | Robin_Watts: that is 'overloaded' to provide the GC signal | 16:48.04 |
Robin_Watts | ray_laptop: Right. Can we similarly do the periodic check they need on that too ? | 16:48.38 |
| The first and most urgent question to me is, does -dFirstPage work with postscript ? | 16:49.12 |
ray_laptop | Robin_Watts: I'll leave you to think mupdf. I'll have a go at adding some support for interrupting a job in a way that we can continue, as well as sketching out an example that uses multiple instances, each in a thread. | 16:50.05 |
kens | Robin_Watts : I believe the answer there is 'no' | 16:51.02 |
ray_laptop | Robin_Watts: FristPage doesn't work with PS (or PCL). With PS, it can be hacked in fairly easily by using an EndPage proc with setpagedevice. | 16:51.03 |
kens | what ray said | 16:51.12 |
Robin_Watts | ray_laptop: I think we should push them to know what "a very small amount of memory" means. | 16:51.25 |
chrisl | I think it does "work" with PCL..... | 16:51.27 |
ray_laptop | chrisl: really ??? | 16:51.41 |
henrys | chrisl: yes it does | 16:51.42 |
chrisl | It just discards pages until it reaches the specified "first" | 16:51.59 |
ray_laptop | henrys: LastPage as well ? | 16:51.59 |
| henrys: does it make all the calls (i.e. write the clist), then just skip the 'showpage' ? | 16:52.32 |
henrys | ray_laptop: yes | 16:52.34 |
| ray_laptop:I don't remember how I did it. I'll look | 16:53.07 |
chrisl | ray_laptop: if you feed PS into GS in buffers, you can "suspend" the job between buffers | 16:53.13 |
kens | yes, but you can't start another job at the same time | 16:54.20 |
ray_laptop | chrisl: right, as long as you can have more than one 'instance'. I haven't looked at how thread safe PCL is, and how one might spawn another instance since that is all baked into plmain | 16:54.21 |
| that's why we encourage people to have processes for each instance, and not threads :-) | 16:55.01 |
chrisl | ray_laptop: I meant "suspend" as in end the current job, and start new one.... then do some shennanigans to get the first job back to where you need it later | 16:55.51 |
ray_laptop | but the problem comes in when they each try to talk to the same device (i.e. make calls that interact with the h/w) | 16:56.15 |
chrisl | ray_laptop: using a single instance, we need to actually "end" the lower priority job, we can't just "stop" because the interpreter will be in an unknown state | 16:57.07 |
ray_laptop | chrisl: what the customer wrote implied that they could suspend after a page was finished printing. Then FirstPage would let them just restart the suspended job (assuming they have it spooled somewhere) | 16:57.22 |
henrys | ray_laptop: right just skips gs_output_page() | 16:57.43 |
ray_laptop | chrisl: right. That's rather a brute force approach, but can work | 16:57.56 |
henrys | ray_laptop: so performance sucks | 16:57.59 |
ray_laptop | henrys: OK. well, doing that as well for PS isn't hard, and PDF already handles it | 16:58.20 |
chrisl | Presumably it's fairly quick when using a clist? | 16:58.54 |
ray_laptop | henrys: presumably, this is not something that is done frequently. So they just document "restarting the interrupted job may take a while" | 16:59.05 |
henrys | ray_laptop:at one time we used it for a viewer and we set the resolution very low (10) for pages outside the range. But that was a mess | 16:59.07 |
Robin_Watts | ray_laptop: I read the customers mail as being "we'll abandon a job, then rerun it from the start" | 16:59.10 |
ray_laptop | henrys: I'll bet | 16:59.21 |
| Robin_Watts: I read it a re-run it from the start, but they didn't want to re-print the pages that had already been done. Thus the desire for -dFirstPage=# | 17:00.10 |
Robin_Watts | ray_laptop: Right. | 17:00.19 |
ray_laptop | henrys: what might be easier is switching in a dummy device that just throws things away (a'la bbox) to speed up parsing and not write the clst. Then when we hit FirstPage, switch to the real device. | 17:02.48 |
chrisl | Could we use nullpage for that? | 17:03.15 |
henrys | ray_laptop:I tried that a long time ago with the null device and ran afoul of a the memory manager and gave up, but it might be worth trying again. | 17:03.45 |
ray_laptop | the bbox device can be set to the same resolution as the target, so the PCL 'automatic end of page' calculation would work correctly | 17:04.17 |
henrys | ray_laptop:bbox was adding 10 or so percent on many jobs I'm not comfortable with that. | 17:05.16 |
ray_laptop | I'll have a look at trying bbox first, since we know it works OK. | 17:05.19 |
| It'll probably have to forward get/put params to the target since those allow for 'persistent' changes in the device (across pages). | 17:06.40 |
Robin_Watts | If you can make bbox work, we can implement a "skip" device | 17:07.13 |
ray_laptop | But first, I'll sketch out the changes to suspend the job after a page is done. | 17:07.16 |
chrisl | ray_laptop: another question is: how many times are they going to support this happening? They're examples have all been two jobs, but might they want to allow a "stack" of suspended jobs? | 17:07.25 |
ray_laptop | Robin_Watts: right. That would take care of forwarding what the target device needs. Similar to bbox, but trimmed down. | 17:08.12 |
Robin_Watts | ray_laptop: Actually, we might be able to do what my "spy" device does. | 17:09.18 |
ray_laptop | chrisl: my impression was that this would occur only for one job. And we were going to try and keep the restarting of a job up to them. In theory they could stack them | 17:09.25 |
chrisl | ray_laptop: "Leave it up to them" - I like the sound of that! ;-) | 17:10.18 |
Robin_Watts | My spy device uses a "clever engineering mechanism" (i.e. a horrid hack) to allow it to intercept all a given devices entry points. | 17:10.31 |
| and it can then detach later. | 17:10.45 |
ray_laptop | Robin_Watts: where's the spy device ? | 17:11.26 |
Robin_Watts | We could do the same here, and thus just 'attach'/'detatch' the "skipper" to turn any device into a skip device. | 17:11.37 |
| ray_laptop: Let me find it. | 17:11.46 |
ray_laptop | I grepped doc/* for 'spy' and couldn't find it (also devs.mak) | 17:12.01 |
Robin_Watts | http://git.ghostscript.com/?p=user/robin/ghostpdl.git;a=commitdiff;h=b40d4cb62a8729edda984b63383ae339fee6a542 | 17:12.15 |
| ray_laptop: It's in my local repo. It's not finished, but the attach/detatch works. | 17:12.39 |
mvrhel_laptop | neat | 17:12.39 |
ray_laptop | Robin_Watts: no wonder I couldn't see it :-/ | 17:13.14 |
Robin_Watts | It's a debugging device; the idea is that if you stop a gs run in a debugger, you can apply the spy to a currently running device and it lists all the calls that happen until you detach it. | 17:15.12 |
ray_laptop | Robin_Watts: Not sure how that would work with prn devices that re-write procs with clist_procs | 17:15.52 |
| Robin_Watts: also, it wouldn't help with one big 'gotcha' -- pdf14 compositing. Seems that we'd go ahead and push a pdf14 device and render the whole thing | 17:16.48 |
Robin_Watts | ray_laptop: rewriting of procs is a problem, yes. | 17:17.17 |
ray_laptop | Robin_Watts: unless it swallowed all of the compositor calls in 'skip' mode | 17:17.33 |
Robin_Watts | but presumably we could hook the code that does the rewriting and tell it not to bother, as we aren't going to be using the clist results anyway. | 17:18.05 |
| and, as you say, we wouldn't forward the compositor calls, so we'd be OK on that count. | 17:18.23 |
ray_laptop | Robin_Watts: worse hacks have been done in the clist code :-) | 17:18.26 |
mvrhel_laptop | where there's a hack there's a way | 17:19.08 |
Robin_Watts | presumably we'd only want to be doing this skipping for printer devices? | 17:19.22 |
| skipping ain't gonna work for stuff like pdfwrite. | 17:19.35 |
ray_laptop | Robin_Watts: right, but that isn't a problem for this class of devices | 17:19.57 |
| the gxdso_supports_saved_pages identifies printer class devices | 17:20.51 |
Robin_Watts | so having the skipping know about the vicissitudes of printer devices is not a problem, as it will only be working on those devices. | 17:20.54 |
| gah. valgrind + cryptgraphic hashing + debugging on linux + vestiges of migraine. | 17:22.21 |
ray_laptop | Robin_Watts: I had a bit too much coffee the other morning and my vision was funky -- flashing rectangles of light on the right side. I think it was an optical migraine. | 17:27.28 |
| first time I've ever had that. | 17:27.50 |
Robin_Watts | ray_laptop: sounds familiar. only they aren't rectangles for me. | 17:28.48 |
| I get a spiralling kaleidoscope effect, then a disconnect between my eyes, and I cease to be able to resolve whole areas of vision. | 17:29.33 |
ray_laptop | Robin_Watts: I'll review the bbox device and put together a 'skip' device that we can attach / detach like the spy device. The bbox device takes care of text_begin (we can't just skip that) | 17:29.35 |
| Robin_Watts: sounds worse. From reading, and people I know that get migraines, caffeine makes ti worse. | 17:30.15 |
Robin_Watts | I haven't touched caffeine all day. | 17:30.32 |
| I think mine are triggered by light. | 17:30.48 |
Robin_Watts | resolves to spend more time safely locked in a dark office. | 17:31.07 |
henrys | chrisl: have you looked at the cyrillic characters, are the helvetica and roman ones very similar. A trick the ufst does is use the same glyphs for many many character in different fonts. | 17:54.07 |
chrisl | henrys: I haven't - I'm really hoping the thing with Adrian is done, and I can get to it tomorrow. | 17:55.14 |
henrys | chrisl: indeed let's hope | 17:55.49 |
chrisl | henrys: that's not now the MT fonts work - IIRC, they use a library of mathematical "features" and assemble glyph outlines from those - hence many glyphs look very similar | 17:56.07 |
mvrhel_laptop | Robin_Watts: ping | 17:57.24 |
Robin_Watts | pong | 17:57.30 |
chrisl | henrys: actually, I should look at the UFST update tomorrow <sigh> | 17:57.36 |
| s/UFST/URW | 17:57.44 |
henrys | chrisl: right but I thought they also had aliases for some stuff | 17:57.48 |
mvrhel_laptop | Robin_Watts: So miles wanted me to send him the information about the group that is ripping off mupdf in windows phone. | 17:57.53 |
| they are selling one version | 17:58.09 |
| http://www.windowsphone.com/en-us/store/app/pdf-reader-pro/6893a0c6-abb3-47b0-b2c1-5b65a9d763f5 | 17:58.11 |
henrys | chrisl: it would be good to quantify the size difference exactly. | 17:58.13 |
Robin_Watts | can't remember anything about that. | 17:58.14 |
mvrhel_laptop | Do you still have the contact information about them | 17:58.20 |
| you pinged them about not complying with GPL at one point | 17:58.31 |
| they claimed they were | 17:58.37 |
Robin_Watts | Let me see. | 17:58.44 |
chrisl | henrys: they do all sorts of things to save space.... | 17:58.47 |
| henrys: "quantify the size difference exactly" - difference between what? | 17:59.14 |
henrys | chris:us and them for say a printer configuration like you spec'd out for yuki | 18:00.16 |
chrisl | henrys: Oh, okay, I thought you were doing a fontmap for that - I can do it, though | 18:00.55 |
henrys | chrisl: oh was I supposed to do something? | 18:01.34 |
Robin_Watts | mvrhel_laptop: I can't find anything, but I wouldn't have deleted it. Do you have any name for them other than "Ocius" ? | 18:01.49 |
mvrhel_laptop | hold on | 18:02.00 |
| pdf.reader.support@hotmail.com | 18:02.38 |
| was their email | 18:02.42 |
chrisl | henrys: You said you had the information to create a fontmap file (or already had before), so leave it to you.... Like I say, I can do it: *most* of the information is in the PCL interp code | 18:02.45 |
mvrhel_laptop | Robin_Watts: also https://www.facebook.com/PDFReaderForWP | 18:04.13 |
henrys | chrisl: leaving it to you. I believe ya' but the synapse must have been disrupted. | 18:04.21 |
chrisl | henrys: no problem - too much other sh*t going on...... | 18:04.56 |
Robin_Watts | mvrhel_laptop: Ah. I contacted them via facebook. | 18:05.40 |
mvrhel_laptop | ok | 18:05.46 |
| Thanks Robin_Watts | 18:06.29 |
Robin_Watts | Right, they pointed me at the source for pdfreader on bitbucket.org | 18:08.04 |
| but their source does not compile because they have deleted all 'security sensitive information'. | 18:08.24 |
mvrhel_laptop | hmm | 18:08.33 |
Robin_Watts | Which makes it not GPL compliant. | 18:08.35 |
mvrhel_laptop | Robin_Watts: do you have the link still? | 18:08.59 |
Robin_Watts | And they invite commercial licenses at pdf.reader.support@hotmail.com | 18:09.07 |
| I have access to it on bitbucket, yes. | 18:09.17 |
| but you have to be 'invited' to have access to it. | 18:09.26 |
mvrhel_laptop | oh | 18:09.30 |
| that is not right | 18:09.34 |
Robin_Watts | In theory that's fine with the GPL. | 18:09.49 |
| You only have to give access to the source to those people who request it. | 18:10.03 |
mvrhel_laptop | oh ok. I would like to get invited | 18:10.07 |
Robin_Watts | Let me see if I can do that. | 18:10.15 |
mvrhel_laptop | Being GPL, it should be infectious | 18:10.48 |
Robin_Watts | mvrhel_laptop: GPL is infectious, yes, and they are not abiding by it in my book. | 18:11.10 |
| but only giving source access on request is perfectly fine, AIUI. | 18:11.20 |
mvrhel_laptop | ok | 18:11.25 |
Robin_Watts | as long as they never refuse the request :) | 18:11.29 |
| I can invite you if you tell me what email address to use. | 18:11.43 |
| Do you have a bitbucket account ? | 18:11.49 |
mvrhel_laptop | no | 18:11.52 |
| let me get one | 18:11.55 |
Robin_Watts | mvrhel_laptop: Let me send you a referral link. What email address would you like ? | 18:12.13 |
mvrhel_laptop | use alpha(at)mvrhel.com to reduce spam on my artifex account | 18:12.40 |
| Robin_Watts: ^^ | 18:12.48 |
Robin_Watts | invitation sent. | 18:13.00 |
| Let me send a mail to you/miles with details in. | 18:13.19 |
mvrhel_laptop | ok sounds good | 18:13.27 |
| Robin_Watts: ok so I now have a bit bucket account. I guess I need to get them to give me access? | 18:16.13 |
| Them, being the people ripping off mupdf | 18:16.25 |
| ok. just sent them a request for source access | 18:17.26 |
| need to head to school. bbiab | 18:17.37 |
ray_laptop | Note, that for GPL, an outfit has to give everything needed to rebuild and replace the GPL code with something else equivalent (presumably a version with bugs fixed). It's not enough to just give out the source to the GPL component. And we (Artifex) claim that if it forms a seamless application then their app is 'infected'. Others say that "we invoke a process" and get off that way, but... | 18:31.00 |
| ...that's almost impossible with mupdf and make a viewer | 18:31.01 |
Robin_Watts | ray_laptop: I concur. There is no way these clowns are complying. | 18:31.28 |
ray_laptop | about all they *could* do is convert pages to image in a process and display the bitmaps, or convert to HTML and display the text (reflow). | 18:32.26 |
| I just got an email from linkedin that one of the guys that used to work for me is now at a "System software consultant at Microsoft" whatever that is | 18:33.35 |
| I was going to ping him and ask what he's working on. | 18:34.09 |
| Forward 1 day (to 2013/11/27)>>> | |