通过Libre Office Draw中的宏设置控件的文本

时间:2019-02-03 22:52:39

标签: libreoffice libreoffice-basic libreoffice-draw

我已经在Libre Office Draw中设计了一个文档,现在需要通过使用从文本文件读取的名称填充某些控件(主要是标签)来使其个性化。

从文本文件中读取内容很简单,但是在获取对放置在Libre Office Draw文档中的控件的引用时遇到了困难;提到的所有功能都与放置在对话框上的控件有关,在这种情况下似乎不适用。

这可能是实现我的目标的第一个线索:

document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

但是,如何找到放置在名为“ MyLabel1”的“文档”上的控件?标签填满后,就需要将文档导出为PDF。

非常感谢!

1 个答案:

答案 0 :(得分:0)

要将LO Draw文档从Basic导出为PDF,可以使用以下代码。

Sub ExportToPDF
  sURL = convertToURL("d:\temp\lo_draw.pdf")
  dim mFileType(0)
  mFileType(0) = createUnoStruct("com.sun.star.beans.PropertyValue")
  mFileType(0).Name = "FilterName"
  mFileType(0).Value = "draw_pdf_Export"
  thisComponent.storeToURL(sURL, mFileType())
End Sub

要弄清楚如何访问“标签”,请提供示例LO Draw文档。