John, Yes. No 4D form printing at all. On Thu, Jun 14, 2018 at 10:14 AM JOHN BAUGHMAN via 4D_Tech < 4d_tech@lists.4d.com> wrote:
> Kirk, are you talking about creating the pdf strictly in code? > > Otherwise, as Pat pointed out 4D Write Pro can be used, as can 4D forms… > > SET PRINT OPTION(Destination option;3;$FolderPath+"MyTest.pdf") > OPEN PRINTING JOB > Print form("MyTest4DForm";Form header) > CLOSE PRINTING JOB > > PDFs from 4D forms using this methodology works both on the client and on > the server. > > > John Baughman > 1331 Auwaiku Street > Kailua, Hawaii 96734 > (808) 262-0328 > john...@hawaii.rr.com > > > On Jun 14, 2018, at 5:37 AM, Pat Bensky via 4D_Tech < > 4d_tech@lists.4d.com> wrote: > > > > Another option, which may or may not be suitable depending on the > project, > > is to build the document with 4DWrite Pro and then simply set the print > > option and print it: > > > > *SET PRINT OPTION*(Orientation option;iPrintOption) // landscape or > portrait > > > > *SET PRINT OPTION*(Destination option;3;$pathname) // PDF > > > > *WP USE PAGE SETUP*(oWPdoc) > > > > *WP PRINT*(oWPdoc) > > > > *SHOW ON DISK*($pathname) > > > > This will require you to learn how to program Write Pro, but I think that > > will be a bit simpler than learning how to create PDFs, it won't cost you > > any extra, and those skills might come in handy for other 4D projects :) > > > > Pat > > > > On Thu, 14 Jun 2018 at 16:22, Kirk Brooks via 4D_Tech < > 4d_tech@lists.4d.com> > > wrote: > > > >> I just chimed in on a conversation on the forums about using PDF Creator > >> <http://forums.4d.com/Post/FR/24699370/1/24714745#24714745>. In this > case > >> the OP was asking about making it work on the server. I'm sure anyone > who > >> tried to make that work just gave a little sympathetic groan. > >> > >> Making PDFs is hard. True - with a Mac or Win10 it's become pretty > easy to > >> print-to-PDF. This is really a user-interface feature though. If you > need > >> to build a PDF in code and want to work with the BLOB of that document > >> using the OS print features starts to fall apart. If you want to do > this on > >> the server it's a complete non starter in my view. > >> > >> This is where things get tricky in 4D land. Actually pretty much > >> everywhere I suspect but I don't know everywhere. It's actually > possible to > >> build perfectly valid PDFs in native 4D. Neil Denis gave a Summit > >> presentation in 2016 demonstrating this. Working with his demo gave me a > >> workable solution for a bit. But sometimes the PDFs wouldn't be valid > and > >> wouldn't always open. I don't think it had anything to do with Neil's > work > >> but my own additions. > >> > >> From here I spent way too much time building my own PDF component in all > >> native 4D. PDF language is all text based so there's no reason you > can't do > >> it in native 4D (well, without the flate/deflate compression). But it is > >> hard. The challenge was sort of interesting to me and I now have a > fairly > >> good understanding of how a PDF document is structured internally. In > the > >> end I had a working solution for a specific set of uses and the files > were > >> always valid <https://www.pdf-online.com/osa/validate.aspx>. The > problem > >> was it wasn't a full solution. I didn't have bookmark capability, for > >> example. Or form fields. It was decent but very limited. > >> > >> BTW - making PDF is hard. Debugging PDF is even harder. > >> > >> Prior to that I tried most of the other options I heard folks talk about > >> here: PHP, HTMLTOX, various schemes for managing printing on user > machines > >> and probably some others I've blocked out of my memory. All of them > worked > >> to varying degrees of success but all of them also required a slightly > >> different way of coding, for the ones that build the PDF in code. I > could > >> never sell the idea of the pricier solutions (this is for the in-house > app > >> I wrote). > >> > >> A couple of months ago the need for more robust PDF features came up. > >> Looking at my work I realized it just wasn't worthwhile for me to spend > the > >> time to build it out in my own component so I took another look around > at > >> the available options. I happened to email Rob Laveaux with some > question > >> about his plugins. He got back to me suggesting I look at QPDF instead. > And > >> here is where this turns into a big plug for QPDF. The licensing on the > >> older set is pricey. And at 1k euro QPDF isn't cheap but it has the same > >> no-hassel many of his products do. QPDF uses a C library (DynaPDF, > which is > >> a large chunk of the licensing fee). > >> > >> Working with QPDF did require me to refactor the methods that produce my > >> key documents. And I had to spend some time prior to that learning how > to > >> work with the new command set. I think the time I spent studying the > Adobe > >> docs on PDF construction helped make this go faster. The result is what > I > >> consider a successful refactor: cleaner code, less of it, more > capability, > >> better output. Plus a core PDF module that makes building new docs > pretty > >> simple. > >> > >> As I mentioned in the post on the forums I am starting to look at a > 'print' > >> job as more of 'producing a document' than a piece of paper. If it's > >> something that needs to be stored, shared, downloaded from the web or > >> produced on the server it's going to need to be produced in a blob and > >> that's going to be a PDF. If it's truly something a user needs as a > piece > >> of paper it's a print job. > >> > >> Producing PDFs in code means no form editor. This isn't always a bad > thing. > >> Sometimes it's as much work to make a complex document render correctly > >> through a 4D print form as it is to simply write the code to assemble > the > >> data. It really depends on the data and the document. > >> > >> -- > >> Kirk Brooks > >> San Francisco, CA > >> ======================= > >> > >> *We go vote - they go home* > >> ********************************************************************** > >> 4D Internet Users Group (4D iNUG) > >> FAQ: http://lists.4d.com/faqnug.html > >> Archive: http://lists.4d.com/archives.html > >> Options: https://lists.4d.com/mailman/options/4d_tech > >> Unsub: mailto:4d_tech-unsubscr...@lists.4d.com > >> ********************************************************************** > > > > > > > > -- > > ************************************************* > > CatBase - Top Dog in Data Publishing > > tel: +44 (0) 207 118 7889 > > w: http://www.catbase.com > > skype: pat.bensky > > ************************************************* > > ********************************************************************** > > 4D Internet Users Group (4D iNUG) > > FAQ: http://lists.4d.com/faqnug.html > > Archive: http://lists.4d.com/archives.html > > Options: https://lists.4d.com/mailman/options/4d_tech > > Unsub: mailto:4d_tech-unsubscr...@lists.4d.com > > ********************************************************************** > > ********************************************************************** > 4D Internet Users Group (4D iNUG) > FAQ: http://lists.4d.com/faqnug.html > Archive: http://lists.4d.com/archives.html > Options: https://lists.4d.com/mailman/options/4d_tech > Unsub: mailto:4d_tech-unsubscr...@lists.4d.com > ********************************************************************** -- Kirk Brooks San Francisco, CA ======================= *We go vote - they go home* ********************************************************************** 4D Internet Users Group (4D iNUG) FAQ: http://lists.4d.com/faqnug.html Archive: http://lists.4d.com/archives.html Options: https://lists.4d.com/mailman/options/4d_tech Unsub: mailto:4d_tech-unsubscr...@lists.4d.com **********************************************************************