encoded_text_to_latex         package:tools         R Documentation

_T_r_a_n_s_l_a_t_e _n_o_n-_A_S_C_I_I _T_e_x_t _t_o _L_a_T_e_X _E_s_c_a_p_e_s

_D_e_s_c_r_i_p_t_i_o_n:

     Translate non-ASCII characters in text to LaTeX escape sequences.

_U_s_a_g_e:

     encoded_text_to_latex(x,
                           encoding = c("latin1", "latin2", "latin9",
                                        "UTF-8", "utf8"))

_A_r_g_u_m_e_n_t_s:

       x: a character vector.

encoding: the encoding to be assumed.  '"latin9"' is officially
          ISO-8859-15 or Latin-9, but known as latin9 to LaTeX's
          'inputenc' package.

_D_e_t_a_i_l_s:

     Non-ASCII characters in 'x' are replaced by an appropriate LaTeX
     escape sequence, or '?' if there is no appropriate sequence.

     Even if there is an appropriate sequence, it may not be supported
     by the font in use.  Hyphen is mapped to '\-'.

_V_a_l_u_e:

     A character vector of the same length as 'x'.

_S_e_e _A_l_s_o:

     'iconv'

_E_x_a_m_p_l_e_s:

     x <- "fa\xE7ile"
     encoded_text_to_latex(x, "latin1")
     ## Not run: 
     ## create a tex file to show the upper half of 8-bit charsets
     x <- rawToChar(as.raw(160:255), multiple=TRUE)
     (x <- matrix(x, ncol=16, byrow=TRUE))
     xx <- x
     xx[] <- encoded_text_to_latex(x, "latin1") # or latin2 or latin9
     xx <- apply(xx, 1, paste, collapse="&")
     con <- file("test-encoding.tex", "w")
     header <- c(
     "\\documentclass{article}",
     "\\usepackage[T1]{fontenc}",
     "\\usepackage{Rd}",
     "\\begin{document}",
     "\\HeaderA{test}{}{test}",
     "\\begin{Details}\relax",
     "\\Tabular{cccccccccccccccc}{")
     trailer <- c("}", "\\end{Details}", "\\end{document}")
     writeLines(header, con)
     writeLines(paste(xx, "\\", sep=""), con)
     writeLines(trailer, con)
     close(con)
     ## and some UTF_8 chars
     x <- intToUtf8(as.integer(
         c(160:383,0x0192,0x02C6,0x02C7,0x02CA,0x02D8,
           0x02D9, 0x02DD, 0x200C, 0x2018, 0x2019, 0x201C,
           0x201D, 0x2020, 0x2022, 0x2026, 0x20AC)),
                    multiple=TRUE)
     x <- matrix(x, ncol=16, byrow=TRUE)
     xx <- x
     xx[] <- encoded_text_to_latex(x, "UTF-8")
     xx <- apply(xx, 1, paste, collapse="&")
     con <- file("test-utf8.tex", "w")
     writeLines(header, con)
     writeLines(paste(xx, "\\", sep=""), con)
     writeLines(trailer, con)
     close(con)
     ## End(Not run)

