Skip to content

simPDF

0.1.2Package record

Fast Multi-Page PDF Report Layout on the Graphics Device

1packages depend
866downloads / year
61.3%test coverage
13/13flavors OK

Overview

About

A lightweight, dependency-free engine to build multi-page PDF reports quickly on top of R's built-in graphics device ('pdf'/'cairo_pdf'). Content is placed by a measured flow layout: every text block reports its real width and height via 'strwidth'/'strheight', the vertical cursor advances by measured height, and pages break automatically. This eliminates the text-overlap of dead-reckoned coordinate reports (such as the 'nmw' NONMEM diagnostic reports) and replaces slow '.Rmd'/'knitr'/'LaTeX' pipelines for fixed report generation: no external toolchain is started and the document is written in a single pass. Interactive AcroForm CRFs are out of scope.

Changes in 0.1.2

Bug fix release.

  • Fixed a crash in the flow engine when a block's height equalled the space left on the page to within floating-point error: split() then reported the whole block as fitting (head = <block>, tail = NULL) and .place_block() went on to measure the NULL tail ("attempt to apply non-function"). .place_block() now (a) treats a block as fitting when its height exceeds the remaining space by less than 1e-9 pt, matching the tolerance the split() methods already use, and (b) stops cleanly when a split returns no tail, instead of starting a page for it. Affected block_para(), block_pre() and block_table() alike; nmw worked around it. Regression-tested in inst/tinytest/test_flow.R.
  • .block_seq() (used by block_table()/block_matrix()) now returns tail = NULL rather than an empty sequence block when a split consumes every sub-block, which also removes a spurious trailing blank page.

From NEWS.md in the release

Install

Health

CRAN checks
13OK
Slowest check: 2.0 min · r-oldrel-macos-x86_64
Status changes
  • OK13 OKNow
  • OK11 OK2026-08-04
  • NOTE9 OK, 1 NOTE2026-08-01
  • OK7 OK2026-07-31
Advisories

none known

Documentation

In release 0.1.2
READMEYes · 414 wordsVignettesYes · 1 · dynamicNEWSYes · 100% structured · mentions 0.1.2Citation fileNoWebsitenot declared in DESCRIPTION
Help pages
26
Examples that run
no examples
Exported functions with examples
0%
Documented parameters
90%
Return-value docs
100%
Help pages citing references
0%

Downloads

866
CRAN downloads in the past year
Rank #13,268 · ~2/day · ~72/mo
Daily download trend is not available in this view yet.
38130 days
86690 days
8661 year
Compare downloads with other packages →
Also on29 r2u

Dependencies

Declared dependencies
5 external dependencies (excludes base and recommended)

Installing simPDF adds no packages beyond those that come with R.

Depends (1)
R >= 3.6.0
Imports (2)
grDevicesgraphics
LinkingTo (0)
none
Enhances (0)
none
Reverse dependencies
1direct
0indirect
Imports 1
Depends, Imports or LinkingTo, most downloaded first

People & History

People (1)
Author, Maintainer since 0.1.1 (2026)
Releases (2)

Pick two releases to compare their code metrics.

  • 0.1.2Latest
    record
    2026-09-13 · current release · diff ↗
  • 0.1.1
    record
    2026-07-30
  • R
    R 4.6.0 released · 2026-04-24

Package metadata

First published
2026-07-30
Total releases
2 / 1 yrs
License
GPL-3 OSI
Minimum R
≥ 3.6.0
Download size
47 KB

Cite

Cite this package

Run in R for the authors' preferred citation:

citation("simPDF")
Bae, K. (2026). simPDF: Fast Multi-Page PDF Report Layout on the Graphics Device (Version 0.1.2) [Computer software]. https://doi.org/10.32614/CRAN.package.simPDF

This package has no citation file, so citation() returns this entry built from DESCRIPTION.

Cite the R Observatory

For a number measured here: a download total, a coverage figure, an archival date.

APA

Balamuta, J. J. (2026). R Observatory: Metrics for simPDF version 0.1.2 [Data set]. HJJB, LLC. Data release v2026-10-22. https://doi.org/10.5281/zenodo.21843040

From data release v2026-10-22, which the citation names so these numbers can be found later. More on citing and the projects behind them.

Report a problem with this page →

Privacy choices

These apply to this browser and are stored on this device only. Nothing about your choice is sent to us.

Read the privacy policy