2017-10-30 8 views

答えて

0

あなたの問題の解決策を見つけましたか?ドキュメントにハイパーリンクを追加する関数を書いた。ただし、テンプレートのdocxファイル

add_hyperref = function (x, target="http://www.google.de", 
         style = NULL, pos = "after") { 

    if (is.null(style)) 
    style <- x$default_styles$table 
    style_id <- x$doc_obj$get_style_id(style = style, type = "character") 

    refID = sprintf("rId%d",x$doc_obj$relationship()$get_next_id()) 

    x$doc_obj$relationship()$add(refID, 
           type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/hyperlink", 
           target=target, target_mode="External") 

    xml_elt = sprintf("<w:hyperlink r:id='%s' w:history='1'><w:r w:rsidRPr='00CD112F'><w:rPr><w:rStyle w:val='Hyperlink'/></w:rPr><w:t>LINK</w:t></w:r></w:hyperlink>", 
        refID) 
    xml_elt = paste0(officer:::wml_with_ns("w:p"), "<w:pPr><w:pStyle w:val=\"", 
        style_id, "\"/></w:pPr>", xml_elt, "</w:p>") 

    body_add_xml(x = x, str = xml_elt, pos = pos) 
} 

があるかもしれませんよりよい解決策にハイパーリンクのスタイルを作成する必要がありますが、それは私のために働きました。

関連する問題