Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
LOWDOWN_ODT_RNDR(3)	    Library Functions Manual	   LOWDOWN_ODT_RNDR(3)

NAME
       lowdown_odt_rndr	-- render Markdown into	OpenDocument

LIBRARY
       library "liblowdown"

SYNOPSIS
       #include	<sys/queue.h>
       #include	<stdio.h>
       #include	<lowdown.h>

       int
       lowdown_odt_rndr(struct lowdown_buf *out,		    void *arg,
	   const struct	lowdown_node *n);

DESCRIPTION
       Renders	a   node   tree	  n   created	by   lowdown_doc_parse(3)   or
       lowdown_diff(3)	using  the  OpenDocument  renderer  arg	as returned by
       lowdown_odt_new(3).  The	output is written into out, which must be ini-
       tialised	and freed by the caller.

       The output consists of an OpenDocument document.

RETURN VALUES
       Returns zero on failure to allocate memory, non-zero on success.

EXAMPLES
       The following parses b of length	bsz and	outputs	in "flat" OpenDocument
       format.

	     struct lowdown_buf	*out;
	     struct lowdown_doc	*doc;
	     struct lowdown_node *n;
	     void *rndr;

	     if	((doc =	lowdown_doc_new(NULL)) == NULL)
		     err(1, NULL);
	     if	((n = lowdown_doc_parse(doc, NULL, b, bsz, NULL)) == NULL)
		     err(1, NULL);
	     if	((out =	lowdown_buf_new(256)) == NULL)
		     err(1, NULL);
	     if	((rndr = lowdown_odt_new(NULL))	== NULL)
		     err(1, NULL);
	     if	(!lowdown_odt_rndr(out,	rndr, n))
		     err(1, NULL);

	     fwrite(out->data, 1, out->size, stdout);

	     lowdown_odt_free(rndr);
	     lowdown_buf_free(out);
	     lowdown_node_free(n);
	     lowdown_doc_free(doc);

SEE ALSO
       lowdown(3), lowdown_odt_free(3),	lowdown_odt_new(3)

STANDARDS
       The  referenced	OpenDocument  standard	is  1.3:   https://docs.oasis-
       open.org/office/OpenDocument/v1.3/.

FreeBSD	Ports 14.quarterly	  $Mdocdate$		   LOWDOWN_ODT_RNDR(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=lowdown_odt_rndr&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help