[R-pkg-devel] Conversion failure in 'mbcsToSbcs'
Package Maintainer
ggene@|ogyp@ck@ge @end|ng |rom gm@||@com
Sat Feb 17 13:51:31 CET 2024
Dear Ivan:
Thank you for your help again.
Thanks for your suggestion to use cairo_pdf() instead of pdf() to
allow for the multi-lingual plots.
I incorporated your advice and added the the code you suggested:
<<results=hide,echo=FALSE>>=
my.Swd <- function(name, width, height, ...)
grDevices::cairo_pdf(
filename = paste(name, "pdf", sep = "."),
width = width, height = height
)
@
\SweaveOpts{grdevice=my.Swd,pdf=FALSE}
as shown in lines 49-56 in my new vignette file here
(https://github.com/lindsayrutter/ggenealogy/blob/master/vignettes/ggenealogy.Rnw).
Upon attempting to build (R CMD build ggenealogy), I received the ERROR:
Error: processing vignette 'ggenealogy.Rnw' failed with diagnostics:
object 'my.Swd' not found
--- failed re-building ‘ggenealogy.Rnw’
I tried replacing the code you suggested to various locations and
separating the \SweaveOpts line to be located at separate locations.
However, I received the same ERROR each time.
Do you have any suggestions or ideas on how to resolve this error?
I again thank you for your help with this issue.
Kind regards,
LAR
On Thu, Feb 15, 2024 at 3:17 PM Ivan Krylov <krylov.r00t using gmail.com> wrote:
>
> В Mon, 12 Feb 2024 16:01:27 +0000
> Package Maintainer <ggenealogypackage using gmail.com> пишет:
>
> > Unfortunately, I received a reply from the CRAN submission team
> > stating that my vignette file is still obtaining the "mbcsToSbcs"
> > ERROR as is shown here
> > (https://win-builder.r-project.org/incoming_pretest/ggenealogy_1.0.3_20240212_152455/Debian/00check.log).
>
> I am sorry for leading you down the wrong way with my advice. It turns
> out that no 8-bit Type-1 encoding known to pdf() can represent both
> 'Lubomír Kubáček' and 'Anders Ågren':
>
> lapply(
> setNames(nm = c(
> 'latin1', 'cp1252', 'latin2', 'latin7',
> 'latin-9', 'CP1250', 'CP1257'
> )), function(enc)
> iconv(enc2utf8(c(
> 'Lubomír Kubáček', 'Anders Ågren'
> )), 'UTF-8', enc, toRaw = TRUE)
> ) |> sapply(lengths)
> # one of the two strings cannot be represented, returning a NULL:
> # latin1 cp1252 latin2 latin7 latin-9 CP1250 CP1257
> # [1,] 0 0 15 0 0 15 0
> # [2,] 12 12 0 12 12 0 12
>
> While it may still be possible to give extra parameters to pdf() to use
> a font encoding that covers all the relevant characters, it seems
> easier to switch to cairo_pdf() for your multi-lingual plots. Place the
> following somewhere in the beginning of the vignette:
>
> <<results=hide,echo=FALSE>>=
> my.Swd <- function(name, width, height, ...)
> grDevices::cairo_pdf(
> filename = paste(name, "pdf", sep = "."),
> width = width, height = height
> )
> @
> \SweaveOpts{grdevice=my.Swd,pdf=FALSE}
>
> This should define a new plot device function for Sweave, one that
> handles more Unicode characters correctly.
>
> > PS: Thanks for the advice about plain text mode. Hopefully, I have
> > correctly abide by that advice in this current email.
>
> This e-mail arrived in plain text, thank you!
>
> --
> Best regards,
> Ivan
More information about the R-package-devel
mailing list