cairoPsSurfaceDscComment(surface, comment)surfaceCairoSurface] a PostScript cairo_surface_tcommentsurface into an error state. But
beyond these two conditions, this function will not enforce
conformance of the comment with any particular specification.
The comment string should not have a trailing newline.
The DSC specifies different sections in which particular comments
can appear. This function provides for comments to be emitted
within three sections: the header, the Setup section, and the
PageSetup section. Comments appearing in the first two sections
apply to the entire document while comments in the BeginPageSetup
section apply only to a single page.
For comments to appear in the header section, this function should
be called after the surface is created, but before a call to
cairoPsSurfaceBeginSetup().
For comments to appear in the Setup section, this function should
be called after a call to cairoPsSurfaceBeginSetup() but before
a call to cairoPsSurfaceBeginPageSetup().
For comments to appear in the PageSetup section, this function
should be called after a call to cairoPsSurfaceBeginPageSetup().
Note that it is only necessary to call cairoPsSurfaceBeginPageSetup()
for the first page of any surface. After a call to
cairoShowPage or cairoCopyPage comments are unambiguously
directed to the PageSetup section of the current page. But it
doesn't hurt to call this function at the beginning of every page
as that consistency may make the calling code simpler.
As a final note, cairo automatically generates several comments on
its own. As such, applications must not manually generate any of
the following comments:
Header section:
Setup section:
PageSetup section:
Other sections:
Here is an example sequence showing how this function might be used:
cairo_surface_t *surface = cairo_ps_surface_create (filename, width, height);
...
cairo_ps_surface_dsc_comment (surface, "cairo_ps_surface_dsc_comment (surface, "...
cairo_ps_surface_dsc_begin_setup (surface);
cairo_ps_surface_dsc_comment (surface, "...
cairo_ps_surface_dsc_begin_page_setup (surface);
cairo_ps_surface_dsc_comment (surface, "cairo_ps_surface_dsc_comment (surface, "cairo_ps_surface_dsc_comment (surface, "cairo_ps_surface_dsc_comment (surface, "... draw to first page here ..
cairo_show_page (cr);
...
cairo_ps_surface_dsc_comment (surface, "... Since 1.2